Intégration de file d’attente de messages insérant les informations dans une base de données SQL
Présentation
Le but de cet exemple est de créer une intégration Message Queue qui inclut une action d’insertion d’enregistrement dans la base de données afin de pouvoir enregistrer les informations de l’enregistrement actuellement imprimé.
Microsoft Message Queuing (MSMQ) peut utiliser le format de message XML Queue, et BarTender prend en charge ce format nativement depuis BarTender 2019 afin de pouvoir recueillir des informations précieuses sur le travail d’impression.
Contrairement à d’autres types d’intégrations, cette intégration prend les données XML transmises par MSMQ et les décompose en variables qui peuvent être transmises à un fichier d’étiquette.
Applicable à
BarTender 2019 et versions ultérieures.
Informations
Scénario
Une entreprise doit envoyer un travail d’impression en utilisant des données XML via son service Message Queue. Le travail d’impression sera exécuté lorsque les données — dans ce cas, des données XML — seront envoyées via Microsoft Message Queue et lues par le service d’intégration BarTender. Elle doit ensuite insérer les enregistrements du travail d’impression dans une base de données Microsoft SQL.
Mise en œuvre
La procédure suivante décrit comment configurer, déployer et vérifier l’intégration pour le scénario décrit ci-dessus.
Configuration de l’étiquette
Puisque l’intégration peut reconnaître la structure du XML, vous pouvez mapper directement les enregistrements XML aux sources de données nommées dans le document. Ainsi, ce type d’étiquette n’utilise pas de base de données mais utilise plutôt des sources de données nommées pour gérer toutes ses données. Voici les bases pour configurer cette étiquette. Pour plus d’informations, consultez Sources de données nommées dans le fichier d’aide.
-
- Créez une nouvelle étiquette.
- Créez un objet texte dans la zone de conception de l’étiquette.
- Faites un clic droit sur l’étiquette et sélectionnez Propriétés.
- Sélectionnez la source de données dans la liste. Il sera indiqué « Texte d’exemple ».
- Cliquez sur la case à côté du champ Nom.
- Dans la boîte de dialogue, saisissez un nom unique et cliquez sur OK. Pour cet exemple, utilisez ORDERNUM.
- Assurez-vous que le type est défini sur Données intégrées.
- Lorsque vous créez d’autres objets texte, la boîte de dialogue Source de données nommée sera différente. Lorsque vous cliquez sur la case à côté du champ Nom, cochez la première option pour créer un nouveau nom. Par exemple, utilisez CUSTOMER.
- Pour cet exemple, créez une source de données nommée supplémentaire et utilisez CITY comme nom.
- Une fois que vous avez créé autant de sources de données nommées que vous le souhaitez, enregistrez l’étiquette.
Créer les données XML de déclenchement
Pour votre intégration, vous aurez besoin d’un déclencheur au format XML à envoyer sur MSMQ. Les noms des champs XML n’ont pas besoin de correspondre aux noms de vos sources de données nommées, car vous allez faire la correspondance entre les champs et les sources de données nommées ici dans l’intégration. Ces noms de champs XML deviendront automatiquement des variables dans votre intégration. Assurez-vous que vos noms de champs ne contiennent pas d’espaces.
Voici un exemple :
<?xmlversion="1.0">
<ItemInfo>
<Item>
<ORDERNUM>8</ORDERNUM>
<CUSTOMER>Bob Builder</CUSTOMER>
<CITY>Canada</CITY>
</Item>
</ItemInfo>
Création de l’intégration
- Ouvrez Integration Builder et sélectionnez Créer une nouvelle intégration.
- Dans la nouvelle boîte de dialogue d’intégration, sélectionnez Intégration Message Queue puis cliquez sur OK.
- Commencez par spécifier les identifiants utilisateur dans l’onglet Intégration. L’utilisateur spécifié devra disposer des autorisations suffisantes pour accéder à la file d’attente utilisée. Plus d’informations sont disponibles dans l’article Guide de dépannage : Intégrations.
- Dans le menu de gauche, sélectionnez Données d’entrée, puis changez le format des données d’entrée en Variables XML.
-
Ensuite, configurez l’action Pour chaque enregistrement de base de données.
-
Après la réception des données, l’intégration devra savoir comment gérer ces enregistrements entrants.
-
- Dans le menu de gauche, cliquez sur le bouton + à côté de Actions.
- Dans la boîte de dialogue, cliquez sur la catégorie Base de données puis sélectionnez Pour chaque enregistrement de base de données et cliquez sur OK.
- Cliquez sur l’action Imprimer le document dans la liste des actions et faites-la glisser sous l’action Pour chaque enregistrement de base de données jusqu’à ce qu’elle soit indentée. Cela fera de l’action Imprimer le document un sous-élément de cette action.
- L’action Pour chaque enregistrement de base de données avec une action Imprimer le document imbriquée en tant qu’enfant garantira que les données XML sont correctement traitées lors de l’impression.
- Sélectionnez l’action Imprimer le document, puis cliquez sur l’onglet Sources de données nommées sur la droite.
- Cochez Spécifier les valeurs pour les sources de données nommées et saisissez le Nom et la Valeur pour chaque source de données nommée.
Configuration de la base de données SQL
- Cliquez à nouveau sur le bouton + à côté d’Action.
- Cliquez sur la catégorie Base de données, puis sélectionnez Insérer un enregistrement dans la base de données et cliquez sur OK.
- L’action Insérer un enregistrement dans la base de données est également imbriquée en tant qu’action enfant sous l’action Pour chaque enregistrement de base de données et intervient après l’action Imprimer le document afin que les variables du travail d’impression soient mises à jour dans la base de données.
REMARQUE : L’action Insérer un enregistrement dans la base de données prend uniquement en charge les types de bases de données relationnelles. Pour cette action, l’assistant de configuration de la base de données n’affiche pas les types de bases de données non relationnelles, tels que texte, Access et Excel, ni toute connexion de base de données nommée qui fait référence à des types de bases de données non relationnelles. - Après avoir ajouté l’action Insérer un enregistrement dans la base de données, cliquez sur Configuration de la connexion à la base de données depuis l’onglet Insérer un enregistrement dans la base de données.
- Pour cet exemple, nous utiliserons une instance locale de Microsoft SQL Server, donc nous sélectionnons Microsoft SQL Server puis cliquez sur Suivant.
- À la page suivante, saisissez vos informations de connexion pour le serveur, le mode d’authentification et la base de données à utiliser :
- Pour plus d’informations sur l’utilisation de l’assistant de configuration de la base de données, consultez Boîte de dialogue de configuration de la base de données.
- Une fois la connexion à la base de données configurée, il faudra spécifier que les variables enregistrées dans le travail d’impression sont celles utilisées pour mettre à jour les valeurs des enregistrements dans la base de données. Sélectionnez donc chaque colonne à utiliser et saisissez les variables comme valeur à utiliser, comme suit :
- Cliquez sur le bouton Tester l’intégration dans la barre d’outils en haut.
- Cliquez sur le bouton vert Démarrer en haut à droite.
- Lorsque les données XML sont reçues sur la file d’attente de messages spécifiée, l’intégration se déclenchera, une étiquette sera imprimée et les données seront insérées dans la base de données.
Ressources supplémentaires
Comment utiliser plusieurs enregistrements avec une intégration POST via socket ou service web
Comment créer une intégration CSV en utilisant des sources de données nommées