SAP把所有允許替代和有效性檢查的欄位都放在GB01表中,如果該表中沒有這個欄位,但是BSEG或者BKPF中有這個欄位,可以用下面的程式碼進行修改:
如:LIFNR欄位在BSEG中存在,但是這個欄位在SAP標準下是不可以被替代的,我們可以透過修改GB01表達到BSEG-LIFNR可以被替代的效果。
SE38新建一個程式,寫入以下程式碼,每個系統都需要跑一遍這個程式碼,否則在其他系統不生效
*&---------------------------------------------------------------------* *& Report ZTEST_002 *&---------------------------------------------------------------------* *& *&---------------------------------------------------------------------* REPORT ZTEST_002. TABLES: GB01. DATA IT_GB01 LIKE TABLE OF GB01 WITH HEADER LINE. SELECT * FROM GB01 INTO CORRESPONDING FIELDS OF TABLE IT_GB01 WHERE BCLTAB = 'BSEG' AND BCLFIELD = 'LIFNR' . IF SY-SUBRC = 0. LOOP AT IT_GB01. IT_GB01-BEXCLUDE = ''. MODIFY IT_GB01. ENDLOOP. MODIFY GB01 FROM TABLE IT_GB01. ENDIF.
執行完程式之後GGB1就可以替代這個欄位了
然後執行程式RGUGBR00手工編譯
也可以使用事務碼SM30:維護表VWTYGB01,將排除欄位的勾去掉