執行動作、函數或 CRUD 作業的集合。
備註
此方法僅支援線上模式 (Xrm.WebApi.online)。
如果您想要在交易中執行多個請求,則必須將變更集作為參數傳入給此方法。 變更集 代表在交易中執行的作業集合。 您也可以將個別要求和變更集一起作為參數傳遞至此方法。
備註
- 您無法將讀取作業 (擷取、擷取多個和 Web API 函式) 納入變更集的一部分;這是根據 OData v4 規範。
- 請求最多可以包含 1,000 個個別請求,並且不能包含其他批次。 其他資訊: 執行批次作業。
語法
執行多個請求:
var requests = [req1, req2, req3];
Xrm.WebApi.online.executeMultiple(requests).then(successCallback, errorCallback);
在交易中執行多個請求:
在此情況下, req1、 、 req2及 req3 會在交易中執行。
var changeSet = [req1, req2, req3];
var requests = [changeSet];
Xrm.WebApi.online.executeMultiple(requests).then(successCallback, errorCallback);
在交易中混合執行個別請求和多個請求:
在這種情況下, req1、、 req2和 req3 是在事務中執行的,但 req4 和是 req5 單獨執行的。
var changeSet = [req1, req2, req3];
var requests = [req4, req5, changeset];
Xrm.WebApi.online.executeMultiple(requests).then(successCallback, errorCallback);
參數
| 名稱 | 類型 | 為必填項目 | Description |
|---|---|---|---|
requests |
物件陣列 | Yes | 下列其中一種類型的陣列: 物件, 其中每個物件都是您想要針對 Web API 端點執行的動作、函式或 CRUD 要求。 每個物件都會公開一個 getMetadata 方法 ,可讓您定義要執行的動作、函數或 CRUD 請求的中繼資料。 execute 方法接受這種類型的參數。 變更集 (物件陣列),其中變更集中的每一個物件都如先前所述。 在此情況下,變更集中指定的所有要求物件都會在交易中執行。 在「 語法」區段中尋找請求範例。 |
successCallback |
功能 | 否 | 操作執行成功時要呼叫的函數。 回應物件陣列會傳遞至函式。 請參閱 傳回值 |
errorCallback |
功能 | 否 | 作業失敗時要呼叫的函式。 會傳遞具有下列屬性的物件: - errorCode:數。 錯誤碼為正十進位數。 例如,記載為 0x80040333 的錯誤碼將傳回為 2147746611。- message:繩子。 描述問題的錯誤訊息。 |
傳回值
成功時,將包含物件陣列的 promise 傳回給 successCallback。 物件具有下列屬性:
| 名稱 | 類型 | 為必填項目 | Description |
|---|---|---|---|
json |
答應 | 否 | JSON 格式的回應內文。 |
text |
答應 | 否 | 純文字格式的回應本文。 |
headers |
物體 | Yes | 回應標頭。 |
ok |
布林值 | Yes | 指出要求是否成功。 |
status |
Number | Yes | 回應狀態碼中的數值。 例如:200 |
statusText |
繩子 | Yes | 回應狀態碼的描述。 例如:OK |
type |
繩子 | Yes | 回應類型。 值為:空字串 (預設值)、 arraybuffer、 jsonblobdocumenttext和 。 |
url |
繩子 | Yes | 傳送至 Web API 端點之動作、函式或 CRUD 要求的要求 URL。 |