【SD】交貨單如何在保存時更改LIKP表的值?

之前在網上看到這樣一個帖子,雖然日子有些久遠了,但時下面卻依舊沒有任何答覆。

大概意思就是說這個哥們找到了交貨單增強程序“MV50AFZ1”,並且在方法“USEREXIT_SAVE_DOCUMENT_PREPARE”中插入了自己心儀的代碼,一點保存心想大功告成,卻不成沒有更新到表LIKP中,百般無奈,只能求助網友,可惜的是沒有等到回覆。

 

其實這個細心的朋友就會發現有這樣一個方法“USEREXIT_MOVE_FIELD_TO_LIKP” ,上面的說明文字已經描述的非常清晰了。

【示例代碼】

*---------------------------------------------------------------------*
*       FORM USEREXIT_MOVE_FIELD_TO_LIKP                              *
*---------------------------------------------------------------------*
*       This userexit can be used to move some fields into the        *
*       delivery header workaerea LIKP.                               *
*       This form is called, when a header is created                 *
*       This form is called at the end of form LIKP_FUELLEN.          *
*                                                                     *
*---------------------------------------------------------------------*
FORM USEREXIT_MOVE_FIELD_TO_LIKP.
*{   INSERT         ECDK904748                                        1
  DATA : LV_USERID TYPE ZBC001-USEID.

  IF T180-TRTYP = 'H'.
    GET PARAMETER ID 'USEID' FIELD LV_USERID.
    IF LV_USERID IS NOT INITIAL AND LIKP-USEID IS INITIAL.
      LIKP-USEID = LV_USERID.
    ENDIF.
  ENDIF.
*}   INSERT

*  LIKP-zzfield = xxxx-zzfield2.

ENDFORM.

本意就是在創建交貨單擡頭信息的時候則會自動賦值(事務代碼:VL01N),這種情況還可以用到這樣一種情況下面。

比如我們做了交貨單的擡頭增強,擡頭中幾個字段是不可編輯的,每次默認存入某些值,也在增強中寫好了處理邏輯,但是會有這樣一種情況,要是不去點擊“附加信息”頁籤,這部分邏輯不會自動處理,也就不會自動存入某些值,那麼,在這種情況下,上面這個方法就派上用場了。

 

各位朋友,有好的方法,請留言告知,一起學習。 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章