利用CRM中介軟體Middleware從ERP下載CustomerMaterial的常見錯誤
使用事務碼VD51和VD52建立和修改Customer Material。
下圖是我在ERP建立的Material,為其維護了一個Customer Material AOP。
當下載到CRM後,在WebClient UI上顯示如下:
下載Customer Material的主要配置:
-
- 通過表KNMT的欄位KUNNR指定待下載的Customer ID:
-
- 將ERP的Material 1427先下載到CRM
常見錯誤
-
- 錯誤訊息Number not in interval XXX – XXX when downloading a customer from ERP
- 錯誤訊息Number not in interval XXX – XXX when downloading a customer from ERP
這個錯誤是試圖從ERP下載上圖編號為3471的Customer。
錯誤訊息:
為什麼錯誤訊息裡提到的interval是0000300000 – 0000399999?
當ERP的Customer被下載到CRM時,會建立一個對應的Business Partner的例項。
在這個例子裡,通過除錯方式得知CRM建立Business Partner時使用的Partner group為0002:
檢視0002對應的number range設定為07:
而07對應的interval即為錯誤訊息裡提到的範圍:
解決方案:把0002對應的number range改為03
-
- 錯誤訊息Form of address 0001 not designated for organization
- 錯誤訊息Form of address 0001 not designated for organization
通過除錯CRM_BUPA_MAIN_VAL,發現錯誤訊息在第34行丟擲:
雖然這個Customer例項被判定成一個Organization(因為category欄位為2),但是PERSON的欄位被置位,而不是ORGANIZATN欄位,因此出現這個錯誤訊息。
解決方案:
在ERP事務碼SM30裡,開啟view V_TSAD3,把0003標記為Organization:
然後把Customer 3471的title從Ms改成Company:
之後即可成功下載。
-
- Customer classification 06 does not exist
- Customer classification 06 does not exist
通過除錯發現該錯誤資訊是下圖第22行丟擲的,因為在表crmc_classif裡找不到對應的配置項:
可以在Define Customer Class裡維護這個配置表:
在我的系統裡,沒有06這個classification對應的配置項。
首先要搞清楚程式碼裡的這個06從哪裡來的?
在BAPI_CRM_SAVE裡設定斷點,在偵錯程式裡把變數BAPISTRUCTURES的內容下載到本地,用excel開啟,搜尋關鍵字06,發現06出現在結構BSS_S040:
然後對這個結構使用”where used list”,發現classification的資料來自KUKLA.
classification是在ERP Customer維護介面的Marketing項維護的:
在Define Customer Classification維護:
解決方案:要麼像上圖所示在CRM裡維護06對應的classification,要麼將ERP裡對應的欄位設定為空。
-
- Tax number category does not exist
- Tax number category does not exist
錯誤訊息由於表tfktaxnumtype中沒有查到US5對應的配置項,所以在第32行報了錯誤訊息:
下一步需要搞清楚為什麼US5會被查詢到。通過除錯,發現US5和JERRY都是從ERP傳過來的:
解決方案:要麼在CRM裡為US5維護對應的Tax category,要麼清掉ERP的Tax number 5這個欄位.
-
- Distribution channel is not allowed for sales organization
- Distribution channel is not allowed for sales organization
通過除錯發現錯誤訊息在CRM_PR_SALES_CHECK_DISTR_CHAIN裡丟擲,原因是因為CRM Sales organization O 50040102和distribution chain 01沒有找到對應的ERP端的匹配項.
錯誤訊息在第71行丟擲:
當我檢視內表st_distr_chains時,發現O 50040102只有Channel 10的組合,而缺少01的組合。
解決方案:使用事務碼PPOMA_CRM新增缺少的distribution channel 01組合以及所有的division 00, 01和07:
然後執行HRBCI_ATTRIBUTES_BUFFER_UPDATE來更新表CRMD_ORGMAN_TEMP:
確保快取表裡能看到期望的O 50040102擁有的distribution channel和division的組合。錯誤訊息得以解決。
-
- Parent not O.K.: BUPA_MAIN
- Parent not O.K.: BUPA_MAIN
原因: CUST_MAT_INFO這個下載物件有三個父下載物件。
如果這三個物件有一個下載失敗,則無法進行CUST_MAT_INFO的下載。技術上說,就是這三個parent物件在表SMOFDSTAT的對應記錄的列DNL_STATUS必須為內容D-done。
在我的例子裡,Material物件的狀態為A-aborted.因此必須先修復Material下載的錯誤。
-
- sales area is not assigned for the header product
錯誤在CRM的COM_IL_PRDSCP_CHECK丟擲:
因為這個product是從ERP下載的,我們不能在CRM端手動為其維護Distribution Chain:
回到ERP,檢查表MVKE,發現其實Sales Organization 0001和渠道01已經正確地維護到了這個product上。
再回到CRM,檢查ERP的Sales organization和渠道的組合0001-01是否在CRM端維護有對應的對映關係。 當我使用事務碼PPOMA_CRM維護了缺失的對映關係後,
重新進行一次下載,此時能觀察到Sales Area這一次被成功下載了:
之後也能在CRM UI上看到成功下載的Sales Area相關內容。
相關文章
- 利用CRM中介軟體Middleware從ERP下載Customer Material的常見錯誤
- 使用SAP CRM中介軟體從ERP下載Customer的錯誤訊息
- 使用SAP CRM中介軟體從ERP下載plant到CRM
- 如何用SAP CRM中介軟體從ERP下載material division到CRM
- SAP CRM中介軟體下載equipment時遇到的一個錯誤UI
- 使用SAP CRM中介軟體從ERP下載具有層級結構的equipmentUI
- Jerry的CRM Middleware(中介軟體)文章合集
- 中介軟體(middleware)
- Sanic middleware – 中介軟體
- SAP CRM中介軟體錯誤IB_CRM_UPLOAD_MSG的解決方法
- CRM中介軟體裡parent not ok的錯誤訊息如何處理
- SAP CRM中介軟體Generic stop set的錯誤如何解決
- 筆記:中介軟體 middleware筆記
- 【Django】Django 中介軟體(middleware)Django
- middleware 中介軟體詳解
- PHP中介軟體ICE,ICE的安裝配置,ICE常見編譯和執行(異常)錯誤PHP編譯
- Web中介軟體常見漏洞總結Web
- 常見訊息中介軟體之ActiveMQMQ
- 常見訊息中介軟體之RocketMQMQ
- 常見中介軟體漏洞復現(上)
- 定製.NET 6.0的Middleware中介軟體
- .NET Core 自定義中介軟體 Middleware
- Redux Middleware中介軟體原始碼 分析Redux原始碼
- SAP ERP的material type和group如何通過中介軟體下載
- Mac下php常見錯誤資訊MacPHP
- 下載免費CRM軟體
- 中介軟體-幾種常見的訊息機制
- redux深入理解之中介軟體(middleware)Redux
- ASP.NET Core 中介軟體(Middleware)(一)ASP.NET
- 思邁特軟體Smartbi:資料看板搭建的常見錯誤
- 常見的web錯誤Web
- Redux的中介軟體Middleware不難,我信了^_^Redux
- 程式設計師常見軟體下載連結程式設計師
- MySQL 常見錯誤MySql
- oracle 常見錯誤Oracle
- CRM中介軟體裡CRM local changes的註冊管理
- 5個常見的JavaScript記憶體錯誤JavaScript記憶體
- SAP CRM中介軟體下載時資料庫表CRMATAB為空的處理方法資料庫