作为开发人员,请阅读此参考文档,以使用 msdyn_ForecastApi 自定义作来检索和更新预测数据。 您还可以使用此作不时将预测数据存储为快照。 然后,您可以使用快照比较一段时间内的预测数据。 使用 预测 API 示例代码 开始使用 msdyn_ForecastApi 自定义作。
参数
| 参数名称 | 必选 | Description |
|---|---|---|
WebApiName |
是的 | 包含要执行的 API 的名称。 |
RequestJson |
是的 | 包含 API 调用的参数和参数。 |
API 列表
下面给出了您可以使用自定义作调用 msdyn_ForecastApi 的一组 API。
GET_ForecastConfigurations
返回已配置的所有预测配置的列表。
Example
POST [Organization URI]/api/data/v9.1/msdyn_ForecastApi/ HTTP/1.1
Content-Type: application/json
{
"WebApiName": "GET_ForecastConfigurations",
"RequestJson": "{}"
}
| 参数 | 类型 | Description |
|---|---|---|
WebApiName |
String | API 的名称 |
RequestJson |
String | 序列化 JSON 对象 |
响应
{
"@odata.context": "[Organization URI]/api/data/v9.1/$metadata#Microsoft.Dynamics.CRM.msdyn_ForecastApiResponse",
"response": [
{
"Columns": [
{
"ForecastConfigurationColumnId": "0ad51075-912b-4e00-a7a1-91170e437d27",
...
"ForecastConfigurationId": "27bd2c40-f868-ea11-a811-000d3a37bb2c",
...
},
{
"ForecastConfigurationColumnId": "c3ef8024-6517-4168-adc7-bb5b520554a0",
...
"ForecastConfigurationId": "27bd2c40-f868-ea11-a812-125d3a37bb2d",
...
}],
"PermissionRoles": null,
"AdditionalFilters": "<fetch version=\"1.0\" mapping=\"logical\"><entity name=\"opportunity\"><\/entity><\/fetch>",
"IsSnapshotScheduled": false,
"SnapshotSchedule": null,
"SnapshotTimeZone": null,
"PublishedDateTime": "0001-01-01T00:00:00",
"DefaultViewIdForUnderlyingRecords": "bf649add-6c30-ea11-a813-000d3a5475f7"
}
]
}
返回值
预测配置列表。
GET_ForecastConfigurationsByName
返回名称作为请求有效负载的一部分提供的所有预测配置。
Example
POST [Organization URI]/api/data/v9.1/msdyn_ForecastApi HTTP/1.1
Content-Type: application/json
{
"WebApiName": "GET_ForecastConfigurationsByName",
"RequestJson": "{\"Name\":\"api_test1\"}"
}
| 参数 | 类型 | Description |
|---|---|---|
WebApiName |
String | API 的名称 |
RequestJson |
JSON 对象 | 包括 Name:预测配置的名称 |
响应
{
"@odata.context": "[Organization URI]/api/data/v9.1/$metadata#Microsoft.Dynamics.CRM.msdyn_ForecastApiResponse",
"response": [
{
"Columns": [
{
"Name": "api_test1",
...
"ForecastConfigurationId": "bcf37937-487e-ea11-a811-000d3a37bb2c",
...
}
],
"PermissionRoles": null,
"AdditionalFilters": "<fetch version=\"1.0\" mapping=\"logical\"><entity name=\"opportunity\"><\/entity><\/fetch>",
"IsSnapshotScheduled": false,
"SnapshotSchedule": null,
"SnapshotTimeZone": null,
"PublishedDateTime": "0001-01-01T00:00:00",
"DefaultViewIdForUnderlyingRecords": "bf649add-6c30-ea11-a813-000d3a5475f7"
}
]
}
返回值
预测配置列表。
GET_ForecastPeriodsByForecastConfigurationId
返回作为请求有效负载的一部分提供的活动预测配置 ID 的所有预测周期。
Example
POST [Organization URI]/api/data/v9.1/msdyn_ForecastApi HTTP/1.1
Content-Type: application/json
{
"WebApiName": "GET_ForecastPeriodsByForecastConfigurationId",
"RequestJson": "{
\"ForecastConfigurationId\":\"04323a04-da7f-ea11-a811-000d3a37bb2c\"
}"
}
| 参数 | 类型 | Description |
|---|---|---|
WebApiName |
String | API 的名称 |
RequestJson |
JSON 对象 | 包含: ForecastConfigurationId预测配置 ID |
响应
{
"@odata.context": "[Organization URI]/api/data/v9.1/$metadata#Microsoft.Dynamics.CRM.msdyn_ForecastApiResponse",
"response": [
{
"Id": "8b8cadd8-ede3-4b21-97cf-93efc0337089",
"ForecastConfigurationId": "04323a04-da7f-ea11-a811-000d3a37bb2c",
"RecurrenceIndex": 0,
"ValidFrom": "2020-04-01T00:00:00Z",
"ValidTo": "2020-06-30T23:59:59Z",
"Name": "FY2020 Q2",
"RecomputeStatus": 10,
"LastRecomputedOn": "2020-05-25T08:04:24.817Z",
"RecomputationStartTime": "2020-06-05T05:04:30.904Z",
"RecomputeStatusChangedOn": "2020-06-05T06:04:00.363Z",
"FailureInfo": "Microsoft.Azure.WebJobs.FunctionFailedException: The activity function 'CreateUpdateForecastHierarchy' failed: \"An item with the same key has already been added. Key: aaaaaaaa-0b0b-1c1c-2d2d-333333333333\". See the function execution logs for additional details. ---> System.ArgumentException: An item with the same key has already been added. Key: aaaaaaaa-0b0b-1c1c-2d2d-333333333333\r\n at System.Collections.Generic.Dictionary`2.TryInsert(TKey key, TValue value, InsertionBehavior behavior)\r\n at Microsoft.Dynamics.Forecasting.RecomputeEngine.HierarchyManager.<>c__DisplayClass23_0.<GetForecastInstancesByHierarchyEntityId>b__0(ForecastInstance forecastInstance) in C:\\src\\cloud_IDEs\\ide5\\Azure\\RecomputeEngine\\HierarchyManager\\HierarchyManager.cs:line 727\r\n at System.Collections.Generic.List`1.ForEach(Action`1 action)\r\n at Microsoft.Dynamics.Forecasting.RecomputeEngine.HierarchyManager.GetForecastInstancesByHierarchyEntityId(ForecastConfiguration forecastConfiguration, Guid forecastRecurrenceId) in C:\\src\\cloud_IDEs\\ide5\\Azure\\RecomputeEngine\\HierarchyManager\\HierarchyManager.cs:line 727\r\n at Microsoft.Dynamics.Forecasting.RecomputeEngine.HierarchyManager.CreateOrUpdateForecastDataWithLatestHierarchy(ForecastConfiguration forecastConfiguration, Guid forecastRecurrenceId, Dictionary`2 latestHierarchyEntityList) in C:\\src\\cloud_IDEs\\ide5\\Azure\\RecomputeEngine\\HierarchyManager\\HierarchyManager.cs:line 602\r\n at Microsoft.Dynamics.Forecasting.RecomputeEngine.HierarchyManager.<>c__DisplayClass16_0.<CreateOrUpdateForecastHierarchy>b__0() in C:\\src\\cloud_IDEs\\ide5\\Azure\\RecomputeEngine\\HierarchyManager\\HierarchyManager.cs:line 283\r\n at System.Threading.Tasks.Task.InnerInvoke()\r\n at System.Threading.Tasks.Task.<>c.<.cctor>b__275_1(Object obj)\r\n at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)\r\n at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at Microsoft.Dynamics.Forecasting.RecomputeEngine.HierarchyManager.CreateOrUpdateForecastHierarchy(ForecastConfiguration forecastConfiguration, Guid forecastRecurrenceId, Dictionary`2 latestHierarchyEntityList) in C:\\src\\cloud_IDEs\\ide5\\Azure\\RecomputeEngine\\HierarchyManager\\HierarchyManager.cs:line 255\r\n at Microsoft.Dynamics.Forecasting.RecomputeEngine.HierarchyManager.CreateOrUpdateForecastHierarchy(Guid orgId, Guid forecastConfigurationId, Guid forecastRecurrenceId, Dictionary`2 latestHierarchyEntityList) in C:\\src\\cloud_IDEs\\ide5\\Azure\\RecomputeEngine\\HierarchyManager\\HierarchyManager.cs:line 167\r\n at Microsoft.Dynamics.Forecasting.AzureFunctions.CreateUpdateForecastHierarchy.Run(CreateUpdateForecastHierarchyInput input) in C:\\src\\cloud_IDEs\\ide5\\Azure\\AzureFunctions\\Recompute\\ActivityFunctions\\CreateUpdateForecastHierarchy.cs:line 43\r\n at Microsoft.Azure.WebJobs.Host.Executors.VoidTaskMethodInvoker`2.InvokeAsync(TReflected instance, Object[] arguments) in C:\\projects\\azure-webjobs-sdk-rqm4t\\src\\Microsoft.Azure.WebJobs.Host\\Executors\\VoidTaskMethodInvoker.cs:line 20\r\n at Microsoft.Azure.WebJobs.Host.Executors.FunctionInvoker`2.InvokeAsync(Object instance, Object[] arguments) in C:\\projects\\azure-webjobs-sdk-rqm4t\\src\\Microsoft.Azure.WebJobs.Host\\Executors\\FunctionInvoker.cs:line 52\r\n at Microsoft.Azure.WebJobs.Host.Executors.FunctionExecutor.InvokeAsync(IFunctionInvoker invoker, ParameterHelper parameterHelper, CancellationTokenSource timeoutTokenSource, CancellationTokenSource functionCancellationTokenSource, Boolean throwOnTimeout, TimeSpan timerInterval, IFunctionInstance instance) in C:\\projects\\azure-webjobs-sdk-rqm4t\\src\\Microsoft.Azure.WebJobs.Host\\Executors\\FunctionExecutor.cs:line 585\r\n at Microsoft.Azure.WebJobs.Host.Executors.FunctionExecutor.ExecuteWithWatchersAsync(IFunctionInstanceEx instance, ParameterHelper parameterHelper, ILogger logger, CancellationTokenSource functionCancellationTokenSource) in C:\\projects\\azure-webjobs-sdk-rqm4t\\src\\Microsoft.Azure.WebJobs.Host\\Executors\\FunctionExecutor.cs:line 532\r\n at Microsoft.Azure.WebJobs.Host.Executors.FunctionExecutor.ExecuteWithLoggingAsync(IFunctionInstanceEx instance, ParameterHelper parameterHelper, IFunctionOutputDefinition outputDefinition, ILogger logger, CancellationTokenSource functionCancellationTokenSource) in C:\\projects\\azure-webjobs-sdk-rqm4t\\src\\Microsoft.Azure.WebJobs.Host\\Executors\\FunctionExecutor.cs:line 468\r\n at Microsoft.Azure.WebJobs.Host.Executors.FunctionExecutor.ExecuteWithLoggingAsync(IFunctionInstanceEx instance, FunctionStartedMessage message, FunctionInstanceLogEntry instanceLogEntry, ParameterHelper parameterHelper, ILogger logger, CancellationToken cancellationToken) in C:\\projects\\azure-webjobs-sdk-rqm4t\\src\\Microsoft.Azure.WebJobs.Host\\Executors\\FunctionExecutor.cs:line 278\r\n --- End of inner exception stack trace ---\r\n at Microsoft.Azure.WebJobs.DurableOrchestrationContext.CallDurableTaskFunctionAsync[TResult](String functionName, FunctionType functionType, String instanceId, RetryOptions retryOptions, Object input) in E:\\functions\\azure-functions-durable-extension\\src\\WebJobs.Extensions.DurableTask\\DurableOrchestrationContext.cs:line 498\r\n at Microsoft.Dynamics.Forecasting.AzureFunctions.OrchestratorFunctionBase.ExecuteActivityAsync(DurableOrchestrationContext context, String functionName, Object input, Dictionary`2 telemetryProps) in C:\\src\\cloud_IDEs\\ide5\\Azure\\AzureFunctions\\OrchestratorFunctionBase.cs:line 252\r\n at Microsoft.Dynamics.Forecasting.AzureFunctions.RecomputeOrchestrator.ExecuteRecomputeOrchestration(DurableOrchestrationContext context, RecomputeOrchestratorInput recomputeInput, String correlationId, Dictionary`2 telemetryProps) in C:\\src\\cloud_IDEs\\ide5\\Azure\\AzureFunctions\\Recompute\\RecomputeOrchestrator.cs:line 169",
"RecurrenceState": 0,
"UpdatedAttribteList": null
}
]
}
返回值
预测期列表。
GET_ForecastInstances
返回作为单行实体记录的预测实例的列表。
注释
预测周期可以有许多预测实例。 远远超过您希望在单个请求中下拉的次数。 API 端点默认为每个请求提供有限数量的项目。
注意:大型查询可能会损害性能,因此每页的结果数上限为 4000 条记录。 如果您希望检索超过 4000 条记录,例如构建所有可用预测实例的客户端列表,您可以发出多个 API 请求并在应用程序中合并结果。
Example
POST [Organization URI]/api/data/v9.1/msdyn_ForecastApi HTTP/1.1
Content-Type: application/json
{
"WebApiName": "GET_ForecastInstances",
"RequestJson": "{\"ForecastPeriodId\":\"a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1\",\"ForecastConfigurationId\":\"b1b1b1b1-cccc-dddd-eeee-f2f2f2f2f2f2\",\"PageInfo\":{\"SortingAttribute\":\"HierarchyEntityRecord.RecordId\",\"SortingOrder\":\"DESC\",\"PageSize\":1,\"PageNo\":5},\"GetParticipatingRecordsFetchXml\":false,\"ParticipatingRecordsViewId\":\"c2c2c2c2-dddd-eeee-ffff-a3a3a3a3a3a3"}"
}
| 参数 | 类型 | Description |
|---|---|---|
WebApiName |
String | API 的名称 |
RequestJson |
JSON 对象 | 包括ForecastPeriodId:预测期的唯一标识符ForecastConfigurationId:预测配置的唯一标识符SortingAttribute:要在分页中执行排序所基于的属性SortingOrder:ASC 升序DSC 降序PageSize:要在单个页面中检索的记录数PageNo:要获取的页面记录。GetParticipatingRecordsFetchXml:指示响应中是否需要参与记录提取 XML 的标志。ParticipatingRecordsViewId:当为 true 时 GetParticipatingRecordsFetchXml 需要此值。 这是一个保存的查询(视图)ID,用于生成参与记录提取 XML。 |
下面给出了对象的 RequestJson 示例 JSON。
{
"WebApiName": "GET_ForecastInstances",
"RequestJson": "{\"ForecastPeriodId\":\"{{frid}}\",\"ForecastConfigurationId\":\"{{fcid}}\",\"PageInfo\":{\"SortingAttribute\":\"HierarchyEntityRecord.RecordId\",\"SortingOrder\":\"ASC\",\"PageSize\":1,\"PageNo\":5},\"GetParticipatingRecordsFetchXml\":false,\"ParticipatingRecordsViewId\":\"bf649add-6c30-ea11-a813-000d3a5475f7\"}"
}
响应
{
"@odata.context": "[Organization URI]/api/data/v9.1/$metadata#Microsoft.Dynamics.CRM.msdyn_ForecastApiResponse",
"response": {
"ForecastInstances": [
"ForecastInstanceId": "95d2305a-a0be-4b34-84ac-b10e67b0771a",
"ForecastConfigurationId": "04323a04-da7f-ea11-a811-000d3a37bb2c",
...],
"HasMorePages": false,
"ParticipatingRecordsFetchXml": "",
"Code": 200,
"Message": "OK"
}
}
返回值
预测实例列表。
Update_SimpleColumnByEntityId
使用传递的参数的值更新特定列值。
注释
单个 API 调用中的大量更新请求可能会影响性能,因此每个请求的更新上限为 50。
Example
POST [Organization URI]/api/data/v9.1/msdyn_ForecastApi HTTP/1.1
content-type: application/json
{
"WebApiName": "Update_ SimpleColumnByEntityId",
"RequestJson": "
{
\"ForecastConfigurationId\":\"0461fb6b-8d85-ea11-a811-000d3a37bb2c\",
\"ForecastRecurranceId\":\"f8b1122c-b913-4e88-9727-368b6134be3e\",
\"SimpleColumnUpdateRequests\":[{
\" HierarchyEntityRecordId\":\"d8680b00-fd31-46c2-8136-7c4df19cf2a8\",
\"ForecastConfigurationColumnId\":\"65ec7bd1-2de6-49fa-b259-ba74bc721c78\",
\"ForecastConfigurationColumnValue\":0.0,
\"IsRolledUpColumnUpdate\":false},{
\" HierarchyEntityRecordId\":\"11141300-131b-493a-9857-22bd8689b775\",
\"ForecastConfigurationColumnId\":\"65ec7bd1-2de6-49fa-b259-ba74bc721c78\",
\"ForecastConfigurationColumnValue\":0.0,
\"IsRolledUpColumnUpdate\":false}]}"
}
| 参数 | Name | Description |
|---|---|---|
| WebApiName (网络名称) | String | API 的名称 |
| 预测配置 Id | GUID | 预测配置 ID |
| 预测重复标识 | GUID | 预测重复 ID 或预测周期 ID 的列表 SimpleColumnUpdateRequests 是一个数组 |
| HierarchyEntityRecordId | GUID | 实体记录 ID |
| 预测配置列 Id | GUID | 预测配置列 ID |
| 预测配置列值 | ForecastConfigurationColumn 的数据类型 | 需要更新为 |
| IsRolledUpColumnUpdate(可选) | 布尔 |
True 如果汇总列的值已更新, False 如果该值为聚合列的更新 |
响应
{
"@odata.context": "[Organization URI]/api/data/v9.1/$metadata#Microsoft.Dynamics.CRM.msdyn_ForecastApiResponse",
"response": [
{
"Message": "Update Successful",
"StatusCode": 0,
"HierarchyEntityRecordId": "d8680b00-fd31-46c2-8136-7c4df19cf2a8",
"ForecastConfigurationColumnId": "65ec7bd1-2de6-49fa-b259-ba74bc721c78"
},
{
"Message": "Update Successful",
"StatusCode": 0,
"HierarchyEntityRecordId": "11141300-131b-493a-9857-22bd8689b775",
"ForecastConfigurationColumnId": "65ec7bd1-2de6-49fa-b259-ba74bc721c78"
}
]
}
返回值
由 、 、 组成UpdateSimpleColumnByEntityResponse的记录HierarchyEntityRecordId列表ForecastConfigurationColumnId。 MessageStatusCode
Update_SimpleColumnByFIId
通过设置传递的参数值来更新特定列值。
注释
单个 API 调用中的大量更新请求可能会影响性能,因此每个请求的更新上限为 50。
Example
POST [Organization URI]/api/data/v9.1/msdyn_ForecastApi HTTP/1.1
content-type: application/json
{
"WebApiName": "Update_SimpleColumnByFIId",
"RequestJson": "
{
\"ForecastConfigurationId\":\"0461fb6b-8d85-ea11-a811-000d3a37bb2c\",
\"ForecastRecurranceId\":\"f8b1122c-b913-4e88-9727-368b6134be3e\",
\"SimpleColumnUpdateRequests\":[
{
\"ForecastInstanceId\":\"d8680b00-fd31-46c2-8136-7c4df19cf2a8\",
\"ForecastConfigurationColumnId\":\"65ec7bd1-2de6-49fa-b259-ba74bc721c78\",
\"ForecastConfigurationColumnValue\":0.0,
\"IsRolledUpColumnUpdate\":false},
{
\"ForecastInstanceId\":\"11141300-131b-493a-9857-22bd8689b775\",
\"ForecastConfigurationColumnId\":\"65ec7bd1-2de6-49fa-b259-ba74bc721c78\",
\"ForecastConfigurationColumnValue\":0.0,
\"IsRolledUpColumnUpdate\":false}]}"
}
| 参数 | 类型 | Description |
|---|---|---|
| WebApiName (网络名称) | String | API 的名称 |
| 预测配置 Id | GUID | 预测配置 ID |
| 预测重复标识 | Guid | 预测重复 ID 或预测周期 ID |
| SimpleColumnUpdate请求 | Array | 包括以下内容 |
| 预测实例 Id | GUID | 预测实例 ID |
| 预测配置列 Id | GUID | 预测配置列 ID |
| 预测配置列值 | ForecastConfigurationColumn 的数据类型 | 需要更新为 |
| IsRolledUpColumnUpdate(可选) | 布尔 |
True 如果汇总列的值已更新, false 如果该值为聚合列的更新 |
响应
{
"@odata.context": "[Organization URI]/api/data/v9.1/$metadata#Microsoft.Dynamics.CRM.msdyn_ForecastApiResponse",
"response": [
{
"Message": "Update Successful",
"StatusCode": 0,
"ForecastInstanceId": "d8680b00-fd31-46c2-8136-7c4df19cf2a8",
"ForecastConfigurationColumnId": "65ec7bd1-2de6-49fa-b259-ba74bc721c78"
},
{
"Message": "Update Successful",
"StatusCode": 0,
"ForecastInstanceId": "11141300-131b-493a-9857-22bd8689b775",
"ForecastConfigurationColumnId": "65ec7bd1-2de6-49fa-b259-ba74bc721c78"
}
]
}
返回值
由 、 、 组成UpdateSimpleColumnByEntityResponse的记录ForecastInstanceId列表ForecastConfigurationColumnId。 MessageStatusCode
GET_ParticipatingRecordsFetchxml
返回提取 XML 以检索预测中的基础记录。
Example
POST /api/GET_ParticipatingRecordsFetchxml HTTP/1.1
Host: your-api-endpoint.com
Content-Type: application/json
{
"ForecastConfigurationId": "a01f86da-1b45-ef11-bfe2-6045bd066f80",
"ForecastPeriodId": "a51f86da-1b45-ef11-bfe2-6045bd066f80",
"HierarchyRecordId": "697adf08-df43-ef11-bfe2-6045bd07ea28",
"ForecastInstanceId": "69169046-520b-4040-abfa-2981a2f0aee3",
"ForecastConfigurationColumnId": "f06490f5-6c27-453c-b06c-0194819202a4",
"RecordViewId": "bf649add-6c30-ea11-a813-000d3a5475f7",
"IsRolledUpNodeRequested": "true"
}
| 参数 | 类型 | Description |
|---|---|---|
| 预测配置 Id | GUID | 预测配置 ID |
| 预测周期 Id | GUID | 预测期 ID |
| 层次结构记录 ID | GUID | Dataverse 中应检索基础记录的记录 ID。 例如,对于组织结构图预测,系统用户 ID,或者在区域预测的情况下,区域 ID。 |
| 预测实例 Id | GUID | 预测实例 ID |
| 预测配置列 Id | GUID | 需要检索的预测列的 ID。 例如,当您只想获取预测的“ 最佳案例” 列的参与记录时,请输入“ 最佳案例 ”列的列 ID。 每个请求只能输入一个列 ID。 若要检索更多列,应为每列发送请求。 如果要为预测的所有列提取 XML,请跳过此参数。 您可以从 预测配置 定义中获取列 ID。 |
| 记录视图 ID | GUID | 基础记录的记录视图 ID。 详细了解如何在 savedquery EntityType 中获取视图 ID |
| IsRolledUpNode请求 | 布尔 | 指定是返回汇总节点(组)还是单个节点的值。 如果设置为 true,则返回组节点下的所有记录。 如果设置为 false,则仅返回个人的记录。 |
响应
{
"@odata.context": "https://orgname.dynamics.com/api/data/v9.0/$metadata#Microsoft.Dynamics.CRM.msdyn_ForecastApiResponse",
"response": "<fetch version=\"1.0\" mapping=\"logical\" distinct=\"true\"><entity name=\"opportunity\"><filter type=\"and\"><condition attribute=\"estimatedclosedate\" operator=\"between\"><value>2024-07-01T00:00:00.0000000Z</value><value>2024-09-30T23:59:59.0000000Z</value></condition><condition attribute=\"msdyn_forecastcategory\" operator=\"eq\" value=\"100000001\" /></filter><link-entity name=\"systemuser\" from=\"systemuserid\" to=\"ownerid\" link-type=\"inner\"><attribute name=\"systemuserid\" /><filter type=\"and\"><condition attribute=\"systemuserid\" operator=\"eq-or-under\" value=\"697adf08-df43-ef11-bfe2-6045bd07ea28\" /></filter></link-entity><attribute name=\"name\" /><attribute name=\"statuscode\" /><attribute name=\"statecode\" /><attribute name=\"customerid\" /><attribute name=\"ownerid\" /><attribute name=\"msdyn_forecastcategory\" /><attribute name=\"estimatedvalue\" /><attribute name=\"estimatedclosedate\" /><attribute name=\"actualvalue\" /><attribute name=\"actualclosedate\" /><attribute name=\"opportunityid\" /><order attribute=\"name\" descending=\"false\" /></entity></fetch>"
}
返回值
返回预测中的基础记录的提取 XML 查询。