Las acciones son lo que una regla hace cuando su condición se cumple, o cuando no se cumple, si tiene parte SINO. El editor de reglas ofrece varias, y elegir la correcta es la mitad del diseño. En Employee Central, la academia menciona estas: Establecer (Set), Mostrar mensaje (Raise Message), Crear (Create), Eliminar (Delete), Ejecutar (Execute) y Agregar a (Add to).
Establecer es la más usada. Le asigna un valor a un campo, o a una propiedad de un campo si la regla usa un objeto base de modelo. Con ella se completan valores por defecto, como el centro de costos en AR_CC por departamento o la modalidad en AR_Modalidad por defecto. Con ella se fija el motivo de evento en AR_Derivar motivo de evento, y con ella se establece la configuración del flujo, wfConfig, en AR_Disparar flujo de promoción. También se usa para cambiar la obligatoriedad o la visibilidad de un campo, con valores como verdadero o falso para obligatorio, y ninguna, editar o ver para la visibilidad.
Mostrar mensaje es la acción de las validaciones. Muestra una definición de mensaje creada en Gestionar datos, con una severidad: error, advertencia o información. El error bloquea el guardado; la advertencia avisa y deja seguir; la información solo informa. En el caso del curso, AR_Validar horas semanales usa esta acción para mostrar AR_HORAS_MAX con severidad error cuando alguien carga más de 48 horas semanales en AR01.
Crear genera un registro hijo, como un componente de pago recurrente o no recurrente en la compensación. Es la acción que se usaría para un pedido como el del ejercicio de la L4: crear el componente AR_ZONA cuando alguien pasa a una ubicación de la Patagonia. Cuando el registro que se crea pertenece a otra entidad, la regla suele necesitar el escenario de reglas entre entidades. Eliminar hace lo contrario: borra un registro hijo, por ejemplo un componente de pago que ya no corresponde. Las dos acciones conviene usarlas con cuidado, porque cambian datos de compensación sin que el usuario lo haga a mano.
Ejecutar y Agregar a son menos frecuentes en los proyectos de Employee Central Core. Ejecutar dispara funciones o procesos definidos en la propia regla, y Agregar a suma un elemento a una colección. Si aparecen en una regla heredada, conviene entender qué hacen antes de tocar la regla, porque suelen resolver casos específicos del cliente.
Hay dos detalles que la academia marca y que vale la pena recordar. El primero es que, cuando una rama tiene varias acciones, se ejecutan en orden: si una acción depende del valor que fija otra, la que fija va primero. El segundo es que los valores de texto distinguen mayúsculas de minúsculas, así que un código mal escrito en una acción Establecer no da error, pero tampoco funciona.
Como criterio general, conviene que cada regla tenga un propósito claro y pocas acciones. Una regla que establece el motivo, dispara el flujo y crea un componente de pago es difícil de probar y de cambiar. La nota 3340690, que vemos en la L3, lo recomienda en forma explícita para el motivo y el flujo: van en reglas separadas.
