Acción msdyn_ForecastApi
Como desarrollador, lea esta documentación de referencia para utilizar la acción personalizada msdyn_ForecastApi
para recuperar y actualizar datos de pronóstico. También puede utilizar esta acción para almacenar datos de pronóstico de vez en cuando, como una instantánea. Luego puede utilizar la instantánea para comparar los datos del pronóstico a lo largo del tiempo. Utilice el código de muestra de API de pronóstico para comenzar con la acción personalizada msdyn_ForecastApi
.
Requisitos de licencia y rol
Tipo de requisito | Debe tener |
---|---|
Licencia | Dynamics 365 Sales Premium o Dynamics 365 Sales Enterprise Más información: Precios de Dynamics 365 Sales |
Roles de seguridad | Personalizador del sistema Más información: Roles de seguridad predefinidos para Sales |
Parámetros
Nombre de parámetro | Obligatorio | Descripción |
---|---|---|
WebApiName |
Sí | Contiene el nombre de la API a ejecutar. |
RequestJson |
Sí | Contiene los parámetros y los argumentos para la llamada a la API. |
Lista de API
A continuación se muestra el conjunto de API que puede invocar utilizando la acción personalizada msdyn_ForecastApi
.
GET_ForecastConfigurations
Devuelve la lista de todas las configuraciones de previsión configuradas.
Ejemplo
POST [Organization URI]/api/data/v9.1/msdyn_ForecastApi/ HTTP/1.1
Content-Type: application/json
{
"WebApiName": "GET_ForecastConfigurations",
"RequestJson": "{}"
}
Parámetro | Type | Descripción |
---|---|---|
WebApiName |
String | Nombre de la API |
RequestJson |
String | Objeto JSON serializado |
Response
{
"@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"
}
]
}
Valor de retorno
Lista de configuraciones de previsión
GET_ForecastConfigurationsByName
Devuelve todas las configuraciones de previsión que tienen el nombre proporcionado como parte de la carga útil de la solicitud.
Ejemplo
POST [Organization URI]/api/data/v9.1/msdyn_ForecastApi HTTP/1.1
Content-Type: application/json
{
"WebApiName": "GET_ForecastConfigurationsByName",
"RequestJson": "{\"Name\":\"api_test1\"}"
}
Parámetro | Type | Descripción |
---|---|---|
WebApiName |
String | Nombre de la API |
RequestJson |
Objeto JSON | Consta de Name : nombre de la configuración de previsión |
Response
{
"@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"
}
]
}
Valor de retorno
Lista de configuraciones de previsión
GET_ForecastPeriodsByForecastConfigurationId
Devuelve todos los períodos de pronóstico para el identificador de configuración de pronóstico activo, que se proporciona como parte de la carga útil de la solicitud.
Ejemplo
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\"
}"
}
Parámetro | Type | Descripción |
---|---|---|
WebApiName |
String | Nombre de la API |
RequestJson |
Objeto JSON | Contiene ForecastConfigurationId : identificador de configuración de previsión |
Response
{
"@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
}
]
}
Valor de retorno
Lista de periodos de previsión.
GET_ForecastInstances
Devuelve la lista de instancias de previsión que son un registro de entidad de una sola fila.
Nota
Los períodos de previsión pueden tener muchas instancias de previsión. Mucho más de lo que le gustaría obtener en una sola solicitud. Los puntos finales de la API proporcionan de forma predeterminada una cantidad limitada de elementos por solicitud.
Nota: las consultas grandes pueden perjudicar el rendimiento, por lo que la cantidad de resultados por página tiene un límite de 4000 registros. Si desea recuperar más de 4000 registros, por ejemplo, para crear una lista del lado del cliente de todas las instancias de pronóstico disponibles, puede realizar varias solicitudes de API y combinar los resultados dentro de su aplicación.
Ejemplo
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"}"
}
Parámetro | Type | Descripción |
---|---|---|
WebApiName |
String | Nombre de la API |
RequestJson |
Objeto JSON | Consiste enForecastPeriodId : Identificador único del periodo de previsiónForecastConfigurationId : Identificador único de la configuración de previsiónSortingAttribute : el atributo basado en el que desea realizar la clasificación en la paginaciónSortingOrder : ASC para orden ascendente DSC para orden descendentePageSize : número de registros que desea recuperar en una sola páginaPageNo : para qué registros de página desea buscar.GetParticipatingRecordsFetchXml :Bandera que indica si es necesario obtener XML de los registros participantes en respuesta.ParticipatingRecordsViewId :Esto es necesario cuando GetParticipatingRecordsFetchXml es verdadero. Este es un ID de consulta (vista) guardada mediante el cual se genera el XML de búsqueda de registros participantes. |
A continuación se da un JSON de ejemplo para el objeto RequestJson
.
{
"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\"}"
}
Response
{
"@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"
}
}
Valor de retorno
Lista de instancias de pronóstico.
Update_SimpleColumnByEntityId
Actualiza los valores específicos de columna usando los valores de los parámetros pasados.
Nota
Una gran cantidad de solicitudes de actualización en una sola llamada a la API puede afectar el rendimiento, por lo que las actualizaciones por solicitud tienen un límite de 50.
Ejemplo
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}]}"
}
Parámetro | Name | Descripción |
---|---|---|
WebApiName | String | Nombre de la API |
ForecastConfigurationId | GUID | Identificador de configuración de previsión |
ForecastRecurranceId | GUID | Id. de recurrencia de previsión o Id. de período de previsión Una lista de SimpleColumnUpdateRequests es una matriz |
HierarchyEntityRecordId | GUID | EntityRecordId |
ForecastConfigurationColumnId | GUID | Identificador de configuración de columna de previsión |
ForecastConfigurationColumnValue | Tipo de datos de ForecastConfigurationColumn | Valor que debe actualizarse para |
IsRolledUpColumnUpdate (opcional) | Booleana |
True si el valor se actualiza para la columna acumulada, False si el valor se actualiza para la columna agregada |
Response
{
"@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"
}
]
}
Valor de retorno
Una lista de registros UpdateSimpleColumnByEntityResponse
que consta de HierarchyEntityRecordId
, ForecastConfigurationColumnId
. Message
, StatusCode
.
Update_SimpleColumnByFIId
Actualiza el valor de columna específico estableciendo los valores de los parámetros pasados.
Nota
Una gran cantidad de solicitudes de actualización en una sola llamada a la API puede afectar el rendimiento, por lo que las actualizaciones por solicitud tienen un límite de 50.
Ejemplo
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}]}"
}
Parámetro | Type | Descripción |
---|---|---|
WebApiName | String | Nombre de la API |
ForecastConfigurationId | GUID | Identificador de configuración de previsión |
ForecastRecurranceId | GUID | Id. de recurrencia de previsión o Id. de período de previsión |
SimpleColumnUpdateRequests | Matriz | Incluye lo siguiente |
ForecastInstanceId | GUID | Identificador de instancia de previsión |
ForecastConfigurationColumnId | GUID | Identificador de configuración de columna de previsión |
ForecastConfigurationColumnValue | Tipo de datos de ForecastConfigurationColumn | Valor que debe actualizarse para |
IsRolledUpColumnUpdate (opcional) | Booleana |
True si el valor se actualiza para la columna acumulada, false si el valor se actualiza para la columna agregada |
Response
{
"@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"
}
]
}
Valor de retorno
Una lista de registros UpdateSimpleColumnByEntityResponse
que consta de ForecastInstanceId
, ForecastConfigurationColumnId
. Message
, StatusCode
.
GET_ParticipatingRecordsFetchxml
Devuelve el XML de búsqueda para recuperar los registros subyacentes en un pronóstico.
Ejemplo
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"
}
Parámetro | Type | Description |
---|---|---|
ForecastConfigurationId | GUID | ID de configuración de pronóstico |
Id. del período de pronóstico | GUID | Identificación del período de pronóstico |
Id. de registro de jerarquía | GUID | El ID del registro en Dataverse para el cual se debe recuperar el registro subyacente. Por ejemplo, el ID de usuario del sistema en el caso de un pronóstico de organigrama, o el ID de territorio en el caso de un pronóstico de territorio. |
ForecastInstanceId | GUID | Identificación de instancia de pronóstico |
ForecastConfigurationColumnId | GUID | ID de la columna de pronóstico que necesita recuperarse. Por ejemplo, cuando desea obtener solo los registros participantes para la columna Mejor caso de su pronóstico, ingrese el ID de la columna Mejor caso . Puede ingresar solo un ID de columna para cada solicitud. Para recuperar más columnas, debe enviar una solicitud para cada columna. Omita este parámetro si desea obtener XML para todas las columnas del pronóstico. Puede obtener el ID de la columna desde la definición de Configuración de pronóstico . |
Identificador de vista de registro | GUID | ID de vista de registro de los registros subyacentes. Obtenga más información sobre cómo obtener el ID de vista en savedquery EntityType |
Se ha solicitado el nodo enrollado | Booleana | Especifica si se deben devolver los valores del nodo acumulado (grupo) o del nodo individual. Si se establece como verdadero, se devuelven todos los registros bajo el nodo de grupo. Si se establece como falso, solo se devuelve el registro del individuo. |
Response
{
"@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>"
}
Valor de retorno
Una consulta de búsqueda XML que devuelve los registros subyacentes en un pronóstico.