(function executeRule(current, previous /*null when async*/ ) {
try {
if (current.u_rca.nil() && current.u_rca_included) {
current.u_rca_included = false;
} else if (!current.u_rca.nil() && !current.u_rca_included) {
current.u_rca_included = true;
}
} catch (error) {
gs.error("A runtime error ocurred: " + error);
}
})(current, previous);
Explicacion de la regla de negocio:
Ejecución de la función: La función se ejecuta con los registros
current
yprevious
como parámetros.
En términos más simples, el código funciona de la siguiente manera:
- La función recibe dos registros como parámetros:
current
yprevious
. - El registro
current
contiene los valores actuales de los camposu_rca
yu_rca_included
. - El registro
previous
contiene los valores anteriores de los camposu_rca
yu_rca_included
. - La función verifica los valores actuales de los campos
u_rca
yu_rca_included
. - Si
u_rca
esnil
yu_rca_included
es verdadero, entonces la función estableceu_rca_included
en falso. - Si
u_rca
no esnil
yu_rca_included
es falso, entonces la función estableceu_rca_included
en verdadero. - La función finaliza.