Configuración de fases y pasos de flujo de trabajo en tiempo real

Cuando diseñe flujos de trabajo, tiene la opción de incluir la lógica que desea ejecutar en fases y pasos.

FASES
Las fases facilitan la lectura de la lógica del flujo de trabajo y la explican en tiempo real. Sin embargo, las fases no afectan a la lógica ni al comportamiento de los flujos de trabajo. Si un proceso tiene fases, todos los pasos del proceso deben estar incluidos en una fase.

Pasos
Los pasos son una unidad de lógica de negocios en un flujo de trabajo. Los pasos pueden incluir condiciones, acciones, otros pasos o una combinación de estos elementos.

Acciones que los procesos del flujo de trabajo en tiempo real pueden realizar

Los procesos de flujo de trabajo en tiempo real pueden realizar las acciones que aparecen en la tabla siguiente.

Acción Descripción
Crear fila Crea una nueva fila para una tabla y asigna los valores que elija a los atributos.
Actualizar fila Puede actualizar la fila en la que se está ejecutando el flujo de trabajo en tiempo real, cualquiera de las filas vinculadas a esa fila en una relación N:1 o cualquier fila creada por pasos anteriores.
Asignar fila Puede asignar la fila en la que se está ejecutando el flujo de trabajo en tiempo real, cualquiera de las filas vinculadas a esa fila en una relación N:1 o cualquier fila creada por pasos anteriores.
Enviar correo Envía un mensaje de correo electrónico. Puede optar por crear un nuevo mensaje de correo electrónico o utilizar una plantilla de correo electrónico configurada para la tabla de la fila en la que se está ejecutando el flujo de trabajo en tiempo real o cualquier tabla que tenga una relación N:1 con la tabla, o la tabla para cualquier fila creada en pasos anteriores.
Iniciar flujo de trabajo secundario Inicia un proceso de flujo de trabajo en tiempo real que se ha configurado como un flujo de trabajo secundario.
Cambiar estado Cambia el estado de la fila en la que se está ejecutando el proceso, cualquiera de las filas vinculadas a esa fila en una relación N:1 o cualquier fila creado por pasos anteriores.
Detener flujo de trabajo Detiene el flujo de trabajo actual. Puede establecer un estado Correcto o Cancelado y especificar un mensaje de estado.

Cuando se configuran flujos de trabajo en tiempo real para un evento, detener un flujo de trabajo en tiempo real con un estado de cancelado evitará que se complete la acción del evento. Vaya a Usar flujos de trabajo en tiempo real para obtener más información.
Paso personalizado Los desarrolladores pueden crear pasos de flujo de trabajo en tiempo real personalizados que definen acciones. No hay pasos personalizados disponibles de manera predeterminada.

Establecer valores de fila

Cuando se crea una fila, se pueden establecer valores para la fila. Cuando se actualiza una fila, se pueden establecer, anexar, aumentar, disminuir, multiplicar o borrar los valores.

Al seleccionar Establecer propiedades, se abre un cuadro de diálogo que muestra el formulario predeterminado para la tabla.

En la parte inferior del cuadro de diálogo, puede ver una lista de columnas adicionales que no están presentes en el formulario.

Para una columna, puede establecer un valor estático y este será definido por el flujo de trabajo.

A la derecha del cuadro de diálogo, el Asistente de formulario permite establecer o anexar valores dinámicos desde el contexto de la fila actual. Se incluyen valores de filas relacionadas a los que se puede acceder desde las relaciones N:1 (varios a uno) de la tabla.

Las opciones disponibles en el Asistente de formulario dependen de la columna que ha seleccionado en el formulario. Cuando establezca un valor dinámico, verá un marcador de posición amarillo, llamado campo de datos dinámico, que muestra dónde se incluirán los datos dinámicos. Si desea quitar el valor, seleccione el campo de datos dinámico y elimínelo. Para las columnas de texto, puede usar una combinación de datos estáticos y dinámicos.

Con los valores dinámicos, no se sabe con certeza si una columna o tabla relacionada tienen el valor que se desea establecer. En realidad, puede establecer un número de columnas para intentar establecer el valor y colocarlos por orden usando las flechas verdes. Si la primera columna no tiene datos, pruebe la segunda columna y así sucesivamente. Si ninguna de las columnas tiene datos, puede especificar un valor predeterminado.

Configurar las condiciones de las acciones de flujo de trabajo en tiempo real

Las acciones que se aplicarán a menudo dependen de condiciones. Los procesos de flujo de trabajo en tiempo real proporcionan varias maneras de definir condiciones y crear una lógica de bifurcación para obtener los resultados deseados. Puede comprobar los valores de la fila con la que el proceso de flujo de trabajo en tiempo real se está ejecutando, las filas vinculadas a dicha fila con una relación N:1 o los valores dentro del propio proceso.

Tipo de condición Descripción
Condición de comprobación Una instrucción lógica "si <condition> entonces".

