共用方式為


UpdateEx 方法

用於根據輸入鍵參數(key1、key2、... )更新屬性凱恩)。 使用 UpdateEx時,你無法刪除收藏中的項目。 另一種方法有助於刪除。 欲了解更多資訊,請參閱 DeleteOnly 方法

語法

UpdateEx (key1, key2, ... keyn, correctionMode, interactiveMode,  
    properties)  

參數

參數 說明
key 一組必須存在於伺服器資料庫中的參數,否則會發生錯誤。 這些鍵對應於特定元件介面所定義的 Get 鍵數集合。
correctionMode 一面布林旗。 當設定為 true 時,允許修改元件介面與有效日期項目,方法是更新欄位值或將新項目插入集合。 具體來說,它允許修改在當前生效日前已具EFFDT的項目。 若未將此標記設為 TRUE,任何對這些項目的修改都會從 PeopleSoft 伺服器回傳錯誤。

correctionMode該論證僅在包含有效日期項目的元件介面中被揭露。 否則,它不會作為論證的一部分來展示。

你應該避免在生產環境中設 correctionMode 為 TRUE。 (這也是 PeopleSoft 的推薦。)根據過去EFFDT金鑰已判定的事件,不應被修改。 這有助於建立稽核追蹤。 correctionModeUpdateEx幟允許繞過這個安全機制。 建議做法是透過在物品中設置欄位,並新增(而非刪除)更新的項目來停用過去的事件。
interactiveMode 一個用於錯誤處理的旗標。

在存取元件介面中的屬性時,BizTalk Adapter for PeopleSoft Enterprise 會使用 PeopleSoft 提供的 API 來讀寫元件介面中的個別欄位;然而,這些變更不會逐一傳遞到 PeopleSoft 伺服器。 相反地,psjoa.jar(BizTalk Adapter for PeopleSoft Enterprise 互動的對象)會將所有變更打包,並將變更寄送到伺服器。 若任一個別更新失敗,會回傳一個通用錯誤,但無法精確指出實際錯誤。 當互動模式設為 TRUE,每次欄位更新都會單獨傳送到伺服器。 這對效能有重大影響,但若更新失敗(例如設定欄位使用無效值),會提供特定錯誤資訊。

interactiveMode 提供最大效能,並在現場更新層級提供錯誤回報。 要正確使用此功能,建議您將正常通話 interactiveMode 設定為 FALSE。 不應該會影響效能。 若回傳錯誤,則可將旗標設為 TRUE 重試 interactiveMode 同一呼叫。 當呼叫失敗時,伺服器會回傳更精確的錯誤訊息。

備註

當你呼叫這個函式時,對應金鑰的記錄屬性會被輸入參數屬性取代。 所有包含原始紀錄的集合都會被刪除,並以輸入參數中的集合取代。 這些集合的大小不必相符,因為程序 UpdateEx 是刪除所有現有集合項目,然後插入給定項目。

如果元件介面的屬性包含有效日期項目,屬性參數必須包含所有未來有效日期項目,因為原始清單已被替換。 這提供了新增與刪除未來有效日期項目的機制;然而,若這些屬性同時包含過去有效日期項目,則會回傳錯誤,因為過去有效日期項目無法被修改。 若同時包含當前有效日期項目,則忽略。 這允許用戶端以參數設為 False 進行呼叫Get()getHistoryItems,修改未來有效日期項目或新增新的有效日期項目,並將結構作為函數參數UpdateEx()傳遞。

如果元件介面沒有鍵,例如只能存在一個實例,該 UpdateEx() 方法的形式如下:

UpdateEx(correctionMode, interactiveMode, properties)  

備註

如果啟用 PeopleSoft GetSave 及元件介面中的功能,則會提供 BizTalk Adapter for PeopleSoft Enterprise UpdateEx() 方法。

另請參閱

附錄 A:元件介面方法