Rational Developer for System z, Versión 7.6.1

Atributos bidireccionales dinámicos

Puede establecer atributos bidireccionales dinámicos en los proyectos de flujo de servicios. Esta característica permite al peticionario de servicios especificar dinámicamente atributos bidireccionales de mensajes de interfaz, como parte de los datos de usuario.

El mensaje de entrada de interfaz se describe mediante la siguiente estructura:
************************************************
* Libro de copia I-F01
************************************************
      03 I-F01.
      05 IDD PIC X(6) VALUE SPACES.
      05 FUNC PIC X(4) VALUE SPACES.
      05 INATTR PIC X(25) VALUE SPACES.
      05 OUTATTR PIC X(25) VALUE SPACES.
En este ejemplo, INATTR y OUTATTR no son datos reales suministrados al servicio; son atributos bidireccionales de mensajes de recepción y respuesta. Puede añadir estos datos a una petición existente o crear una petición que incluya los atributos. Pueden utilizarse otros nombres válidos en lugar de INATTR y OUTATTR. Puede utilizar los dos atributos, uno de ellos o ninguno.
Para poder utilizar estos metadatos como base para las conversiones bidireccionales en el entorno de tiempo de ejecución, debe realizar las siguientes modificaciones durante la creación del flujo:
  • La propiedad setBidiAttributes del archivo SFMXSD debe establecerse en una de las siguientes:
    • (Mensajes de recepción) RECEIVE_MESSAGE_ATTRIBUTES
    • (Mensajes de respuesta) REPLY_MESSAGE_ATTRIBUTES
  • Cuando existen metadatos para el mensaje de recepción, debe crearse una correlación entre el campo INATTR del mensaje de recepción y el campo INATTR del mensaje BIDIMSG que se crea durante la inicialización del proyecto bidireccional.
  • Cuando existen metadatos para el mensaje de respuesta, debe crearse una correlación entre el campo OUTATTR del mensaje de recepción y el campo OUTATTR del mensaje BIDIMSG que se crea durante la inicialización del proyecto bidireccional.

Archivo de mensaje BIDIMSG

Cuando se crea un proyecto bidireccional, el archivo de mensaje BIDIMSG se crea en el subproyecto de interfaz. El archivo de mensaje incluye un mensaje con los siguientes elementos:

Los valores iniciales de INATTR y OUTATTR se basan en los valores que se especifican en la página Valores bidireccionales de la ventana Preferencias. Puede utilizar el editor de mensajes de flujo para cambiar estos valores.

Los valores de INATTR y OUTATTR se sobregraban dinámicamente, según los valores suministrados por el peticionario del servicio en los campos INATTR y OUTATTR del mensaje de recepción.

Libro de copia

En el código generado se incluye un libro de copia independiente. El libro de copia incluye las siguientes definiciones:
************************************************************
* Libro de copia BIDIMSG
************************************************************
03 BIDIMSG.
05 INATTR PIC X(25) VALUE 'VisualLTR'.
05 OUTATTR PIC X(25) VALUE 'VisualLTR'.
Si la correlación sólo se ha realizado para el mensaje de recepción, se genera el siguiente código:
MACGEN IF INATTR OF I-F01 NOT EQUAL SPACES AND LOW-VALUES THEN
MACGEN MOVE INATTR OF I-F01 TO INATTR OF BIDIMSG
MACGEN END-IF .
            CALL WS-BIDITRN-CALL USING BY REFERENCE IDD OF V-F01
                  BY VALUE LENGTH OF IDD OF V-F01
MACGEN BY CONTENT INATTR OF BIDIMSG BY VALUE LENGTH OF INATTR OF BIDIMSG
MACGEN BY CONTENT 'VISUALLTR' BY VALUE 9
MACGEN BY CONTENT '424' BY VALUE 3
                  BY REFERENCE BIDI-RESPONSE-CODE , BY REFERENCE BIDI-REASON-CODE

Términos de uso | Comentarios

Este Information Center está basado en tecnología Eclipse. (http://www.eclipse.org)