Reglas sintácticas para expresiones booleanas 

Al introducir una expresión de lógica booleana en el componente de aplicación FI-SL, deben seguirse determinadas reglas sintácticas. Esta sección explica las reglas sintácticas a seguir para crear una expresión para el componente de aplicación FI-SL.

Las reglas sintácticas que se describen en esta sección son válidas para expresiones de validación y sustitución que se introducen directamente y para expresiones que se introducen utilizando el editor de fórmulas en el release 4.0A. No son válidas para expresiones que se introducen en las reglas directamente.

A la hora de introducir una expresión en FI-SL, utilice las siguientes reglas sintácticas:

  1. Defina el nombre de tabla y el nombre de campo a utilizar en la expresión. El nombre de campo es la dimensión que contiene los valores a los que el usuario se remite en la expresión.
  2. Para introducir el nombre de tabla y el nombre de campo debe utilizarse el siguiente formato:

    nombre_tabla-nombre_campo

    El nombre de tabla y el nombre de campo deben separarse con un guión.

    GLT1-RACCT

    CCSS-KSTAR

    El sistema verifica si uno o varios valores se encuentran en la dimensión introducida enfrente del valor. Si el valor se encuentra en la dimensión, la expresión es TRUE; si el valor no se encuentra en la dimensión, la expresión es FALSE.

    También se puede indicar al sistema que verifique sólo parte de un valor del campo. Para realizar esta clase de indicación, introduzca lo siguiente:

    · El nombre de tabla y el nombre de campo ( nombre_tabla-nombre_campo)

    · Un espacio en blanco

    Es importante insertar un espacio en blanco antes de los primeros dos puntos.

    · Dos puntos ( :)

    · Los dígitos que se desee que se verifiquen en el nombre de campo

    · Dos puntos ( :)

    1 siempre representa el primer dígito del campo. (El número que se introduce no representa un valor, sino la posición de un valor dentro del registro de campos.)

    · GLT1-RACCT :1-3:

    El sistema verifica sólo los tres primeros dígitos del campo Cuenta para determinar si una condición es true.

    · GLT1-RACCT :5-7:

    El sistema verifica los dígitos 5, 6 y 7 del campo Cuenta para determinar si una condición es TRUE.

    · GLT1-RACCT :2-:

    El sistema verifica del dígito 2 hasta el final del campo Cuenta para determinar si una condición es TRUE.

  3. Separe los elementos de la expresión dejando al menos un espacio.
  4. Utilice comillas simples ( ' ) para delimitar valores constantes.
  5. GLT1-RACCT = '500000'
    COBL-BLART = 'SA'

    Para obtener más información sobre los tipos de valores a los que es posible remitirse en una expresión, véase Clases de expresiones FI-SL.

  6. Introduzca los nombres de set como se muestra a continuación, en función del tipo de set que introduzca:
  7. Para los sets básicos y unidimensionales, introduzca el set con el siguiente formato:

    a) El nombre de tabla y el nombre de campo del set ( nombre_tabla-nombre_campo )

    b) La palabra clave IN

    c) El nombre de set

    GLT1-RACCT EN CUENTAS

    Para los sets multidimensionales, introduzca el set con el siguiente formato:

    a) La palabra clave IN

    b) El nombre de set

    EN ACCTSCNTRS

  8. Si utiliza una regla en la expresión, introduzca sólo el nombre de la regla (sin colocar el símbolo & delante).
  9. Utilice comillas dobles ( " ) para delimitar cualquier nota existente en la expresión.
  10. El sistema no procesa el texto entre comillas dobles; éste sólo se utiliza para describir la expresión.

    Cuando se introduzca la expresión directamente o se utilice el modo de experto del editor de fórmulas, debe introducirse el texto de la nota antes de introducir la expresión.

    No se pueden utilizar espacios en blanco en el texto de la nota cuando se introduce el texto directamente en la expresión. El texto no puede contener más de 58 caracteres. Si se desea introducir una nota cuyo texto es superior a 58 caracteres, deben introducirse dos sets de notas y separar cada uno mediante un espacio en blanco.

  11. Utilice los operadores de lógica booleana NOT, AND, OR, NAND, NOR, - ® y « .
  12. El operador NOT goza de la máxima prioridad y es el primero de la expresión en procesarse, excepto cuando se utilizan paréntesis dentro de la expresión.

    NOT (A OR B)

    En este ejemplo, la expresión incluida dentro del paréntesis se procesa primero. Los otros operadores se procesan en el orden en que aparecen en la expresión.

    Para obtener más información, véase Utilización de operadores booleanos en tablas verdadero-falso.

  13. Utilice los operadores matemáticos estándar de la siguiente tabla.
  14. Operador

    Definición

    <

    Menor que

    >

    Mayor que

    <>

    Distinto a

    =

    Igual a

    <=

    Menor que o igual a

    >=

    Mayor que o igual a

     

  15. Si introduce un exit de usuario en una expresión:
  16. a) Introduzca el carácter u (para un exit de usuario propio del cliente) o s (para un exit de usuario estándar SAP).

    b) Introduzca el exit de usuario (tres dígitos) (por ejemplo, U123) .

    El nombre de pool de formulario que contiene exits de usuario de la tabla de exits dependientes del mandante (tabla T80D) del Customizing de Ledgers especiales se configura seleccionando Parametrizaciones básicas ® Exits de usuario ® Actualizar exits de usuario dependientes del mandante. El nombre del pool de formulario debe ajustarse a la convención de nombres del deudor (empezando con la letra Z ) para evitar así sobrescribir cuando se instale la próxima versión del Sistema R/3 de SAP.

  17. Si utiliza un proceso matemático en una expresión:
  18. a) Utilice los operadores matemáticos de la tabla siguiente.

    Símbolo

    Operación

    +

    Suma

    -

    Resta

    *

    Multiplicación

    /

    División

     

    b) Deben utilizarse paréntesis para definir el orden en que las expresiones matemáticas serán evaluadas.

    Si se está creando una validación o una sustitución de matriz, también se pueden utilizar los operadores de la siguiente tabla a la hora de validar o sustituir partidas individuales en un documento.

    Se debe introducirse un espacio en blanco después de la palabra clave e inmediatamente antes de abrir el paréntesis.

    Operador

    Descripción

    SUM ( )

    Total del documento

    AVG ( )

    Suma media del documento

    MAX ( )

    Valor máximo de todas las líneas del documento

    MIN ( )

    Valor mínimo de todas las líneas del documento

    GROUP_BY

    Compara un grupo de totales con otro.

     

    SUM ( BSEG-DMBTR ) < 50000

    En este ejemplo, para un documento concreto, el usuario no puede contabilizar un importe superior a 50.000 en moneda local.

    AVG ( TABLA-CAMPO1 ) GROUP_BY TABLA-RYEAR TABLA-RVERS = AVG ( TABLA-CAMPO2 ) GROUP_BY TABLA-RYEAR TABLA-RVERS

    En este ejemplo, la expresión es verdadera si el valor medio de cada combinación año/versión para FIELD1 es la misma que el valor medio de la combinación año/versión para FIELD2.

    También se pueden utilizar reglas dentro de una expresión que utilice procesos matemáticos.

    SUM ( BSEG-DMBTR ) WHERE RULE_1 < SUM ( BSEG-DMBTR ) WHERE RULE_2

    En este ejemplo el sistema calcula el total de moneda local (DMBTR) de las posiciones de documento en las que la RULE1 es verdadera. A continuación el sistema calcula el total de moneda local de las posiciones de documento en las que la RULE2 es verdadera. La expresión es TRUE si el primer total es inferior al segundo.

  19. Para introducir una expresión como verdadera o falsa, se puede introducir TRUE o FALSE.
  20. Para introducir tipos de moneda en una expresión booleana, ponga el indicador de moneda entre paréntesis.

Cuando el importe de moneda consta de más de dos decimales o de menos debe especificarse el indicador de moneda en la expresión booleana.

Sólo se pueden introducir tipos de moneda en una expresión booleana cuando se introduce la expresión directamente o utilizando el modo de experto del editor de fórmulas.

BSEG-DMBTR < ‘10000(BEF)’

Véase también:

Ejemplo de expresiones booleanas