Puede comprobar los valores actuales de la fila en la que se está ejecutando el flujo de trabajo en tiempo real, cualquiera de las filas vinculadas a esa fila en una relación N:1 o cualquier fila creada por pasos anteriores. En función de estos valores, puede definir pasos adicionales cuando la condición sea verdadera.

En la instrucción "si <condition> entonces", se pueden usar los operadores siguientes: Es igual a, No es igual a, Contiene datos, No contiene datos, Pertenece a y No pertenece a.

Nota: Bajo y No menor que son operadores jerárquicos. Solo se pueden usar en las tablas que tienen una relación jerárquica definida. Si está intentando utilizar estos operadores en las tablas que no tienen definida la relación jerárquica, verá el mensaje de error: "Está usando un operador jerárquico en una tabla que no tiene ninguna relación de jerarquía definida. Convierta la tabla en jerárquica (marcando una relación como jerárquica) o use un operador diferente".

Para obtener más información sobre las relaciones jerárquicas, vaya a Definir y consultar datos relacionados jerárquicamente. Un captura de pantalla después de la tabla es un ejemplo de definición del proceso de flujo de trabajo en tiempo real que usa los operadores jerárquicos Pertenece a y No pertenece a .
Rama condicional Una instrucción lógica de tipo "else-if-then", el editor utiliza el texto "De lo contrario, si <condition> entonces:"

Seleccione una condición de comprobación que haya definido anteriormente y podrá agregar una rama condicional para definir pasos adicionales cuando la condición de comprobación devuelva false.
Acción predeterminada Instrucción lógica "de lo contrario". El editor usa el texto “De lo contrario:”

Seleccione una condición de comprobación, rama condicional, condición de espera o rama de espera paralela que haya definido anteriormente y podrá usar una acción predeterminada para definir los pasos para todos los casos que no cumplan los criterios definidos en elementos de condición o de rama.
Condición de espera Los flujos de trabajo en tiempo real no pueden usar condiciones de espera. Sin embargo, las condiciones de espera se pueden usar con flujos de trabajo en segundo plano. Más información: Establecer condiciones para las acciones del flujo de trabajo en segundo plano
Rama de espera paralela Define una condición de espera alternativa para un flujo de trabajo en tiempo real con el conjunto correspondiente de pasos adicionales que solo se realizan cuando se cumple el criterio inicial. Puede usar ramas de espera paralelas para crear límites de tiempo en la lógica de flujo de trabajo en tiempo real. Ayudan a evitar que el flujo de trabajo en tiempo real espere indefinidamente hasta que se hayan cumplido los criterios definidos en una condición de espera.
Paso personalizado Los desarrolladores pueden crear pasos de flujo de trabajo en tiempo real personalizados que definen condiciones. No hay pasos personalizados disponibles de manera predeterminada.

La captura de pantalla siguiente contiene un ejemplo de definición del proceso de flujo de trabajo con los operadores jerárquicos Bajo y No menor que. En nuestro ejemplo, aplicamos dos descuentos diferentes a dos grupos de cuentas. En Agregar paso, seleccionamos Condición de comprobación para especificar la condición if-then que contiene los operadores Bajo o No menor que. La primera condición if-then se aplica a todas las cuentas que están Bajo la cuenta Alpine Ski House. Estas cuentas reciben un descuento del 10% en productos y servicios comprados. La segunda condición if-then se aplica a todas las cuentas que son No menor que la cuenta Alpine Ski House y reciben un descuento del 5%. A continuación, seleccionamos Actualizar fila para definir la acción que se deben realizar basándose en la condición.

Proceso de flujo de trabajo con operadores Bajo o No menor que.

Iniciar flujos de trabajo en tiempo real antes o después del cambio de estado

Cuando se configura Opciones para procesos automáticos para flujos de trabajo en tiempo real, las opciones Iniciar al para el evento de cambios de estado permiten seleccionar Después o Antes para cuando cambie el estado. La opción predeterminada es Después.

Al seleccionar Antes está diciendo que desea que la lógica del flujo de trabajo en tiempo real se aplique antes de que se guarden los datos que cambian el estado. Esto proporciona la capacidad de comprobar los valores antes de que otra lógica se aplique después de la operación e impide que se ejecute otra lógica. Por ejemplo, puede tener lógica adicional en una acción de complemento o de flujo de trabajo personalizado en tiempo real que podría emprender acciones en otro sistema. Al detener el procesamiento posterior puede evitar los casos en que los sistemas externos se vean afectados. La aplicación de flujos de trabajo en tiempo real antes de este evento también significa que otras acciones de flujo de trabajo en tiempo real o complemento que haya podido guardar datos no necesitan "revertirse" cuando la operación se cancela.

