Hola a todos, hoy hablaremos de una de esas funcionalidades que han mejorado considerablemente con CRM 2013. Esta no es otra que la posibilidad de ejecutar Workflows (flujos de trabajo) en tiempo real.
El tema es que no todo en Dynamics CRM es online o síncrono, y el principal ejemplo de esto, es la posibilidad de trabajar con Dynamics CRM de forma desconectada (offline mode).
El otro día se me cruzó por la cabeza que ocurre cuando estoy en modo desconectado desde el Outlook, y lanzo un proceso de estos en tiempo real. Entonces me planteé probarlo y escribir este artículo para compartir mis resultados.
En primer lugar me he creado un Workflow sencillo, síncrono que en las creaciones de cuentas, ponga en el campo “Teléfono” el valoe 666666666 como se muestra a continuación:
Entonces nos vamos a offline desde el Outlook:
Vamos a crear una nueva Cuenta y vemos que el workflow síncrono no se ha ejecutado ya que el campo de Teléfono no se ha actualizado:
Nos volvemos a conectar con CRM:
Y vemos que el workflow se ha ejecutado:
COMENTARIOS: Los workflow síncronos, son una maravilla, permiten que nuestros desarrollos necesarios en plugins sean menores, pero a diferencia de los Plugins, solo funcionan en el server side, y en el cliente de Outlook no se disparan cuando esta en offline.
Si queremos comprobar si este workflow en tiempo real se ha disparado desde un sitio u otro, lo que se me ocurre sería en el formulario de la entidad, añadir un campo, donde guardar el resultado de context.client.getClientState() y si es “offline”, entonces evitar que se ejecute nuestro plugin.
No hay comentarios:
Publicar un comentario