如何使用SMOD和CMOD進行SD的使用者增強
如何使用SMOD和CMOD進行SD的使用者增強
1、關於增強的簡單介紹
1.1 SMOD包含具體的增強,而CMOD是包含一組SMOD編寫的增強.
1.2 User exits (Function module exits)是sap提供出口,它的命名規則如下:
EXIT_<program name><3 digit suffix>
示例:
sd的VA01事務,對應的程式是SAPMV45A ,你會在程式裡查到(用CALL CUSTOMER-FUNCTION字串)如下程式碼:
CALL CUSTOMER-FUNCTION '003'
exporting
xvbak = vbak
xvbuk = vbuk
xkomk = tkomk
importing
lvf_subrc = lvf_subrc
tables
xvbfa = xvbfa
xvbap = xvbap
xvbup = xvbup.
則exit calls function module的名稱就是:EXIT_SAPMV45A_003
2、先試用SMOD建立一個SAP增強
2.1、選擇一個增強,如:SDVFX001 ,點選修改,進入sap增強維護螢幕;
2.2、點選“元件”按鈕,進入元件維護屏;
2.3、將游標移到“功能模組名”,輸入模組名,如:EXIT_SAPLV60B_001;
2.4、選擇“程式碼修改”按鈕進入函式模組;
2.5、雙擊函式模組的包含單元,進入包含單元加入自定義程式碼並啟用儲存;
3、使用CMOD建立增強專案
3.1、輸入自定義的專案名,點選“建立”;
3.2、進入增強專案,選擇“配置增強”,進入增強配置螢幕;
3.3、輸入增強名如:SDVFX001
3.4、儲存,並退出;
4、使用CMOD將增強專案啟用,便大工告成。
如何查詢
*判斷是否存在相應增強的定義(SMOD)
select single name from modsapa into mod0-name
where name = 'PPCO0002'.
if sy-subrc = 0.
endif.
select single * from tadir into ps_tadir_db
where pgmid = 'R3TR'
and object = 'SMOD'
and obj_name = 'PPCO0002'.
*判斷是否存在相應增強專案的定義(CMOD)
SELECT SINGLE name FROM MODATTR into mod0-name
WHERE NAME = 'PPCO0002'..
*提取增強的定義的元件 (可以用此反查增強定義)
select * from modsap
where name = 'PPCO0002'.
*判斷該增強是否移植到BADI實現
*Enhancement & has already been migrated in Business Add-In definition
select single migrated badi_def into (migrated, exit_name)
from modsapa where name = modname.
if sy-subrc = 0 and migrated = seex_true.
message s621 with modname exit_name.
check mode ne 'CHAM'.
endif.
MODTYP 型別:
E : 功能退出
S : 螢幕
T : 表
C : GUI程式碼
SAP增強存在MODSAP表內
*獲取增強元件的參見函式MOD_SAP_MEMBER_TEXT
*獲得退出功能模組的資訊
select single * from tftit
where "SPRAS" = '1' AND "FUNCNAME" = 'EXIT_SAPLCORE_001'
if sy-subrc = 0.
endif.
*值得學習的函式
MOD_KUN_ACTIVATE(會操作相關報表)
https://mp.weixin.qq.com/s/aCzXtfJeT-QTTQvPl6Lz0g
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29829936/viewspace-2679353/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 使用aop來監控方法進行增強處理
- 「AutoML」如何使用強化學習進行模型剪枝?TOML強化學習模型
- WireGuard 教程:使用 DNS-SD 進行 NAT-to-NAT 穿透DNS穿透
- 如何對使用者進行細分-郵件營銷中使用者細分的方法
- NextDNS 與 Firefox 合作幫助增強使用者隱私和安全性DNSFirefox
- 機器學習增強的電子商務平臺使用者行為預測機器學習
- 在Linux中,如何進行使用者行為監控?Linux
- SAP SD 實際應用增強(含程式碼)總結
- 使用者體驗增強!| SOLIDWORKS 2022 新功能揭祕Solid
- 如何進行遊戲使用者體驗產品化調優遊戲
- Teledyne宣佈對其Sapera Vision Software進行AI增強AI
- DigiCert和Thales如何增強Hyperledger的網路安全性
- RLHF · PBRL | SURF:使用半監督學習,對 labeled segment pair 進行資料增強AI
- 如何使用Plotly和Dash進行資料視覺化視覺化
- 如何在本地使用AI檢索增強生成(RAG)AI
- 如何進行網站的真實使用者監控(RUM)?怎麼進入監控網站網站
- 使用PWA增強你的github pagesGithub
- 如何增強grpc的攔截器RPC
- 安全團隊如何加強終端使用者的意識
- 在Linux中,如何使用VMware和VirtualBox進行虛擬化?Linux
- 在Linux中,如何使用ELK進行日誌管理和分析?Linux
- (一)如何使用 Parsel 和 XPath 進行網頁資料提取網頁
- 如何使用diff 和 patch 命令對檔案進行協作?
- 如何使用CVS進行版本控制
- 使用 Linux 命令列與其他使用者進行通訊Linux命令列
- Starting AHF Services 使用root使用者進行升級操作
- Quartz叢集增強版_00.How to use?(如何使用)quartz
- spring data mongodb 如何以事物的方式進行增刪改查SpringMongoDB
- linux-使用者的增-刪-改Linux
- 在Linux中,如何使用指令碼進行系統配置和部署?Linux指令碼
- 如何使用Python、Transformers和scikit-learn對文字進行分類?PythonORM
- 如何使用遊戲引擎進行實時渲染和內容建立遊戲引擎
- 如何使用Vidmore Video Converter進行分割和旋轉裁剪影片?IDE
- 前端如何進行使用者許可權管理前端
- 使用PowerShell執行的命令和示例,用於增強Windows系統的安全性巡檢專案:2024Windows
- 如何使用Google Analytics Universal Analytics增強型電子商務Go
- GrowingIO B 輪融資3000萬美元 打造更懂使用者和增長的行為分析產品
- 如何使用 CatBoost 進行快速梯度提升梯度