Hi 大家好
今天要來介紹SAP中的增強(Enhancement),
增強可以說是SAP中的一種外掛,
也就是在標準程式上進行二次開發,
根據公司的業務需求加上邏輯,
增強的好處是可以避免修改到標準程式。
舉例:我們希望建立訂單時當訂單類型為維修訂單時,統一不收銷售稅,
但SAP標準程式沒有IMG可以做設定,
這時就可以透過增強程式加上我們要的邏輯。
主要是通過修改預留的FORM函數模塊來實現。這些函數模塊通常會包含在 SAP 標準程式中,並允許用戶在指定的點進行自定義開發。
透過SPRO查找:Control+F 搜尋USER EXIT
透過SE80查找
以VA01建立訂單為例
右下角可以看到標準Program名稱為SAPMV45A
進入T-CODE:SE80 輸入程式名稱
程式名稱為USEREXIT開頭的就是增強FUNCTION
Customer Exits 是 SAP 提供的一種更靈活的增強方式,允許客戶在 SAP 標準程序中插入自己的代碼
查找方式
進入SE37用MODX_FUNCTION_ACTIVE_CHECK
在Function開始處打上斷點,
之後執行我們要的t-code,
如果有進入debug模式就是有進入增強,
只要看l_funcname就可以知道增強的函數名稱。
TABLE:MODSAP
在第三個欄位填入我們剛查到的函數名稱,
就可以找到隸屬於哪個SMOD
在SMOD可以查詢到增強的函數,
但是沒有辦法直接修改,
需要透過T-CODE:CMOD
創建一個增強Project
並將smod的增強分配給這個Project
就可以進入對應的函數去做開發跟修改了!
以上是今天的分享