PROGRAMACIÓN DE DIÁLOGO

14.1. INTRODUCCIÓN

14.2. SENTENCIAS DE LÓGICA DE PROCESO DE DYNPROS



14.1. INTRODUCCIÓN: 14.2. SENTENCIAS DE LÓGICA DE PROCESO DE DYNPROS:

FIELD campo[ VALUES ( lista_valores ) ] [ MODULE nombre_módulo] [ ON INPUT ][ ON REQUEST ].

Chequea que el valor del campo (de una dynpro) sea uno de los especificados en VALUES (van separados por comas. Los paréntesis son obligatorios). Con el parámetro MODULE se pueden enviar mensajes de error al usuario, y se procesa el módulo especificado.
Ejemplo:


FIELD sbook-carrid VALUES ('AA', 'LH', 'VS').
              

CHAIN.ENDCHAIN.

Puede usarse en combinación con los parámetros ON CHAIN-INPUT y ON CHAIN-REQUEST de la sentencia MODULE.
Ejemplo:


CHAIN.
  FIELD campo1.
  FIELD campo2.
  
  MODULE modulo1.
  MODULE modulo2.
ENDCHAIN.
              

Un módulo se compone de las sentencias declarativas de un proceso.
Parámetros:

  • AT EXIT-COMMAND: Necesita código tipo E.
  • FIELDMODULEON INPUT: Se ejecuta sólo cuando el usuario introduzca un valor. Con ello en un PAI se evitan ejecuciones innecesarias del módulo especificado.
  • FIELDMODULEON * INPUT: Se lanza cuando el usuario escribe un asterisco.
  • FIELDMODULEON REQUEST: Se ejecuta si el usuario pulsa el botón de valores posibles (matchcode) en el campo especificado en FIELD.
  • OUTPUT: Indica que ése es el módulo que se lanza en el PBO.
  • INPUT: Indica que ése es el módulo que se lanza en el PAI. No confundir con ON INPUT.

Ejemplo: Se ejecutará el módulo ‘nombre1’ sólo cuando cambia el valor de ‘a’, ‘b’ o ‘c’; mientras que el módulo ‘nombre2’ se ejecuta siempre.


CHAIN.
  FIELD: a,b,c MODULE nombre1 ON CHAIN-INPUT.
  MODULE nombre2.
ENDCHAIN.