OrderCancel 指令
這個指令會將訂單狀態改為 X,沖銷任何庫存配置,及取消任何補貨訂單項目,來取消指定的訂單。
這個指令不會從資料庫中移除訂單。
只有狀態為 "P"、"I"、"E"、"W" 或 "N" 的訂單可以取消,因為這些值表示客戶或買方組織還沒有確定要支付訂單款項。

參數值
- http://host_name/path/
- (必要)WebSphere Commerce Server 和架構路徑的完整名稱。
- langId
- 設定或重設在階段作業期間的屬意語言;
有關商店的支援語言可在 STORELANG 表格中找到。
- forUser
- 將代替其執行指令之使用者的登入 ID;只有具備處理訂單權限的人才可指定這個參數。
- forUserId
- 與 forUser 相同,但卻是 USERS 表格中之內部使用者 ID 所指的使用者。
- URL
- (必要)當指令順利完成時所要呼叫的 URL。
- storeId
- 訂單的相關商店。
- orderId
- (必要)要取消之訂單的參考號碼。
範例
下列範例會取消參考號碼為 1 的訂單,且會顯示購物車。
http://myhostname/webapp/wcs/stores/servlet/OrderCancel?
orderId=1&URL=/webapp/commerce/InterestItemDisplay
規則
- 檢查訂單存不存在,且它的狀態屬性是指定 "P"、"I"、"E"、"W" 或 "N"。如果不存在,就會傳回一則錯誤。
- 將指定訂單的訂單狀態改成 X 來取消它。
- 呼叫 AllocateInventory 作業指令及在 reverseOrderItems 參數中指定訂單的所有 OrderItem,來取消配置現有及預期的庫存。
異常狀況
如果指定的 orderId 無效,或訂單狀態不是 "P"、"I"、"E"、"W" 或 "N",就不會進行任何處理且指令會執行失敗。