Procesos de flujo de trabajo

Los flujos de trabajo en CRM le permiten automatizar procesos comerciales simples y complejos dentro de CRM. Puede crear flujos de trabajo utilizando funcionalidades CRM listas para usar o escribir flujos de trabajo personalizados con código .NET para implementar flujos de trabajo complejos. Los procesos de flujo de trabajo se ejecutan en segundo plano o en tiempo real y, opcionalmente, pueden requerir una entrada del usuario.

Los flujos de trabajo se pueden activar en función de condiciones específicas o incluso los usuarios pueden iniciarlos manualmente. Internamente, los flujos de trabajo de CRM se implementan mediante Windows Workflow Foundation. En este capítulo, aprenderemos sobre la configuración de flujos de trabajo.

La configuración de un flujo de trabajo tiene las siguientes partes principales (en secuencia):

  • Configurar la entidad en la que se ejecutará el flujo de trabajo
  • Configure si el flujo de trabajo se ejecutará de forma sincrónica o asincrónica
  • Configure el mensaje (evento) en el que se ejecutará el flujo de trabajo
  • Configurar el ámbito en el que se ejecutará el flujo de trabajo
  • Configurar las etapas y pasos (acciones) del flujo de trabajo

Flujo de trabajo sincrónico / asincrónico

Cuando cree un flujo de trabajo, verá la opción Ejecutar este flujo de trabajo en segundo plano (recomendado) que determina si el flujo de trabajo se ejecutará en tiempo real (sincrónicamente) o en segundo plano (asincrónicamente).

Generalmente, el enfoque recomendado es ejecutar los flujos de trabajo en segundo plano, ya que utilizan los recursos del sistema cuando están disponibles. Sin embargo, siempre puede volver de un flujo de trabajo en tiempo real a un flujo de trabajo en segundo plano y viceversa.

Mensajes de flujo de trabajo

Los flujos de trabajo se pueden registrar en eventos específicos de la siguiente manera:

  • Cuando se crea un registro
  • Cuando cambia el estado de un registro
  • Cuando se asigna un registro
  • Cuando cambia el valor de un campo de registro
  • Cuando se elimina un registro

Alcance del flujo de trabajo

Los flujos de trabajo le permiten establecer el alcance en el que se ejecutará el flujo de trabajo. A continuación se muestran los ámbitos de flujo de trabajo admitidos:

User El flujo de trabajo se ejecutará solo en los registros que pertenecen al mismo usuario que el usuario del flujo de trabajo.
Business Unit El flujo de trabajo se ejecutará en los registros propiedad de los usuarios de la unidad de negocio, al igual que el usuario del flujo de trabajo.
Parent Child Business Units El flujo de trabajo se ejecutará en los registros propiedad de los usuarios de la unidad de negocio, al igual que el usuario del flujo de trabajo, así como cualquier unidad de negocio secundaria.
Organization El flujo de trabajo se ejecutará en registros propiedad de cualquier usuario en CRM.

Pasos del flujo de trabajo

Los flujos de trabajo en CRM son una combinación de una serie de pasos que seguirá el flujo de trabajo. Incluso puede dividir estos pasos en etapas lógicas. Los siguientes pasos son compatibles con los flujos de trabajo de CRM:

Conditional Steps
Check Condition Especifica una declaración lógica "si (condición) - entonces".
Conditional Branch Especifica una instrucción lógica "else - if - then". Esto solo se puede usar con una condición de verificación.
Default Action Especifica una declaración lógica "else". Esto solo se puede usar con una condición de verificación.
Wait Steps
Wait Condition Espera hasta que se cumpla una condición específica. No se aplica a los flujos de trabajo en tiempo real.
Parallel Wait Branch Especifica una condición de espera alternativa con un conjunto de pasos adicionales que se pueden realizar una vez que se cumplen los criterios iniciales.
Action Steps
Create Record Crea un registro de la entidad especificada con los valores predeterminados especificados.
Update Record Actualiza el registro seleccionado con valores especificados o dinámicos.
Assign Record Asigna el registro seleccionado a un usuario o equipo.
Send Email Envía un correo electrónico.
Perform Action Especifica los pasos (y acciones) del flujo de trabajo personalizado. Estos pasos personalizados deben ser desarrollados por un desarrollador de CRM.
Change Status Cambia el estado del registro seleccionado.
Stop Workflow Detiene el flujo de trabajo actual

Ejemplo de flujo de trabajo

En este ejemplo, crearemos un flujo de trabajo simple que se ejecuta en segundo plano para asignar cualquier registro de contacto recién creado a un usuario específico y luego enviar un correo electrónico de bienvenida al cliente.

Step 1 - Vaya a Configuración → Procesos.

Step 2 - Haga clic en Nuevo.

