Ejemplo: recuperar transiciones de estado válidas
Este ejemplo muestra cómo recuperar transiciones de estado válidas independientemente de si las transiciones de estado personalizadas se han definido para la entidad. Puede descargar el ejemplo desde aquí.
Nota
Este ejemplo se aplica tanto a Dynamics 365 Customer Engagement (on-premises) como a Dataverse.
Cómo ejecutar esta muestra
Para obtener una copia local de todas las muestras y compilarlas, siga estos pasos:
- Descargar o clonar el informe de Muestras para que tenga una copia local.
- (Opcional) Edite el archivo dataverse/App.config para definir una cadena de conexión que especifique la instancia o la organización a la que desea conectarse.
- Abra la solución de ejemplo en Visual Studio y presione F5 para ejecutar la muestra. Una vez que especifique una cadena de conexión en dataverse/App.config, cualquier muestra que ejecute utilizará esa información de conexión.
Si no especifica una cadena de conexión en el archivo dataverse/App.config, se abre un diálogo cada vez que ejecute la muestra y tendrá que introducir información acerca de a qué instancia u org desea conectarse y qué credenciales desea usar. Este diálogo guardará en caché conexiones anteriores para que pueda elegir una conexión usada previamente.
Qué hace este ejemplo
El método GetValidStatusOptions
está diseñado para usarse en un escenario donde contiene los datos que devuelven transiciones de opción de estado válidas con independencia de si las transiciones de estado están habilitadas para la entidad.
Cómo funciona este ejemplo
Para simular el escenario descrito en Qué hace este ejemplo, el ejemplo hará lo siguiente:
Configuración
- Comprobaciones para la versión actual de la organización.
- El método
MetadataFilterExpression
comprueba los metadatos de la entidad.
Demostraciones
Este ejemplo muestra cómo recuperar transiciones de estado válidas independientemente de si las transiciones de estado personalizadas se han definido para la entidad.
El ejemplo lleva a cabo las siguientes tareas:
Recupera las opciones de estado de la entidad de incidentes
Usa un método de
GetValidStatusOptions
en el ejemplo para recopilar las transiciones de estado válidas para cada opción de estadoPresenta opciones válidas de transición en la consola
Cuando las transiciones de razón para el estado de la entidad de incidentes se configuran así:
Las transiciones de estado válidas se filtran y verá lo siguiente representando todas las transiciones válidas para cada opción de estado.
[In Progress] incident records can transition to:
2 Canceled 1 Canceled
2 Canceled 1 Merged
0 Active 1 On Hold
[On Hold] incident records can transition to:
2 Canceled 2 Canceled
2 Canceled 2 Merged
0 Active 2 Waiting for Details
[Waiting for Details] incident records can transition to:
2 Canceled 3 Canceled
2 Canceled 3 Merged
0 Active 3 Researching
[Researching] incident records can transition to:
2 Canceled 4 Canceled
1 Resolved 4 Information Provided
1 Resolved 4 Problem Solved
2 Canceled 4 Merged
[Problem Solved] incident records can transition to:
2 Canceled 5 Merged
[Information Provided] incident records can transition to:
2 Canceled 1000 Merged
[Canceled] incident records can transition to:
2 Canceled 6 Merged
[Merged] incident records can transition to:
Cuando este ejemplo se ejecuta sin aplicar transiciones de razón para el estado en la entidad de incidente, verá lo siguiente representando todas las transiciones posibles para cada estado.
[Problem Solved] incident records can transition to:
1 Resolved 1000 Information Provided
2 Canceled 6 Canceled
2 Canceled 2000 Merged
0 Active 1 In Progress
0 Active 2 On Hold
0 Active 3 Waiting for Details
0 Active 4 Researching
[Information Provided] incident records can transition to:
1 Resolved 5 Problem Solved
2 Canceled 6 Canceled
2 Canceled 2000 Merged
0 Active 1 In Progress
0 Active 2 On Hold
0 Active 3 Waiting for Details
0 Active 4 Researching
[Canceled] incident records can transition to:
1 Resolved 5 Problem Solved
1 Resolved 1000 Information Provided
2 Canceled 2000 Merged
0 Active 1 In Progress
0 Active 2 On Hold
0 Active 3 Waiting for Details
0 Active 4 Researching
[Merged] incident records can transition to:
1 Resolved 5 Problem Solved
1 Resolved 1000 Information Provided
2 Canceled 6 Canceled
0 Active 1 In Progress
0 Active 2 On Hold
0 Active 3 Waiting for Details
0 Active 4 Researching
[In Progress] incident records can transition to:
1 Resolved 5 Problem Solved
1 Resolved 1000 Information Provided
2 Canceled 6 Canceled
2 Canceled 2000 Merged
0 Active 2 On Hold
0 Active 3 Waiting for Details
0 Active 4 Researching
[On Hold] incident records can transition to:
1 Resolved 5 Problem Solved
1 Resolved 1000 Information Provided
2 Canceled 6 Canceled
2 Canceled 2000 Merged
0 Active 1 In Progress
0 Active 3 Waiting for Details
0 Active 4 Researching
[Waiting for Details] incident records can transition to:
1 Resolved 5 Problem Solved
1 Resolved 1000 Information Provided
2 Canceled 6 Canceled
2 Canceled 2000 Merged
0 Active 1 In Progress
0 Active 2 On Hold
0 Active 4 Researching
[Researching] incident records can transition to:
1 Resolved 5 Problem Solved
1 Resolved 1000 Information Provided
2 Canceled 6 Canceled
2 Canceled 2000 Merged
0 Active 1 In Progress
0 Active 2 On Hold
0 Active 3 Waiting for Details