Configuración del flujo de mensajes

Configure un nodo de correlación para utilizar el procedimiento almacenado.

Antes de empezar

Complete las tareas en Creación de una definición de base de datos.

Procedimiento

  1. En el kit de herramientas de « IBM App Connect Enterprise », despliega la aplicación «Stored_Procedures» y, en la carpeta «Flows», haz doble clic en « StoredProcedures_Flow.msgflow» para abrir el flujo de mensajes.
  2. Pulse el Nodo de entrada HTTP y visualice sus propiedades básicas.
    • En el separador Básico, el Sufijo de la vía de acceso del URL está establecido en /scenario. La entrada no se puede dejar en blanco pero, debido a que utilizará las Prácticas de flujo para probar el flujo de mensajes, no se utilizará la vía de acceso.
    • En el separador Análisis de mensaje de entrada, Dominio de mensajes está establecido en XMLNSC.
  3. En el cajón Transformación, arrastre un nodo Correlación al lienzo y pulse dos veces el nodo.
  4. En la ventana "Especificar un nuevo archivo de correlación de mensajes" , pulse Siguiente.
  5. Tanto para las entradas como para las salidas del mapa, expandir completamente StoredProcedures_Lib.
    1. Para la entrada, seleccione el esquema Empleado .
    2. Para la salida, seleccione el esquema EmployeeData .
    Captura de pantalla que muestra entradas y salidas de correlación
  6. Pulse Siguientey, a continuación, Finalizar.
    Se abre la correlación.
  7. Conecte Employee a EmployeeData.
    Se crea una correlación local.
  8. Pulse Correlación local.
  9. Pulse con el botón derecho del ratón en un área en blanco del lienzo y seleccione Base de datos > Llamar a rutina de base de datos.
  10. En el editor abierto, si la base de datos CLIENTS no se visualiza, pulse Añadir base de datos y selecciónela en los proyectos de diseño de datos. A continuación, pulse Poner a disposición y, a continuación, Aceptar.
    Captura de pantalla que muestra cómo añadir un proyecto de diseño de datos
  11. En el editor abierto, expanda Procedimiento almacenadoy, a continuación, pulse DETALLESDEL empleado (2).
    Observe los puntos siguientes:
    • Los cuatro conjuntos de resultados (cursores) que están definidos en el procedimiento ahora no aparecen en la Lista de conjuntos de resultados.
    • Para cada conjunto de resultados, puede seleccionar las columnas de tabla que se han de definir en el conjunto.
    • Puede cambiar el orden de los conjuntos de resultados.
    Captura de pantalla de la rutina de seleccionar base de datos
  12. Ahora defina las columnas que devuelve ResultSet1.
    Las columnas que seleccione se corresponde con las columnas que ha declarado en los cursores del procedimiento almacenado.
    1. Pulse ResultSet1.
    2. Expanda la tabla EMPLOYEE y seleccione las columnas EMPNO, FIRSTNME, APELLIDOy WORKDEPT .
    3. En el campo Descripción , especifique Select from EMPLOYEE.
    La pantalla es como la que se muestra en esta captura de pantalla:
    Captura de pantalla que muestra las columnas que se van a devolver para resultset1
  13. Configure ResultSet2 del modo siguiente:
    • Expanda la tabla DEPARTMENT y seleccione las columnas DEPTNO y DEPTNAME.
    • En el campo Descripción , escriba Select from DEPARTMENT.
  14. Configure ResultSet3 del modo siguiente:
    • Expanda la tabla EMPPROJACT y, a continuación, seleccione la columna PROJNO.
    • En el campo Descripción , escriba Select from EMPPROJACT.
  15. Configure ResultSet4 del modo siguiente:
    • Expanda la tabla PROJECT y, a continuación, seleccione la columna PROJNAME.
    • En el campo Descripción , escriba Select from PROJECT.
  16. Pulse Aceptar.
    Ahora regresa a la correlación que contiene las subcorrelaciones Rutina de base de datos y Devolver.
  17. Conecta EMPL_NUM a Rutina de base de datos y conectar Devolver a EmployeeData, como se muestra en la siguiente figura.
    La correlación anidada de la Rutina de base de datos se ejecuta si el nodo Correlación invoca correctamente la base de datos para ejecutar el procedimiento almacenado. Utilice la correlación anidada Devolver para correlacionar la información que devuelve el procedimiento almacenado en su mensaje. Si la llamada a la base de datos falla, el nodo Mapping genera una excepción que incluye el error de base de datos devuelto.
    La imagen muestra cómo EMPL_NUM está conectado a la rutina de la base de datos, y Return está conectado a EmployeeData.
  18. Pulse Rutina de base de datosy conecte EMPL_NUM a EMPLIKENOIN (el parámetro de entrada para la rutina).
  19. Pulse la flecha amarilla para subir un nivel.
  20. Pulse la transformación Devolución para navegar a la correlación de retorno anidada y expanda los conjuntos de resultados.
    Los conjuntos de resultados contienen las columnas que ha seleccionado en los pasos 12 a 15.
  21. Realice las correlaciones siguientes.
    • DESCRIPTIONOUT -> ProcedureOutput

    • EMPNO -> EmployeeNo

    • FIRSTNME -> FirstName

    • LASTNAME -> LastName

    • DEPTNAME -> Department

    • PROJNO -> ProjectNo

    • PROJNAME -> ProjectName

    Cuando termine, la pantalla será como la de la siguiente imagen.
    Captura de pantalla que muestra correlaciones
  22. Opcional: Pulse la bombilla en cada correlación y seleccione Establecer cardinalidad en primer índice para eliminar los triángulos de aviso.
    Los avisos aparecen debido a que el correlacionador desconoce las limitaciones de las filas de base de datos. Por ejemplo, en la salida se espera un único valor para EmployeeNo, pero el procedimiento almacenado puede devolver varias filas de la columna de entrada correlacionada EMPNO. El diseño del procedimiento almacenado únicamente garantiza que se devuelva una fila y, por lo tanto, puede establecer la cardinalidad en 1.
  23. Guarde y cierre la correlación.
  24. Conecte el nodo HTTP Input y el nodo HTTP Reply al nodo Mapping.
    1. Conecte el terminal de salida del nodo Entrada HTTP con el terminal de entrada del nodo Correlación.
    2. Conecte el terminal de salida del nodo Correlación con el terminal de entrada del nodo Respuesta HTTP.
    El flujo es como el que se muestra en la imagen siguiente.
    Captura de pantalla que muestra las conexiones entre los nodos.
  25. Guarde el flujo de mensajes.

Qué hacer a continuación

Siga los pasos de Configuración de una política de proveedores de JDBC para el escenario de procedimientos almacenados de base de datos.