CO01/CO02生產訂單元件庫存地點替換
阿新 • • 發佈:2021-10-25
一、生產訂單元件庫存地點替換
當生產訂單維護元件點選儲存時,根據對應的工廠和工作中心,到配置表中查詢對應的庫存地點,並將自動帶出的庫存地點替換
二、隱式增強
在函式CO_VB_ORDER_POST中新增隱式增強邏輯(此函式為非同步呼叫)
參考程式碼
ENHANCEMENT 1 ZPPXXX. "active version READ TABLE CAUFVTA INDEX 1. IF CAUFVTA-WERKS = 'XXXX'. IF AFVGTAB[] IS NOT INITIAL. SELECT OBJTY,"資源的物件型別 OBJID,"資源的物件 ID ARBPL"工作中心 FROM CRHD INTO TABLE @DATA(LT_CRHD) FOR ALL ENTRIES IN @AFVGTAB WHERE OBJID = @AFVGTAB-ARBID. IF LT_CRHD IS NOT INITIAL. "獲取配置表對應的庫存地點 SELECT * FROM ZXXX INTO TABLE @DATA(LT_XBC) FOR ALL ENTRIES IN @LT_CRHD WHEREARBPL = @LT_CRHD-ARBPL AND WERKS = @CAUFVTA-WERKS. LOOP AT RESBTAB ASSIGNING FIELD-SYMBOL(<FS_RESB>) WHERE RGEKZ = 'X'. READ TABLE AFVGTAB WITH KEY AUFPL = <FS_RESB>-AUFPL APLZL = <FS_RESB>-APLZL. IF SY-SUBRC EQ 0. READ TABLE LT_CRHD INTO DATA(LS_CRHD) WITH KEY OBJID = AFVGTAB-ARBID. IF SY-SUBRC EQ 0. READ TABLE LT_XBC INTO DATA(LS_XBC) WITH KEY ARBPL = LS_CRHD-ARBPL. IF SY-SUBRC EQ 0. <FS_RESB>-LGORT = LS_XBC-LGORT."庫存地點 ENDIF. ENDIF. ENDIF. ENDLOOP. ENDIF. ENDIF. ENDIF. ENDENHANCEMENT.