Step 3 - En la ventana CreateProcess, ingrese los siguientes detalles -

Process Name - Nuevo flujo de trabajo de cliente (puede ser cualquier nombre que desee)

Category - Flujo de trabajo

Entity - Contacto (Esta será la entidad en la que está creando el flujo de trabajo. En nuestro caso es Contacto)

Run this workflow in the background (recommended)- Marque esta opción ya que estamos creando un flujo de trabajo asincrónico en segundo plano. Finalmente, haga clic en Aceptar.

Step 4 - En la Ventana de Nuevo proceso ingrese los siguientes detalles -

Activate As - Proceso

Scope - usuario

Start when - Se crea el registro

Hacer clic Add Step → Asignar registro.

Step 5- Verá un nuevo paso agregado al flujo de trabajo. En este paso, especificaremos el usuario al que se deben asignar todos los contactos creados. Ingrese el nombre del paso comoAssign Record to Team. La opción Asignar estará predeterminada como la entidad en la que estamos creando el flujo de trabajo (Contacto en nuestro caso). Haga clic en el icono de búsqueda.

Step 6- En la ventana de búsqueda, seleccione cualquier usuario que desee. Incluso puede seleccionar un equipo específico al que desea asignar los registros. Haga clic en Agregar.

Step 7- Agregue otro paso haciendo clic en Agregar paso → Enviar correo electrónico. En este paso, configuraremos el envío de correo electrónico al cliente.

Step 8- Se agregará un nuevo paso. Ingrese su nombre como Enviar correo electrónico al cliente. Haga clic en Establecer propiedades.

Step 9 - En la siguiente ventana para configurar el correo electrónico, realice las siguientes operaciones:

From- Haga clic en el campo Desde. En el panel derecho, seleccione Usuario propietario y Usuario. Haga clic en Agregar → Aceptar.

To- Haga clic en el campo Para. En el panel derecho, seleccione Contacto y Contacto. Haga clic en Agregar → Aceptar.

Subject - Ingrese un Asunto relevante.

Body - Ingrese un contenido relevante del cuerpo.

Step 10 - Haga clic en Guardar y luego en Activar.

Step 11 - En la ventana emergente Process Activate Confirmation que aparece a continuación, haga clic en Activar.

Step 12- Vaya a la pestaña Contactos y cree un nuevo contacto. Tan pronto como cree un nuevo contacto guardando el registro, verá el campo Propietario configurado para el usuario, que había configurado en el flujo de trabajo. Además, si hace clic en la pestaña Actividades, verá que se crea una actividad de correo electrónico para este contacto. Esto confirma que el flujo de trabajo se ejecutó correctamente.

Flujo de trabajo vs complemento

Los flujos de trabajo y los complementos se pueden utilizar para ampliar y automatizar las funcionalidades de CRM. En muchos escenarios, ambos enfoques se pueden usar indistintamente en lugar del otro. Por ejemplo, si tiene el simple requisito de enviar un correo electrónico a sus clientes, puede hacerlo a través de un complemento o un flujo de trabajo.

Entonces, ¿cómo eliges entre crear un flujo de trabajo o un complemento? La siguiente lista intenta explicar lo mismo:

  • Aunque tanto los complementos como los flujos de trabajo se pueden usar para ejecutar lógica síncrona y asincrónica, los complementos generalmente se prefieren para la lógica síncrona, mientras que los flujos de trabajo para la lógica asincrónica.

  • En general, para implementar una lógica empresarial compleja, se prefieren los complementos a los flujos de trabajo. Se prefieren los flujos de trabajo cuando desea lograr funcionalidades relativamente más sencillas (como enviar correos electrónicos, asignar usuarios, etc.)

  • Los complementos deben desarrollarse con codificación, mientras que los flujos de trabajo pueden ser configurados directamente por los usuarios comerciales sin ningún conocimiento de los flujos de trabajo.

  • Los flujos de trabajo pueden ejecutarse bajo demanda. Por lo tanto, si hay requisitos en los que el usuario desea ejecutar alguna lógica manualmente, los flujos de trabajo serían una mejor opción.

  • Desde el impacto en el rendimiento, los complementos síncronos proporcionan un mejor rendimiento (y rendimiento) en comparación con los flujos de trabajo en tiempo real en escenarios donde la frecuencia de solicitud es mayor.

Conclusión

Este capítulo nos presentó una de las funciones más importantes de CRM: los flujos de trabajo. Primero entendimos los flujos de trabajo sincronizados / asíncronos, los mensajes, el alcance, los pasos y finalmente vimos un ejemplo en vivo de cómo crear y ejecutar un flujo de trabajo. Finalmente, vimos las diferencias entre un flujo de trabajo y un complemento.