Nachrichtenwarteschlangen-Integration, die Informationen in eine SQL-Datenbank einfügt
Übersicht
Das Ziel dieses Beispiels ist es, eine Message Queue-Integration zu erstellen, die eine Aktion zum Einfügen eines Datenbankeintrags enthält, um die Informationen für den aktuell gedruckten Datensatz speichern zu können.
Microsoft Message Queuing (MSMQ) kann das XML-Queue-Nachrichtenformat verwenden, und BarTender unterstützt dieses Format ab BarTender 2019 nativ, um wertvolle Informationen über den Druckauftrag zu erfassen.
Im Gegensatz zu anderen Integrationsarten nimmt diese Integration XML-Daten, die von MSMQ übergeben werden, und zerlegt sie in Variablen, die an eine Etikettendatei übergeben werden können.
Anwendbar auf
BarTender 2019 und neuer.
Informationen
Szenario
Ein Unternehmen muss einen Druckauftrag mit XML-Daten über seinen Message Queue-Dienst senden. Der Druckauftrag wird ausgeführt, wenn Daten – in diesem Fall XML-Daten – über die Microsoft Message Queue gesendet und vom BarTender Integration Service gelesen werden. Anschließend sollen die Datensätze aus dem Druckauftrag in eine Microsoft SQL-Datenbank eingefügt werden.
Implementierung
Das folgende Verfahren beschreibt, wie Sie die Integration für das oben beschriebene Szenario einrichten, bereitstellen und überprüfen.
Einrichten des Etiketts
Da die Integration die Struktur des XML erkennen kann, können Sie die XML-Datensätze direkt auf benannte Datenquellen im Dokument abbilden. Diese Art von Etikett verwendet daher keine Datenbank, sondern nutzt benannte Datenquellen, um alle Daten zu verarbeiten. Im Folgenden werden die Grundlagen zum Einrichten dieses Etiketts erläutert. Weitere Informationen finden Sie unter Benannte Datenquellen in der Hilfedatei.
-
- Erstellen Sie ein neues Etikett.
- Fügen Sie ein Textobjekt im Etikettendesignbereich hinzu.
- Klicken Sie mit der rechten Maustaste auf das Etikett und wählen Sie Eigenschaften.
- Wählen Sie die Datenquelle aus der Liste aus. Dort steht "Beispieltext".
- Klicken Sie auf das Kästchen neben dem Feld Name.
- Geben Sie im Dialogfeld einen eindeutigen Namen ein und klicken Sie auf OK. Verwenden Sie in diesem Beispiel ORDERNUM.
- Stellen Sie sicher, dass der Typ auf Eingebettete Daten gesetzt ist.
- Wenn Sie weitere Textobjekte erstellen, sieht das Dialogfeld für die benannte Datenquelle anders aus. Wenn Sie auf das Kästchen neben dem Namensfeld klicken, wählen Sie die erste Option, um einen neuen Namen zu erstellen. Verwenden Sie zum Beispiel CUSTOMER.
- Erstellen Sie in diesem Beispiel eine weitere benannte Datenquelle mit dem Namen CITY.
- Sobald Sie alle gewünschten benannten Datenquellen erstellt haben, speichern Sie das Etikett.
Erstellen der XML-Triggerdaten
Für Ihre Integration benötigen Sie einen XML-formatierten Trigger, der über MSMQ gesendet wird. Die Namen der XML-Felder müssen nicht mit den Namen Ihrer benannten Datenquellen übereinstimmen, da Sie die Felder hier in der Integration zuordnen. Diese XML-Feldnamen werden automatisch zu Variablen in Ihrer Integration. Achten Sie darauf, dass Ihre Feldnamen keine Leerzeichen enthalten.
Hier ein Beispiel:
<?xmlversion="1.0">
<ItemInfo>
<Item>
<ORDERNUM>8</ORDERNUM>
<CUSTOMER>Bob Builder</CUSTOMER>
<CITY>Canada</CITY>
</Item>
</ItemInfo>
Erstellen der Integration
- Öffnen Sie den Integration Builder und wählen Sie Neue Integration erstellen.
- Wählen Sie im neuen Integrationsdialog Message Queue Integration und klicken Sie auf OK.
- Legen Sie zunächst auf der Registerkarte Integration die Benutzeranmeldedaten fest. Der angegebene Benutzer benötigt ausreichende Berechtigungen, um auf die verwendete Message Queue zuzugreifen. Weitere Informationen finden Sie im Artikel Troubleshooting Guide: Integrations.
- Wählen Sie im linken Menü Eingabedaten und ändern Sie das Eingabedatenformat auf XML-Variablen.
-
Richten Sie als Nächstes die Aktion Für jeden Datenbankeintrag ein.
-
Nachdem die Daten empfangen wurden, muss die Integration wissen, wie sie mit diesen eingehenden Datensätzen umgehen soll.
-
- Klicken Sie im linken Menü auf die +-Schaltfläche neben Aktionen.
- Wählen Sie im Dialogfeld die Kategorie Datenbank und dann Für jeden Datenbankeintrag aus und klicken Sie auf OK.
- Klicken Sie in der Aktionsliste auf die Aktion Dokument drucken und ziehen Sie sie unter die Aktion Für jeden Datenbankeintrag, bis sie eingerückt ist. Dadurch wird die Aktion Dokument drucken als untergeordnete Aktion dieser Aktion festgelegt.
- Die Aktion Für jeden Datenbankeintrag mit einer verschachtelten Aktion Dokument drucken als Kind stellt sicher, dass die XML-Daten beim Drucken korrekt verarbeitet werden.
- Wählen Sie die Aktion Dokument drucken aus und klicken Sie dann auf der rechten Seite auf die Registerkarte Benannte Datenquellen.
- Aktivieren Sie Werte für benannte Datenquellen angeben und geben Sie für jede benannte Datenquelle den Namen und den Wert ein.
Einrichten der SQL-Datenbank
- Klicken Sie erneut auf die +-Schaltfläche neben Aktion.
- Klicken Sie auf die Kategorie Datenbank, wählen Sie dann Datenbankeintrag einfügen und klicken Sie auf OK.
- Die Aktion Datenbankeintrag einfügen ist ebenfalls als untergeordnete Aktion unter der Aktion Für jeden Datenbankeintrag verschachtelt und wird nach der Aktion Dokument drucken ausgeführt, sodass die Variablen aus dem Druckauftrag in der Datenbank aktualisiert werden.
HINWEIS: Die Aktion Datenbankeintrag einfügen unterstützt nur relationale Datenbanktypen. Für diese Aktion zeigt der Datenbank-Setup-Assistent keine nicht-relationalen Datenbanktypen wie Text, Access und Excel oder eine benannte Datenbankverbindung an, die auf nicht-relationale Datenbanktypen verweist. - Nachdem Sie die Aktion Datenbankeintrag einfügen hinzugefügt haben, klicken Sie auf Datenbankverbindung einrichten im Tab Datenbankeintrag einfügen.
- In diesem Beispiel verwenden wir eine lokale Microsoft SQL Server-Instanz, daher wählen wir Microsoft SQL Server und klicken dann auf Weiter.
- Auf der nächsten Seite geben wir unsere Verbindungsinformationen für den Server, den Authentifizierungsmodus und die gewünschte Datenbank ein:
- Weitere Informationen zur Verwendung des Datenbank-Setup-Assistenten finden Sie unter Datenbank-Setup-Dialog.
- Nachdem die Datenbankverbindung eingerichtet ist, müssen wir angeben, dass die im Druckauftrag gespeicherten Variablen zum Aktualisieren der Werte in der Datenbank verwendet werden. Wählen Sie dazu jede gewünschte Spalte aus und geben Sie die Variablen als Wert wie folgt ein:
- Klicken Sie auf die Schaltfläche Integration testen in der oberen Symbolleiste.
- Klicken Sie oben rechts auf die grüne Start-Schaltfläche.
- Wenn die XML-Daten in der angegebenen Message Queue empfangen werden, wird die Integration ausgelöst, ein Etikett wird gedruckt und die Daten werden in die Datenbank eingefügt.
Weitere Ressourcen
Wie man mehrere Datensätze mit einer Socket- oder Webservice-POST-Integration verwendet
Wie man eine CSV-Integration mit benannten Datenquellen erstellt