Blog de Rafa Ansino

Otro sitio más de Geeks.ms

Dynamics CRM.Modelo de proceso Batch Asincrónico : Parte 1.

En éste y en los dos siguientes post, me gustaría describiros una solución a un problema  común de negocio relacionado con la ejecución de la operación lógica de negocio de  manera programada.
Mientras que este post describe el problema de negocio y una solución tecnológica, los post siguientes ofrecerán una implementación real, basado en el modelo  de proceso asíncrono , como se describe aquí.

Business Problem
 
A menudo nos preguntan  los clientes sobre como realizar la ejecución de operaciones de lógica de negocios de una manera programada . Éstos son algunos de los requisitos de negocio que he encontrado:
 
  • Revisar la fecha de vencimiento para todos los casos abiertos una vez al día y ajustar ‘Si se ha excedido los indicadores SLA  de la fecha de vencimiento
  • Mandar de forma mensual una  carta de noticias de forma automática a los clientes objetivo
  • Actualizar los datos de MSCRM Usuarios de Active Directory una vez al día.
  • Una vez al mes, descalificar a todos los leads que no realizan actividades abiertas.

Estos requisitos tienen algunas características comunes: Acciones programadas, repeticiones, activación asincrónica de una lógica de negocios para una colección seleccionada de expedientes de negocio.

Soluciones comunes

# Soluciones Desventajas
1. Custom .NET code executing a query to retrieve target business records and implementing business logic.
Scheduled and activated by Windows Service or Windows Task Scheduler
  • No se pueden contener en Solucion MSCRM 2011 
  • Para desarrollos Online/IFD , rrequieren entornos hosting Azure/On premise para entornos  de codigo .net y componentes programados.
  • Cambios de lógica de negocios por lo general requieren Código del ciclo de compilación
2. Regla de Workflows recursivos para cada registro de empresas objetivo.La lógica empresarial ejecutado por un workflow nativo o actividad personalizada en . NET
  • Actividades predeterminadas no son soportadas en desarrollos  Online.
  • Workflow Steps se limitan a un conjunto específico de acciones y no puede realizar acciones como el compartir un registro.
  • Reglas de los  Workflow recursivos son difíciles de manejar y diagnosticar.

 

La principal desventaja en ambas soluciones , es la falta de soporte  en las implementaciones en CRM Online. Esto generalmente significa que parte de la solución se lleva a cabo en un ambiente diferente de alojamiento, tales como Azure de On premise.

The Asynchronous Batch Process Pattern

Se basa en tres elementos básicos

  1. Horario: administrado por un componente de planificación, capaz de invocar una acción en una fecha y hora predefinida
  2. Acción: una operación de lógica de negocio realizado por un conjunto de registros de negocios por el componente de ejecución
  3. Target business records.una colección de registros de negocios definido por una Query Definition ç

La acción se aplica a los registros de objetivo de negocio en un horario determinado

Si bien esto parece un concepto simple y trivial, el patrón define el acoplamiento posible entre los tres componentes. El componente de programación es ajeno a la acción que invoca, y el delegado de Acción no es consciente de Target Business Records population que actúa.

Este modelo permite a soluciones robustas y flexibles resolver el problema de negocio antes mencionado.

Este articulo fue realizado por Yaniv Arditi

1 Comentario

  1. anonymous

    En el post anterior hablamos de los Asynchronous Batch Process Pattern y el tipo de problema que puede

Deja un comentario

Tema creado por Anders Norén