1. 程式人生 > >採購訂單螢幕增強

採購訂單螢幕增強

轉:http://blog.sina.com.cn/s/blog_778401470101efep.html

 轉:https://blog.csdn.net/wengyuyu1234/article/details/8040374

 

對SAP系統中採購訂單擡頭進行螢幕增強,在擡頭上增加了幾個customer fields,但是實現方法有點怪,是一個Z report程式,其下建立了一個螢幕,螢幕中放的就是這幾個customer fields,不知道在哪裡配置了一下,卻能在ME21n/ME22n/ME23n螢幕中以tab 頁籤的形式顯示這個螢幕.
俗話說得好:好記性不如爛筆頭。在這裡記錄一下吧。
我知道的採購訂單擡頭、行專案螢幕增強方法有兩種,一種是使用出口:MM06E005,較為常用,大家都知道,另外一種使用BAdI:ME_GUI_PO_CUST,這就是開頭說的那種。
一、使用出口:MM06E005將自定義欄位新增到採購訂單擡頭或行專案
效果:在採購訂單擡頭或行專案眾tab 頁籤後增加一個新的頁籤,上面可以放要增加的自定義欄位,隨採購訂單的建立、修改、顯示進行自定義欄位的增、改、查。
過程:1、使用CI開頭的預留結構在PO擡頭表EKKO或PO行專案表EKPO中增加自定義欄位;2、CMOD建立一個project包含MM06E005,然後將MM06E005中包含的相應螢幕進行雙擊建立,擡頭是0111,行專案是0101,建立時需要注意屬性中選定子螢幕;3、在此子螢幕上加入要增強的自定義欄位,編寫螢幕邏輯流;4、在MM06E005的exit function的Z include中分別加入傳入傳出的程式碼;5、啟用
以上這種方式在網上流傳很廣,詳細做法可以Google一下MM06E005,有很多。
二、使用BAdI:ME_GUI_PO_CUST
效果和前一種相同。
過程:1、使用CI開頭的預留結構在PO擡頭表EKKO或PO行專案表EKPO中增加自定義欄位,建立BAdI中要使用的結構;2、建立一個report程式,或者function group,建立螢幕並將自定義欄位加入;3、編寫螢幕邏輯流處理欄位輸入輸出;4、SE19建立BAdI實現,重寫類方法,在其中指明第2步中建立的主程式及螢幕編號(還有其他程式碼見BAdI實現示例);5、啟用。
我們可以通過se18檢視ME_GUI_PO_CUST,然後檢視它的示例實現程式碼和對應每個方法的文件描述,解釋的很詳盡,SAP的文件很不錯,要麼完全沒有,有則很全。示例也是,可以直接copy示例程式碼,改改就行。
這種方法是先建立一個含有螢幕的程式,然後通過實現BAdI將其載入要增強的螢幕,也有類似的通過配置將其載入,例如物料主資料MM01/02/03的螢幕增強、供應商主資料XK01/02/03的螢幕增強、會計憑證過賬F-02的螢幕增強等。