Rational Developer para System z, Versión 7.6

Paso 4.3: invocar una aplicación no de terminal desde el flujo de nivel superior

En este paso se explica cómo añadir al flujo de nivel superior un nodo no de terminal Invoke que invoca la aplicación DF0XCMN.

DF0XCMN es un componente de la aplicación de catálogo de ejemplo de CICS y se invoca para efectuar un pedido simulado. Para crear un nodo no de terminal Invoke en el flujo de nivel superior que invoca DF0XCMN, siga estos pasos:
  1. Cree una operación denominada PlaceOrder que contenga la información necesaria para invocar DF0XCMN (consulte el subtema Crear la operación no de terminal PlaceOrder).
  2. Utilice la nueva operación PlaceOrder y el nodo Invoke normal Step1 para crear un nodo no de terminal Invoke que invoque DF0XCMN (consulte el subtema Modificar el nodo Invoke Step1 para invocar PlaceOrder).

Crear la operación no de terminal PlaceOrder

En este subtema utilizará el asistente Importar archivos COBOL para crear una operación no de terminal denominada PlaceOrder que contiene la información necesaria para invocar la aplicación no de terminal DFH0XCMN.

Una operación es una entidad que contiene la información necesaria para invocar un flujo, una aplicación de terminal o una aplicación no de terminal. Una operación no de terminal es el tipo de operación que contiene la información necesaria para invocar una aplicación no de terminal. Una aplicación no de terminal es una aplicación de host que puede invocarse mediante una interfaz llamada-retorno y que no muestra pantallas de aplicación que precisen entrada del usuario.

Los archivos fuente COBOL para DFH0XCMN pueden obtenerse del administrador del host (consulte la sección Entorno, materiales y asistencia necesarios). Necesitará los archivos siguientes:
  • DFH0XCMN.CBL
  • DFH0XCP1.CPY
  • DFH0XCP2.CPY

Descargue estos archivos del host y cópielos en un directorio local de la estación de trabajo.

