OrderItemUpdate 指令

這個指令能執行 OrderItemAdd 指令所能執行的所有功能(也就是新增產品和項目到一或多份訂單及訂單清單中)。 它也可以更新現有訂單中的 OrderItems。

osoiupda.gif(15097 個位元組)

參數值

http://host_name/path/
(必要)WebSphere Commerce Server 和架構路徑的完整名稱。
forUser
將代替其執行指令之使用者的登入 ID;只有具備處理訂單權限的人才可指定這個參數。
forUserId
與 forUser 相同,但卻是 USERS 表格中之內部使用者 ID 所指的使用者。
langId
設定或重設在階段作業期間的屬意語言; 有關商店的支援語言可在 STORELANG 表格中找到。
URL
(必要)當指令順利完成時所要呼叫的 URL。
orderItemId_i
要更新的 OrderItem 的識別碼。如果有指定,則會忽略 catEntryId_i 和 partNumber_i 參數(相同的 i 值)。
storeId
商店識別碼,當您要在訂單中新增產品或項目時,這才是必要的。 必須要有 storeId,以便檢查該商店中是否具有該項目。 當您指定 storeId 一次之後,該 ID 就會快取供未來使用。
catEntryId_i
要用來建立新 OrderItem 的型錄項目識別碼。
partNumber_i
如果有指定,則會忽略 catEntryId_i 參數。有指定 partNumber_i 和 memberId_i 兩個參數時,這兩個參數會用來決定型錄項目,方法是選取 CATENTRY 表格中的 PARTNUMBER 和 MEMBER_ID 直欄。 這個指令的規則會如同指定該型錄項目的識別碼作為 catEntryId_i 的值。
memberId_i
擁有下單型錄之成員的識別碼
attrName_i
定義給項目的任何明確屬性。
attrValue_i
attrName 中的屬性值。
quantity_i
要新增到訂單中的項目數量。當有指定 catEntryId_i 或 partNumber_id 時,也要指定這個參數。有指定 OrderItemId_i 時,這是選用的。
UOM_i
quantity_i 的度量單位。這個值應該符合 QTYUNIT 表格中的主要鍵。 如果沒有指定的話,會使用 CATENTSHIP 表格中 CATENTRY_ID 與 OrderItem 相同的那一列的 QUANTITYMEASURE 直欄值, 且 quantity_i 參數值會乘以 CATENTSHIP 表格中相同列的 NOMINALQUANTITY 直欄。
addressId_i
產品和項目的出貨地址識別碼。
shipModeId_i
產品或項目要用的出貨模式的參考號碼。
comment_i
建立或更新的訂單項目所要併入的備註。
contractId_i
與訂單有關之合約的 ID。
field1_i
保留給商店使用的整數值。
field2_i
保留給商店使用的一個文字值。這個參數最多可有 254 個字元。
offerId_i
與訂單有關之報價的 ID。
orderId
這是一個由內部產生用以指出零或多個所要更新之訂單的識別碼;可使用訂單參考號碼或下列特殊縮寫之一: "**"、"."、"*"、".t"、"*t"。 請參閱訂單縮寫,以取得這些縮寫的說明。 如果沒有特定商店的擱置訂單,就會建立一份新的擱置訂單。 如果指定了多份擱置的訂單,就會建立或更新每份指定訂單的訂單項目登錄。
outOrderName
指出將加到重新導向 URL 中的「名稱-值」配對名稱。 所新增之「名稱-值」配對的值為所建立或更新之訂單的參考號碼。
outOrderItemName
指出將加到重新導向 URL 中的「名稱-值」配對名稱。 所新增之「名稱-值」配對的值為所建立或更新之訂單項目的參考號碼。 
listId
喜好項目清單 ID。當您指定這個參數時,OrderItemUpdate 指令會建立一張新訂單,其中包含清單中的所有項目。 您可以使用下列其中一個特殊縮寫:"." 和 "*"。 請參閱型錄縮寫,以取得說明。
orderDesc
指定此指令所建新訂單的相關說明
remerge
在同一訂單中要合併於其他 OrderItems 且具有相同的 correlationGroup 屬性 (如果可能) 的 OrderItems 清單。 除非其 InventoryStatus 是 "NALC",或 allocate、backorder 或 reverse 參數指定了 OrderItems,否則,不會合併 OrderItems。
merge
在同一訂單中要合併於其他 OrderItems (如果可能),且不論其 correlationGroup 屬性是什麼的 OrderItems 清單。
check
CheckInventoryAvailability 作業指令應該檢查的 OrderItems 清單。
allocate
應該從現有庫存來配置的 OrderItems 清單。
backorder
一份 OrderItems 清單,如果現有的庫存沒有配置這些項目,則必須從預期庫存配置。
reverse
應該釋出其配置(也就是從現有或預期庫存中適當解除配置)之 OrderItems 的清單。
configurationId_i
如果這個 OrderItem 代表已架構的動態套件,這就是架構 ID。

附註:只有在啟用 ATP 庫存時,才適合使用 remerge、merge、check、allocate、backorder 和 reverse 等參數(請參閱 STORE 表格中的 ALLOCATIONGOODFOR 直欄)。 它們代表要傳遞給 AllocateInventory 作業指令的 OrderItems 清單,由 AllocateInventory 作業指令依如下指定來呼叫 CheckInventoryAvailability、AllocateExistingInventory、AllocateExpectedInventory、DeallocateExistingInventory 和 DeallocateExpectedInventory 作業指令。 另外,這些參數也接受 OrderItem 縮寫,請參閱訂單子系統指令的說明,以取得詳細資料。

預設 ATP 參數值如下:

範例 1
下列範例會建立一份參考號碼為 18 且有 monogram CJK 屬性之型錄項目的出貨記錄。 這個出貨記錄會新增至客戶的目前擱置的訂單中。 指令完成時,會呼叫 OrderItemDisplay 指令。
    http://myhostname/webapp/wcs/stores/servlet/OrderItemUpdate?addressId=2
    &catEntryId=18&attrName=monogram&attrValue=CJK&quantity=1&shipModeId=4
    &URL=OrderItemDisplay

範例 2
下列範例會新增 10 個型錄項目號碼 2 到購物者的所有現行擱置訂單內。 指令完成時,會呼叫 OrderItemDisplay 指令。
    http://myhostname/webapp/wcs/stores/servlet/OrderItemUpdate?catEntryId=2
    &quantity=10&orderId=*&outOrderName=orderId&URL=/webapp/wcs/stores/servlet/OrderItemDisplay

範例 3
下列範例會更新三個 OrderItem ID。
    http://myhostname/webapp/wcs/stores/servlet/OrderItemUpdate?URL=OrderItemDisplay
    &quantity_1=2&quantity_2=7&orderItemId_1=117&orderItemId_2=118
    &orderItemId_3=113&quantity_3=2

規則

異常狀況

相關概念

相關參照

IBM copyright