天天看點

VA41/VA42增強-儲存check

背景:

(1)VA41/VA42/VA43螢幕增強:在“付款方式”頁簽,進行螢幕字段增強

(2)VBAK表字段增強:增加相應的增強字段

(3)VA41/VA42儲存時:check增強字段“合同所屬事業部”是否在表cepc中存在

VA41/VA42增強-儲存check

解決方案

1、SE38:SAPMV45A,其中的 include mv45afzz

(或者直接SE38:MV45AFZZ)

2、儲存check:FORM USEREXIT_SAVE_DOCUMENT

(1)在該form中,進行隐式增強

(2)主要資料:xvbap[],XVBAK

相關代碼:

FORM USEREXIT_SAVE_DOCUMENT.

* Example:
* CALL FUNCTION 'ZZ_EXAMPLE'
*      IN UPDATE TASK
*      EXPORTING
*           ZZTAB = ZZTAB.
*{   INSERT         S4DK901200                                        1
  "360 銷售訂單增強
  DATA:lt_vbep    TYPE STANDARD TABLE OF vbepvb,
       ls_vbep    LIKE LINE OF lt_vbep.

    lt_vbep = xvbep[].
    LOOP AT xvbap.

        READ TABLE lt_vbep INTO ls_vbep WITH KEY vbeln = xvbap-vbeln posnr = xvbap-posnr.
      if xvbap-zzeindt1 is initial .
        xvbap-zzeindt1 = ls_vbep-edatu.
        endif.
      if xvbap-zzeindt2 is initial .
        xvbap-zzeindt2 = ls_vbep-edatu.
        endif.

        if xvbap-zzeindt1 = xvbap-zzeindt2.
        xvbap-zzeindt2 = ls_vbep-edatu.
          endif.
      modify xvbap transporting zzeindt1 zzeindt2.

      endloop.

*}   INSERT

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""$"$\SE:(1) Form USEREXIT_SAVE_DOCUMENT, Ende                                                                                                                 A
*$*$-Start: (1)---------------------------------------------------------------------------------$*$*
ENHANCEMENT 1  ZMV45AFZZ_SAVE_DOCUMENT.    "active version
*
  DATA: LV_PRCTR TYPE CEPC-prctr.

  SELECT SINGLE PRCTR INTO LV_PRCTR
    FROM CEPC
    WHERE PRCTR = XVBAK-ZSPARE5.

  IF SY-SUBRC NE 0 AND LV_PRCTR IS INITIAL.
    MESSAGE '合同所屬事業部的值:' && XVBAK-ZSPARE5 && '不在表CEPC中' TYPE 'E'.
  ENDIF.

ENDENHANCEMENT.
*$*$-End:   (1)---------------------------------------------------------------------------------$*$*
ENDFORM.
           

3、其他

(1)FORM USEREXIT_READ_DOCUMENT.

  "----銷售訂單擡頭螢幕增強(附加資料B)——付款方式

  "--螢幕号:SAPMV45A --- 8309

  "--PBO:MV45AOZZ

  "--PAI:MV45AIZZ

  "--定義:MV45ATZZ(TOP的定義中)

  "--讀取付款方式資料到內表:MV45AFZZ(讀取其他資料出口)

  "--附加資料B 頁簽描述改動(SAPMV45A——4002螢幕—MODULE taxi_initialize_carrierscreen)

繼續閱讀