2012-08-08 15 views
8

Ejemplo: Supongamos que tengo un flujo de trabajo que envía un correo electrónico 2 días antes de la fecha de finalización de la garantía. Este flujo de trabajo se desencadena en el "Creado" de una entidad.CRM2011 Flujo de trabajo: ¿Qué sucede si el campo que se utiliza en la condición del flujo de trabajo se actualiza después de que se haya iniciado el flujo de trabajo?

step 1: wait condition - process timeout < (warrantyendate - 2) 
    after wait: send email. 

Por lo tanto, cuando se crea el registro, se inicia el flujo de trabajo. Pero lo que sucede cuando el usuario regresa y actualiza la fecha de finalización de la garantía.

¿El flujo de trabajo comprueba la fecha de finalización de la garantía actualizada o todavía utiliza la fecha de finalización ingresada cuando se activó (es decir, la inicial en crear valor)?

+3

Cuando intenta realizar el escenario, ¿qué resultado ve? ¿No solo intentarlo te dará tu respuesta? – BenPatterson1

+0

@ BenPatterson1 Estaba probando con un campo de fecha y hora y se ejecutó en bucles infinitos (y crm en el supuesto de detener la ejecución debido a esto), así que pensé que buscaría algo de ayuda. Logré deshacerme de eso y encontré la respuesta. Gracias. –

Respuesta

8

Mi comprensión es que el flujo de trabajo utiliza los datos en el sistema en el momento de la ejecución.

Lo importante a tener en cuenta aquí es que un flujo de trabajo se puede ejecutar muchas veces, en estos momentos los datos en el sistema pueden ser diferentes. Crm almacena en caché el estado del flujo de trabajo, pero no los datos. Process Architecture for Microsoft Dynamics CRM 2011 describe esto.

Por lo tanto, cada vez que se verifique la condición de tiempo de espera del proceso utilizará el valor actual de warrantyEndDate. Si se cambia el valor, la próxima vez que se marque la condición, se usará el nuevo valor.

En cualquier caso, como lo sugiere @ BenPatterson1, es probable que lo mejor sea que lo pruebe para estar seguro.

+0

Gracias James. Tenía la impresión de que los datos también estaban en la memoria caché. –

4

Después de probar esto por mí mismo, si el valor del campo incluido en la condición cambia, el motor de flujo de trabajo se activa desde la suspensión (espera) y comprueba la condición nuevamente.

Si cumple la condición, continúa con el siguiente paso o continuará esperando.