Order Import 時, 最主要的動作可以分為三大類 : Split, Update 與 Cancel, 原本以為在 Split 的同時, Update 也是可以一並處理的, 但是一直會出現一個問題, 就是 Sales Order Line (OE_ORDER_LINES_ALL) 與 Shipping Transaction (WSH_DELIVERY_DETAILS) 資料不一致, 再清楚一點說, 就是 OE_ORDER_LINES_ALL 的資料會與 Import 資料完全相同, 但是 WSH_DELIVERY_DETAILS 卻還是 Import 前的資料, 用以下範例解釋問題 :
Step 1. 先 Import 一張訂單, Line 1.1 是 100 個, Shipping Method 為 A
Step 2. Split Line 1.1
Line 1.1 變為 90 個, Shipping Method 改為 B
Line 1.2 為 10 個, Shipping Method 也為 B
Step 3. Import Split Line
把 Split Line 與目前 Shipping Method 資訊寫進 Interface
=> 此時, Split Line 沒有問題, 但是 Sales Order Line 的 Shipping Method 會改為 B, 但是 Shipping Transaction 的 Shipping Method 仍為 A
=> 這一個動作就是問題所在, 因為 Oracle 認為, Split 與 Update 都不同的動作, 所以在 Import 時做兩個動作是不正確的, 也就是 Step 3 應該拆成 :
Step 3. Import Split Line : 只放最少資訊, 用來達成 Split 的動作 (Metalink Doc ID : 394124.1)
Step 4. Import Update Line : 再將其他欄位一次 Update 進系統
補充 :
(1) 訂單 Import 前的畫面是經過客製, 使用者先將所有訂單資料填寫完之後, 再使用 Oracle Standard Import Function 進到 OM 系統
(2) Oracle 說明文號 : 866882.1
(3) 此問題會發生在 Ship To Customer / Ship To Address / Ship To Contents / Shipping Method