执行作、函数或 CRUD作的集合。
注释
此方法仅支持联机模式(Xrm.WebApi.online)。
如果要在事务中执行多个请求,则必须将更改集作为参数传递给此方法。 更改集 表示在事务中执行的作的集合。 还可以将单个请求和更改集作为参数一起传递到此方法。
注释
- 不能将读取作(检索、检索多个和 Web API 函数)作为更改集的一部分:这与 OData v4 规范一样。
- 请求最多可以包含 1,000 个单个请求,并且不能包含其他批处理。 详细信息: 执行批处理作。
Syntax
执行多个请求:
var requests = [req1, req2, req3];
Xrm.WebApi.online.executeMultiple(requests).then(successCallback, errorCallback);
在事务中执行多个请求:
在本例中,req1req2req3在事务中执行。
var changeSet = [req1, req2, req3];
var requests = [changeSet];
Xrm.WebApi.online.executeMultiple(requests).then(successCallback, errorCallback);
在事务中执行单个请求和多个请求的组合:
在这种情况下,req1req2在req3事务中执行,但req4req5单独执行。
var changeSet = [req1, req2, req3];
var requests = [req4, req5, changeset];
Xrm.WebApi.online.executeMultiple(requests).then(successCallback, errorCallback);
参数
| Name | 类型 | 必选 | Description |
|---|---|---|---|
requests |
对象数组 | 是的 | 以下类型之一的数组: 每个对象 都是要针对 Web API 终结点执行的作、函数或 CRUD 请求的对象。 每个对象都会公开 一个 getMetadata 方法 ,用于定义要执行的作、函数或 CRUD 请求的元数据。 execute 方法接受这种类型的参数。 更改集 (对象数组),其中更改集中的每个对象如前所述。 在这种情况下,更改集中指定的所有请求对象都在事务中执行。 在 “语法”部分中查找请求示例。 |
successCallback |
功能 | 否 | 成功执行作时要调用的函数。 响应对象的数组传递给函数。 请参阅 返回值 |
errorCallback |
功能 | 否 | 作失败时要调用的函数。 传递具有以下属性的对象: - errorCode:数。 错误代码为正十进制数。 例如,将按原样0x80040333记录的错误代码作为返回 。2147746611- message:字符串。 描述问题的错误消息。 |
返回值
成功后,返回一个承诺,其中包含对象数组。successCallback 这些对象具有以下属性:
| Name | 类型 | 必选 | Description |
|---|---|---|---|
json |
承诺 | 否 | JSON 格式的响应正文。 |
text |
承诺 | 否 | 纯文本格式的响应正文。 |
headers |
物体 | 是的 | 响应标头。 |
ok |
布尔 | 是的 | 指示请求是否成功。 |
status |
编号 | 是的 | 响应状态代码中的数值。 例如:200 |
statusText |
String | 是的 | 响应状态代码的说明。 例如:OK |
type |
String | 是的 | 响应类型。 值为:空字符串(默认值)、arraybuffer、blob、document和jsontext。 |
url |
String | 是的 | 发送到 Web API 终结点的作、函数或 CRUD 请求的请求 URL。 |