Integración de cola de mensajes que inserta la información en una base de datos SQL
Descripción general
El objetivo de este ejemplo es crear una integración de Message Queue que incluya una acción de Insertar registro en base de datos para poder guardar la información del registro impreso actual.
Microsoft Message Queuing (MSMQ) puede usar el formato de mensaje XML Queue, y BarTender es compatible con este formato de forma nativa desde BarTender 2019 para poder recopilar información valiosa sobre el trabajo de impresión.
A diferencia de otros tipos de integraciones, esta integración toma los datos XML enviados por MSMQ y los descompone en variables que se pueden pasar a un archivo de etiqueta.
Aplicable a
BarTender 2019 y versiones posteriores.
Información
Escenario
Una empresa necesita enviar un trabajo de impresión usando datos XML a través de su servicio de Message Queue. El trabajo de impresión se ejecutará cuando los datos —en este caso, datos XML— se envíen por Microsoft Message Queue y sean leídos por el Servicio de Integración de BarTender. Luego, necesitan insertar los registros del trabajo de impresión en una base de datos Microsoft SQL.
Implementación
El siguiente procedimiento describe cómo configurar, implementar y verificar la integración para el escenario descrito anteriormente.
Configuración de la etiqueta
Como la integración puede reconocer la estructura del XML, puedes mapear los registros XML directamente a Fuentes de Datos Nombradas en el documento. Por lo tanto, este tipo de etiqueta no utiliza una base de datos, sino que usa Fuentes de Datos Nombradas para manejar todos sus datos. A continuación se explican los conceptos básicos para configurar esta etiqueta. Para más información, consulta Fuentes de Datos Nombradas en el archivo de ayuda.
-
- Crea una nueva etiqueta.
- Crea un objeto de texto en el área de diseño de la etiqueta.
- Haz clic derecho en la etiqueta y selecciona Propiedades.
- Selecciona la fuente de datos de la lista. Dirá "Texto de ejemplo".
- Haz clic en la casilla junto al campo Nombre.
- En el cuadro de diálogo, escribe un nombre único y haz clic en OK. Para este ejemplo, usa ORDERNUM.
- Asegúrate de que el Tipo esté configurado como Datos incrustados.
- Al crear más objetos de texto, el cuadro de diálogo de Fuente de Datos Nombrada se verá diferente. Cuando hagas clic en la casilla junto al campo Nombre, selecciona la primera opción para crear un nuevo nombre. Por ejemplo, usa CUSTOMER.
- Para este ejemplo, crea una Fuente de Datos Nombrada adicional y usa CITY como nombre.
- Una vez que hayas creado todas las Fuentes de Datos Nombradas que desees, guarda la etiqueta.
Crear los datos de activación XML
Para tu integración, necesitarás un activador en formato XML para enviar por MSMQ. Los nombres de los campos XML no tienen que coincidir con los nombres de tus Fuentes de Datos Nombradas, ya que aquí en la integración vas a relacionar los campos con las Fuentes de Datos Nombradas. Estos nombres de campos XML se convertirán automáticamente en variables en tu integración. Asegúrate de que los nombres de los campos no tengan espacios.
Aquí tienes un ejemplo:
<?xmlversion="1.0">
<ItemInfo>
<Item>
<ORDERNUM>8</ORDERNUM>
<CUSTOMER>Bob Builder</CUSTOMER>
<CITY>Canada</CITY>
</Item>
</ItemInfo>
Creación de la integración
- Abre Integration Builder y selecciona Crear nueva integración.
- En el nuevo cuadro de diálogo de integración, selecciona Integración de Message Queue y haz clic en OK.
- Primero, especifica las credenciales de usuario en la pestaña Integración. El usuario especificado debe tener permisos suficientes para acceder a la Message Queue utilizada. Puedes encontrar más información en el artículo Guía de solución de problemas: Integraciones.
- En el menú de la izquierda, selecciona Datos de entrada, luego cambia el Formato de datos de entrada a Variables XML.
-
A continuación, configura la acción Para cada registro de base de datos.
-
Después de recibir los datos, la integración necesitará saber cómo manejar estos registros entrantes.
-
- En el menú de la izquierda, haz clic en el botón + junto a Acciones.
- En el cuadro de diálogo, haz clic en la categoría Base de datos, luego selecciona Para cada registro de base de datos y haz clic en OK.
- Haz clic en la acción Imprimir documento en la lista de Acciones y arrástrala debajo de la acción Para cada registro de base de datos hasta que se indente. Esto hará que la acción Imprimir documento sea hija de esta acción.
- La acción Para cada registro de base de datos con una acción Imprimir documento anidada como hija asegurará que los datos XML se procesen correctamente durante la impresión.
- Selecciona la acción Imprimir documento, luego haz clic en la pestaña Fuentes de Datos Nombradas en el lado derecho.
- Marca Especificar valores para fuentes de datos nombradas e ingresa el Nombre y el Valor para cada Fuente de Datos Nombrada.
Configuración de la base de datos SQL
- Haz clic nuevamente en el botón + junto a Acción.
- Haz clic en la categoría Base de datos, luego selecciona Insertar registro en base de datos y haz clic en OK.
- La acción Insertar registro en base de datos también está anidada como acción hija bajo la acción Para cada registro de base de datos y se realiza después de la acción Imprimir documento, para que las variables del trabajo de impresión se actualicen en la base de datos.
NOTA: La acción Insertar registro en base de datos solo es compatible con tipos de bases de datos relacionales. Para esta acción, el asistente de configuración de base de datos no muestra tipos de bases de datos no relacionales, como texto, Access y Excel, ni ninguna conexión de base de datos nombrada que haga referencia a tipos de bases de datos no relacionales. - Después de agregar la acción Insertar registro en base de datos, haz clic en Configuración de conexión de base de datos desde la pestaña Insertar registro en base de datos.
- Para este ejemplo, usaremos una instancia local de Microsoft SQL Server, así que seleccionamos Microsoft SQL Server y luego hacemos clic en Siguiente.
- En la siguiente página, ingresamos nuestra información de conexión para el servidor, el modo de autenticación y la base de datos que queremos usar:
- Para más información sobre cómo usar el asistente de configuración de base de datos, consulta Cuadro de diálogo de configuración de base de datos.
- Después de configurar la conexión a la base de datos, necesitaremos especificar que las variables guardadas en el trabajo de impresión son las que se usarán para actualizar los valores de los registros en la base de datos, así que seleccionamos cada Columna que queremos usar e ingresamos las variables como el Valor a utilizar de la siguiente manera:
- Haz clic en el botón Probar integración en la barra de herramientas superior.
- Haz clic en el botón verde Iniciar en la esquina superior derecha.
- Cuando los datos XML se reciban en la cola de mensajes especificada, la integración se activará, se imprimirá una etiqueta y los datos se insertarán en la base de datos.
Recursos adicionales
Cómo usar varios registros con una integración POST de socket o servicio web
Cómo crear una integración CSV usando Fuentes de Datos Nombradas