SAP公司間STO流程里外向交貨單PGI后自動觸發內向交貨單的實現
公司間采購(公司間庫存轉儲)在很多SAP項目里很常見,筆者在很多項目里都有這種場景。項目實踐中,都是采用SAP的Inter-company STO(或Cross-company STO)來實現這個流程的。
不同的項目做法並不同:
一些項目里采用一步法實現轉儲,即發貨公司發貨過賬后,收貨公司自動完成收貨過賬。
一些項目里采用兩步法轉儲,即發貨公司先做發貨過賬,然后收貨公司單獨執行收貨過賬動作。
一些項目里在收貨這邊需要建立inbound delivery, 他們通過系統的設置,能實現這種場景里的內向交貨單在發貨方發貨過賬后自動觸發。
筆者寫下這篇文章,闡述一下如何通過SPED這個SAP標准的output type來實現inter-company STO場景里,外向交貨單過賬后自動觸發采購方的內向交貨單的功能。
主要由如下幾個步驟:
1, Output Type SPED在這里定義。




2, Output type SPED 被分配給output determination procedure V10000。



輸出類型SPED的字段‘Requirement’的值可以是 408/1。(注:經過筆者的仔細測試和驗證,Requirement欄位維護成408或者1,都可以使得相應的outbound delivery發貨過賬后成功的觸發inbound delivery。)
Requirement = 408,


如果requirement=1,


並且Requirement為408或者1的時候,都是在完成了交貨單的PGI之后,SAP才會觸發SPED的輸出。
3, 交貨單類型NLCC對應的Output Procedure是V10000。


4, 維護輸出類型SPED的條件記錄。
相關的事務代碼:VV21/VV22/VV23


上圖中Partner欄位不能為空!
5,為內向交貨單分配Goods Receiving Point。


需要為每個收貨方的Plant/Storage Location的組合配置Shipping point。
6, 采購訂單中Confirmation Control的定義。

創建一個新的確認控制碼 Z004,


確保GR-Relevant和GR Assignment Key復選框被勾選上。如上圖。
7, 創建一個跨公司的STO單據看效果。

STO#4500000759。商品從工廠NMI1轉入工廠NM03, 它們分屬於不同的公司代碼。
VL10B創建交貨單,DN#80000781。

VL02N對其做揀配並執行PGI,

成功了,

此時VL03N 去看該交貨單的output記錄,

輸出類型SPED的output自動成功觸發了,如上圖。
ME23N檢查采購訂單行項目里的confirmation選項卡內容,

一個Inbound delivery 180000182被成功的創建了,並且Outbound delivery發貨之前揀配的批次號0000000400也被自動帶入到這個inbound delivery里來了。

注意: SPED能成功觸發Inbound Delivery還有一個前提是STO 單據不能勾選一步轉儲,


否則當我們執行VL02N去做發貨過賬的時候,系統報錯說:No goods receipt possible for purchase order ####。筆者在做這個測試的時候,就遇到了這個報錯。
-完-
寫於2021-11-18。