Acción Iniciar al Explicación
Se crea la fila Después Solo Después está disponible. La fila no tendrá un identificador único hasta después de la etapa de MainOperation interna, por lo que no puede ocurrir antes de que se cree la fila.
Cambios de estado de fila Antes
Después
Corresponde a una operación de actualización que ofrece la capacidad de aplicar la lógica del flujo de trabajo en tiempo real, ya sea antes o después de los cambios de estado. Antes corresponde a la fase de preoperación. Después corresponde a la fase de postoperación.
Fila asignada Antes
Después
Corresponde a una operación de actualización que ofrece la capacidad de aplicar la lógica del flujo de trabajo en tiempo real, ya sea antes o después de los cambios de estado. Antes corresponde a la fase de preoperación. Después corresponde a la fase de postoperación.
Cambio de columnas de fila Antes
Después
Corresponde a una operación de actualización que ofrece la capacidad de aplicar la lógica del flujo de trabajo en tiempo real, ya sea antes o después de los cambios de estado. Antes corresponde a la fase de preoperación. Después corresponde a la fase de postoperación.
Fila eliminada Antes Solo Antes está disponible. La eliminación de filas corresponde a la etapa de preoperación. Una vez que se produce MainOperation, la fila se elimina y no se pueden producir más cambios de estado.

Para obtener más información sobre las etapas de preoperación, operación principal y posoperación, consulte Canalización de ejecución de eventos.

Usar flujos de trabajo en tiempo real

Puede configurar flujos de trabajo en tiempo real pero debe usarlos con cuidado. Los flujos de trabajo en segundo plano se recomiendan normalmente porque permiten que el sistema los aplique cuando los recursos están disponibles en el servidor. Esto ayuda a allanar el trabajo que el servidor debe realizar y ayuda a mantener el máximo rendimiento para todas aquellas personas que usen el sistema. La desventaja es que las acciones definidas por flujos de trabajo en segundo plano no son inmediatas. No puede predecir cuando se aplicarán, pero tardarán normalmente unos minutos. Para la mayoría de los procesos de automatización de negocios, esto resulta adecuado porque las personas que usan el sistema no tienen por qué saber que el proceso se está ejecutando.

Use flujos de trabajo en tiempo real cuando un proceso de negocio requiera que alguien vea de inmediato los resultados del proceso o si desea poder cancelar una operación. Por ejemplo, podría querer establecer ciertos valores predeterminados para una fila la primera vez que se guarda o desear asegurarse de que algunas filas no se eliminen.

Convertir entre los flujos de trabajo en tiempo real y en segundo plano

Para cambiar un flujo de trabajo en tiempo real a un flujo de trabajo en segundo plano, elija Convertir en flujo de trabajo en segundo plano en la barra de herramientas.

Para cambiar un flujo de trabajo en segundo plano a un flujo de trabajo en tiempo real, elija Convertir en flujo de trabajo en tiempo real en la barra de herramientas. Si el flujo de trabajo en segundo plano usa condición de espera se convertirá en no válido y no podrá activarlo hasta que quite la condición de espera.

Iniciar flujos de trabajo en tiempo real antes o después del cambio de estado

Cuando se configura Opciones para procesos automáticos para flujos de trabajo en tiempo real, las opciones Iniciar al para el evento de cambios de estado permiten seleccionar Después o Antes para cuando cambie el estado. La opción predeterminada es Después.

Al seleccionar Antes, está diciendo que desea que la lógica del flujo de trabajo en tiempo real se aplique antes de que se guarden los datos que cambian el estado. Esto proporciona la capacidad de comprobar los valores antes de que otra lógica se aplique después de la operación e impide que se ejecute otra lógica. Por ejemplo, podría tener lógica adicional en una acción de complemento o de flujo de trabajo personalizado en tiempo real que podría emprender acciones en otro sistema. Al detener el procesamiento posterior puede evitar los casos en que los sistemas externos se vean afectados. La aplicación de flujos de trabajo en tiempo real antes de este evento también significa que otras acciones de flujo de trabajo en tiempo real o complemento que haya podido guardar datos no necesitan "revertirse" cuando la operación se cancela.

Usar la acción Detener flujo de trabajo con flujos de trabajo en tiempo real

Cuando se aplica una acción Detener flujo de trabajo en un flujo de trabajo en tiempo real, existe la opción de especificar una condición de estado, que puede ser Correcto o Cancelado. Cuando establece el estado en Cancelado, impide la operación. Un mensaje de error que contiene el texto del mensaje de estado de la acción de detención se muestra el usuario con el título Error de proceso empresarial.

Pasos siguientes

Supervisar y administrar procesos de flujo de trabajo en tiempo real
Prácticas recomendadas para los procesos de flujo de trabajo en tiempo real

Nota

¿Puede indicarnos sus preferencias de idioma de documentación? Realice una breve encuesta. (tenga en cuenta que esta encuesta está en inglés)

La encuesta durará unos siete minutos. No se recopilan datos personales (declaración de privacidad).