Para crear la operación no de terminal:
Nota: Estas instrucciones presuponen que el archivo COBOL DFH0XCMN.CBL y sus libros de copia DFH0XCP1.CPY y DFH0XCP2.CPY están ubicados en el sistema de archivos de la estación de trabajo y en el mismo directorio.
  1. Añada la vía de acceso del directorio a la pestaña SYSLIB en la página de preferencias de Importador > COBOL del entorno de trabajo.

    1. En el menú principal del entorno de trabajo, pulse Ventana > Preferencias. Se abrirá la ventana Preferencias.

    2. En la ventana Preferencias:
      1. En el panel izquierdo, pulse Importador > COBOL.
      2. En el panel derecho:
        1. Pulse la pestaña SYSLIB.
        2. En la pestaña SYSLIB:
          1. Pulse Añadir.
          2. Vaya hasta el directorio donde están ubicados el archivo COBOL DFH0XCMN.CBL y sus libros de copia DFH0XCP1.CPY y DFH0XCP2.CPY.
          3. Pulse Aceptar.
        La ubicación que ha seleccionado se visualiza en la lista Ubicación.

    3. Pulse Aceptar. Se cerrará la ventana Preferencias.

  2. Inicie el asistente Importar archivos COBOL:

    1. En el Explorador de proyectos EST pulse con el botón derecho del ratón el subproyecto CatalogSample.Nonterminal.

    2. Pulse Importar > COBOL. Se abrirá el asistente Importar archivos COBOL.

  3. En la primer página del asistente Importar archivos COBOL:

    1. Verifique que en la lista ProjectName esté seleccionado el subproyecto CatalogSample.Nonterminal.

    2. Seleccione los archivos fuente para la aplicación no de terminal:
      1. Pulse Sistema de archivos. Se abrirá el asistente del sistema de archivos.
      2. En el asistente del sistema de archivos, navegue hasta el subdirectorio que contiene los archivos origen COBOL.
        1. Se visualizará el archivo fuente DFHOXCMN.CBL.
          Importante: Los dos archivos de libro de copia DFH0XCP1.CPY y DFH0XCP2.CPY deben estar presentes también en el mismo directorio (aunque no aparezcan en la ventana Sistema de archivos) porque se importarán por referencia cuando se importe DFHOXCMN.CBL.
        2. Pulse DFH0XCMN.CBL.
        3. Pulse Abrir. Se cerrará el asistente del sistema de archivos.
      3. Verifique si en la lista Archivos COBOL a importar se lista ahora la vía de acceso completa del directo para DFH0XCMN.CBL.
        Importante: Aunque los dos archivos de libro de copia DFH0XCP1.CPY y DFH0XCP2.CPY no aparezcan aquí en la lista de archivos COBOL a importar, se importarán cuando se importe el archivo origen COBOL DFH0XCMN.CBL, si se encuentran en el mismo directorio que DFH0XCMN.CBL.

    3. Pulse Siguiente.

  4. En la segunda página del asistente Importar archivos COBOL:

    1. Compruebe los valores siguientes:
      1. Se ha seleccionado el recuadro de selección Crear definiciones de programa COBOL.
      2. Se ha seleccionado el botón de selección Archivo nuevo.
      3. El campo de entrada que hay junto al botón de selección contiene el nombre de archivo predeterminado new_programs.
        Nota: Este es el nombre del archivo WSDL en que se almacenará la operación nueva.
      4. El programa dfh0xcmn se visualiza en la lista Definiciones de programa.
        Nota: Este es el nombre del programa principal del archivo fuente COBOL que ha importado.

    2. En el grupo Propiedades de programa seleccionado, en el campo de entrada Programa:
      1. Borra el nombre de programa dfh0xcmn.
      2. Escriba un nuevo nombre de programa PlaceOrder.

    3. En la lista Tipo de comunicación, seleccione LINK con COMMAREA si aún no está seleccionado.

    4. Especifique un mensaje de entrada para esta operación:
      1. A la derecha de Datos de entrada, pulse el botón etiquetado Seleccionar. Se abrirá la ventana Seleccionar un elemento de lenguaje que mostrará las estructuras de datos contenidas en el archivo fuente COBOL y sus dos libros de copia.
      2. En la ventana Seleccionar un elemento de lenguaje:
        1. Pulse la estructura DFH0XCMN_DFHCOMMAREA.

          Nota acerca de DFH0XCMN_DFHCOMMAREA: El nombre de la estructura en el fuente COBOL es DFHCOMMAREA. Sin embargo, como DFHCOMMAREA es una palabra reservada en CICS, el asistente cambia automáticamente el nombre de la estructura a DFH0XCMN_DFHCOMMAREA (consulte la sección Nombres de las estructuras de datos importadas).

        2. Pulse Aceptar.

    5. Especifique un mensaje de salida para esta operación siguiendo el mismo procedimiento que se siguió para especificar un mensaje de entrada:
      1. A la derecha de Datos de salida, pulse el botón etiquetado Seleccionar. Se abrirá la ventana Seleccionar un elemento de lenguaje.
      2. En la ventana Seleccionar un elemento de lenguaje:
        1. Pulse DFH0XCMN_DFHCOMMAREA.

          Consulte la Nota sobre DFH0XCMN_DFHCOMMAREA.

        2. Pulse Aceptar.

    6. Observe que puede pulsar el botón Especificar propiedades de generación y especificar propiedades de generación predeterminadas para esta operación. Sin embargo, en esta guía de aprendizaje no especificará aquí las propiedades de generación predeterminadas.

    7. Pulse Finalizar. El asistente crea un nuevo archivo de operaciones y un nuevo archivo de mensaje en el subproyecto CatalogOrder.Nonterminal:
      1. En la carpeta Operaciones, el asistente crea un nuevo archivo de operaciones denominado new_programs.wsdl y almacena la nueva operación PlaceOrder en el archivo.
      2. En la carpeta Messages, el asistente crea un nuevo archivo de mensaje dfh0xcmn.sfmxsd, y crea en él un nuevo mensaje para cada estructura de datos del código fuente importado, incluido DFH0XCMN_DFHCOMMAREA.

Modificar el nodo Invoke Step1 para invocar PlaceOrder

En este subtema convertirá el nodo Invoke normal Step1 en un nodo no de terminal Invoke que invoca la operación no de terminal PlaceOrder.

Recuerde que ha creado los nodos Invoke Step0 y Step1 como espacios reservados (consulte la sección Coloque los nodos, añada los nodos Assign y los nodos Invoke y conecte los nodos).

Un nodo Invoke normal como, por ejemplo, Step1 puede funcionar asociándolo a una operación o un flujo (consulte la sección Crear un nodo Invoke directamente a partir de una operación existente). En este subtema asociará la operación no de terminal PlaceOrder con el nodo Invoke normal Step1, para que Step1 se convierta en un nodo no de terminal Invoke que invoca la aplicación no de terminal DF0XCMN.

Para convertir Step1 en un nodo no de terminal Invoke:

  1. Abra el flujo CatalogOrder.seqflow en el editor de flujo si aún no está abierto.

  2. En el menú principal del entorno de trabajo, pulse Vista > Reducir.
  3. En el Explorador de proyectos EST, pulse CatalogSample > CatalogSample.Nonterminal > Operaciones > new_programs.wsdl > PlaceOrder.

  4. Arrastre la operación PlaceOrder al lienzo del editor de flujo y encima del nodo Step1.

    Step1 se convierte en un nodo no de terminal Invoke y se denomina como la operación que invoca, PlaceOrder.

  5. El lienzo del editor de flujo para CatalogOrder.seqflow debería parecerse a la Figura 1:

    Figura 1. CatalogOrder.seqflow
    Nodos CheckItemAvailability, Assign y Switch

  6. Cierre el editor de flujo.


Términos de uso | Comentarios

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