Tipos de expresiones FI-SL 

Por medio de la lógica booleana, se pueden crear diferentes tipos de expresiones en el componente de aplicación FI-SL. Esta expresión es la unidad más pequeña de una expresión FI-SL.

Se pueden crear expresiones sencillas que utilicen sólo uno de los tipos de expresión, o expresiones más complejas formadas por combinaciones de tipos de expresiones. Para más información sobre el uso de estas expresiones, véase Reglas sintácticas para expresiones booleanas.

Valores constantes

En este tipo de expresión, Ud. se remite a un valor o valores constantes.

COBL-RACCT = ’50000100’

En este ejemplo, la cuenta debe ser 50000100.

Nombres de set

En este tipo de expresiones, se remite a un nombre de set básico, unidimensional o multidimensional que contiene los valores que se quieren utilizar en la expresión.

A partir del Release 4.0A, los sets ya no dependen de la tabla. El nombre de set y la tabla ya no son los únicos campos claves que identifican el set. Los sets son identificados exclusivamente por el nombre de set.

Por lo tanto, el formato utilizado para introducir sets en expresiones se ha modificado, en función de si se utilizan las nuevas reglas sintácticas del Release 4.0 o las reglas sintácticas existentes en releases anteriores a éste. Sólo deben utilizarse las reglas sintácticas antiguas para introducir directamente una expresión en una regla (es decir, sin utilizar el Formula Builder).

Para más información sobre el formato para introducir sets utilizando las reglas sintácticas nuevas, véase el paso cuatro en Reglas sintácticas para expresiones booleanas.

Para más información sobre el formato para introducir sets utilizando las reglas sintácticas antiguas, véase el paso cinco en Reglas sintácticas antiguas para expresiones booleanas.

Si se introduce un nombre de set que no es único (es decir, en el sistema existe más de un set que utiliza este nombre), el sistema visualiza una ventana de diálogo mediante la cual se puede seleccionar el set que se desea utilizar.

Los sets creados en los releases 3.0 y 3.1 son convertidos automáticamente a las nuevas estructuras de set del Release 4.0. No es necesario crear de nuevo o modificar los sets existentes. Los nuevos sets son totalmente compatibles con el Release 4.0 y aún se pueden utilizar en reglas y expresiones de validación y sustitución.

Para mejorar el rendimiento del sistema, es preferible usar sets básicos o unidimensionales, en lugar de largas listas de expresiones booleanas o de exits de usuario.

Puede remitirse a un set básico o unidimensional de una expresión incluso si el set ha sido creado para una tabla que no posee la clase booleana de la expresión. Esta función no puede utilizarse con sets multidimensionales.

En el siguiente ejemplo, el set básico ACCOUNTS se ha creado utilizando la tabla BSEG, pero el campo HKONT se refiere a la tabla COBL. La expresión es verdadera si la cuenta se encuentra en el set ACCOUNTS.

COBL-HKONT EN CUENTAS

Éste es el único formato que puede utilizarse en los sets básicos y unidimensionales con las nuevas reglas sintácticas.

<COBL> $HKONT EN <BSEG> CUENTAS

Nombre de tabla opcional si se utilizan las reglas sintácticas antiguas.

También es posible buscar valores parciales en un set. Si el valor está en el set, la expresión es verdadera.

Si las expresiones y reglas aún están almacenadas en la tabla T890, no es posible buscar valores parciales en un set ni comparar campos de set utilizados en tablas diferentes. Es recomendable utilizar el informe RGUGBR10 para cambiar a reglas generadas. Para más información, véase Uso de informes de gestor de reglas.

Para mejorar el rendimiento del sistema, es preferible utilizar sets multidimensionales cuando se desee que el sistema verifique que un movimiento contiene dos o más valores con dimensiones diferentes (por ejemplo, un centro de coste y una cuenta específicos). Es más efectivo utilizar un set multidimensional que usar dos sets básicos o unidimensionales conectados con el operador AND.

En la siguiente expresión se utiliza el set multidimensional ACCTSCNTRS que contiene la cuenta 5000010 (dimensión Cuenta) y el centro de coste 100 (dimensión Centro de coste).

EN ACCTSCNTRS

Uso de reglas sintácticas nuevas.

EN <GLT1> ACCTSCNTRS

Nombre de tabla opcional si se utilizan las reglas sintácticas antiguas.

 

Para obtener más información sobre la creación de sets, véase Creación de sets.

Expresiones TRUE o FALSE

Este tipo de expresión simplemente establece si una expresión es TRUE (VERDADERA) o FALSE (FALSA). Es posible declarar directamente una expresión como TRUE o FALSE (por ejemplo, como sustituta de un nombre de set que vaya a insertarse en otro momento).

Al introducir una expresión como condición para seleccionar ledgers, no es recomendable utilizar expresiones TRUE o FALSE.

Exits de usuario

También es posible remitirse a un exit de usuario dentro de una expresión. El exit de usuario accede a un programa de fondo, normalmente más detallado que la expresión, que permite un tratamiento más extensivo de los datos. Para más información, véase Exits de usuario en validaciones/sustituciones/reglas.

No es posible definir exits de usuario en las reglas almacenadas en la tabla T890. Es recomendable utilizar el report RGUGBR10 para convertir las reglas de la tabla T890 en reglas generadas. Para más información, véase Uso de informes de gestor de reglas.

Comparaciones de campo

Asimismo, en una expresión pueden compararse los valores de los campos.

COBL-BUDAT <> <SY>-DATUM

En este ejemplo, cuando la fecha del campo BUDAT no es la misma que la del campo DATUM, la expresión es TRUE.

En las comparaciones de campos, también se puede solicitar al sistema que verifique o compare sólo parte de un campo. Para más información, véase el paso uno en Reglas sintácticas para expresiones booleanas.

También es posible comparar modelos de textos en las expresiones gracias a la palabra clave LIKE (COMO).

COBL-KOSTL LIKE ’*1*1’

En este ejemplo, el símbolo * representa cualquier combinación de caracteres. El sistema busca todos los centros de coste (campo KOSTL) donde se utiliza el valor 1 después de la primera y segunda combinación de caracteres (por ejemplo, 161, 121 y 2101).

En la búsqueda de modelos de texto, también se puede utilizar el signo + para representar un sólo carácter.

Si las expresiones y reglas aún se almacenan en la tabla T890, no es posible utilizar modelos de texto en las expresiones. Es recomendable utilizar el report RGUGBR10 para convertir las reglas de la tabla T890 en reglas generadas. Para más información, véase Uso de informes de gestor de reglas.

Proceso matemático

Gracias a un proceso matemático, se pueden evaluar y comparar dos expresiones matemáticas. El resultado de las comparaciones es verdadero o falso.

AVG ( BSEG-DMBTR ) < 100000

En este ejemplo, el sistema verifica que el importe medio de la moneda local es inferior a 100000.

Si las expresiones y reglas todavía están almacenadas en la tabla T890, no es posible utilizar procesos matemáticos en las expresiones. Es recomendable utilizar el report RGUGBR10 para convertir las reglas de la tabla T890 en reglas generadas. Para más información, véase Uso de informes de gestor de reglas.