通過IDoc DESADV來實現公司間STO場景中外向交貨單過賬後自動觸發內向交貨單的功能
通過IDoc DESADV來實現公司間STO場景中外向交貨單過賬後自動觸發內向交貨單的功能
公司間採購(公司間庫存轉儲)流程裡,常見的解決方案是發貨方完成發貨過賬後,自動觸發收貨方的內向交貨單。除了使用SAP標準的輸出型別SPED來實現之外,還可以通過IDoc(DESADV)的方式來實現。
本文就是闡述如何通過IDoc來實現這個功能。
主要由如下幾個步驟:
1, 建立一個外向交貨單的輸出型別。
T.Code – V/34,或者如下配置路徑,
在Partner functions裡輸入條目:6/SH, 如上圖。
2,將該輸出型別分配給output determination procedure V10000.
Requirement 維護成1,意味著當交貨單的PGI完成之後,才會觸發這個ZZIB的output。
3,建立output的條件記錄。
事務程式碼VV21/VV22。
這裡的Partner需要在WE20裡設定。
4,定義confirmation control key .
5, 出站IDoc的配置。
5.1), IDoc type – DELVRY03
Tools > ALE > ALE Development > IDoc > IDoc Type Development > IDoc Types
T.Code – WE30
5.2), Message Type – DESADV
Tools > ALE > ALE Development > IDoc > IDoc Type Development >Logical Messages
T.Code – WE81.
5.3),Process Code – DELV
Tools > ALE > ALE Development > IDoc > Outbound Processing > Define Process Code
T.Code – WE41.
Function Module – IDOC_OUTPUT_DELVRY.
5.4), 為出站引數維護partner profile.
SPRO > Materials Management > Purchasing > Messages > EDI > Set Up Partner Profile
T.Code – WE20.
Partner Type – KU (Customer)
Partner Role – SH
Receiver Port: A000000002
RFC Destination:
6, 入站IDOC的設定
IDoc type – DELVRY01
Message Type – DESADV
Process Code – DELS
Tools > ALE > ALE Development > IDoc > Inbound Processing > Define Process Code
T.Code – WE42
Function Module – IDOC_INPUT_DESADV1,
維護入站引數的partner profile.
事務程式碼WE20.
Partner Type – LS (Logical system)
7, Logical system的定義(SALE),或者直接BD54,
Logical system和SAP客戶端的分配關係,
Note: 當前我所在的SAP系統就是Client 100.
8, 建立單據,看效果。
STO#4500000768,
VL10B建立了交貨單#80000784,
完成了發貨過賬,
看該交貨單的output, 觸發IDoc成功了,
The Inbound delivery was triggered successfully.
-完-
寫於2021-11-22。