Las reglas entre entidades son las reglas de negocio que permiten que un cambio en una entidad del empleo modifique otra entidad. Se crean con el escenario Reglas entre entidades (Trigger Cross-Entity Rules). La academia lo describe así: la regla se dispara desde la entidad de origen y los cambios se ejecutan en la entidad de destino, de modo que puede establecer valores de campos de otra entidad.
Hacen falta porque una regla común trabaja dentro de su elemento. Una regla al guardar de la información del puesto puede cambiar campos de la información del puesto, pero no de la compensación. Si un cambio de grado tiene que ajustar el grupo de pago, que vive en la compensación, se necesita una regla entre entidades. Es el problema B del ejercicio de la L1 visto desde la solución: el colega intentaba asignar una regla de la información del puesto en la compensación, y lo que necesitaba era este escenario.
En Best Run Argentina, la regla es AR_Grupo de pago por grado. Su origen es el modelo de información del puesto. Si la entidad legal es AR01 y el grado es distinto del grado anterior, establece el grupo de pago de la compensación en el que corresponde al grado nuevo, con una rama por grado. Se asigna en jobInfo, al guardar. Con esta regla, la promoción de la L3 cambia dos entidades: la información del puesto, con el grado nuevo, y la compensación, con el grupo de pago. En la L6 se ve ejecutarse en la herramienta de diagnóstico.
El escenario tiene límites claros, que resume la Tabla 4.3. Solo se permiten cinco reglas entre entidades. Solo funcionan entre entidades del empleo: información del puesto, compensación, componentes de pago recurrentes y no recurrentes, relaciones del puesto y detalles del empleo, según la nota 2437420. La nota 3338090 indica que los detalles del empleo ya no pueden ser origen de reglas hacia la compensación, los componentes de pago o las relaciones del puesto. Y la nota 2963502 advierte que, si el cambio en el puesto viene de la compensación con el mismo motivo, el flujo de la información del puesto puede no dispararse.
Las reglas entre entidades también resuelven casos que una regla común no cubre bien. La nota 3729311 describe una regla al guardar de la compensación que calcula un componente a partir de otro y funciona al crear un registro, pero no al editar uno existente; la solución es configurarla como regla entre entidades. La nota 3238602 propone lo mismo para una regla de la información del puesto que tiene que cambiar componentes de pago recurrentes, como el componente por zona del ejercicio de la L4.
Son reglas que cambian datos de compensación sin que el usuario lo haga a mano, así que conviene diseñarlas con nómina y probarlas con cuidado: cada rama, los cambios que no tienen que disparar la regla, y la interacción con los flujos. El usuario que hace el cambio de grado puede no tener permiso para ver la compensación, y aun así la regla la modifica.
Por último, como en cualquier regla al guardar, conviene revisar el contexto: en qué situaciones tiene que correr y en cuáles no, como vemos al final de la lección.
