Configuración del flujo de mensajes
Configure un nodo de correlación para utilizar el procedimiento almacenado.
Antes de empezar
Procedimiento
- 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.
- 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.
- En el cajón Transformación, arrastre un nodo Correlación al lienzo y pulse dos veces el nodo.
- En la ventana "Especificar un nuevo archivo de correlación de mensajes" , pulse Siguiente.
- Tanto para las entradas como para las salidas del mapa, expandir completamente StoredProcedures_Lib.
- Para la entrada, seleccione el esquema Empleado .
- Para la salida, seleccione el esquema EmployeeData .

- Pulse Siguientey, a continuación, Finalizar.Se abre la correlación.
- Conecte Employee a EmployeeData. Se crea una correlación local.
- Pulse Correlación local.
- 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.
- 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.

- 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.

- 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.
- Pulse ResultSet1.
- Expanda la tabla EMPLOYEE y seleccione las columnas EMPNO, FIRSTNME, APELLIDOy WORKDEPT .
- En el campo Descripción , especifique Select from EMPLOYEE.
La pantalla es como la que se muestra en esta captura de pantalla:
- 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.
- 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.
- 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.
- Pulse Aceptar.Ahora regresa a la correlación que contiene las subcorrelaciones Rutina de base de datos y Devolver.
- 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.

- Pulse Rutina de base de datosy conecte EMPL_NUM a EMPLIKENOIN (el parámetro de entrada para la rutina).
- Pulse la flecha amarilla para subir un nivel.
- Pulse la transformación Devolución para navegar a la correlación de retorno anidada y expanda los conjuntos de resultados.
- 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.
- 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 correlacionadaEMPNO. El diseño del procedimiento almacenado únicamente garantiza que se devuelva una fila y, por lo tanto, puede establecer la cardinalidad en 1. - Guarde y cierre la correlación.
- Conecte el nodo HTTP Input y el nodo HTTP Reply al nodo Mapping.
- Conecte el terminal de salida del nodo Entrada HTTP con el terminal de entrada del nodo Correlación.
- 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.
- Guarde el flujo de mensajes.