Einführung in das Erstellen von Nachrichten mit StringBuilder

Ossi Galkin avatarGeschrieben vonOssi Galkin Vor über einer Woche aktualisiertTable of contents

StringBuilder

Manchmal können die Nachrichten, die Sie erstellen müssen, lang und kompliziert sein. Das dynamische Erstellen von Nachrichteninhalten basierend auf Informationen aus verschiedenen Quellen erfordert oft eine komplexe Logik. Eine Möglichkeit zum Erstellen von Nachrichten ist die Verwendung von StringBuilder.

Weitere Informationen zu StringBuilder finden Sie imMicrosoft StringBuilder-Dokumentation.

StringBuilder-Beispiel

Dieses StringBuilder-Beispiel zeigt, wie eine XML-Nachricht formuliert wird, die an einen Demo-REST-Endpunkt gesendet werden soll.

Wenn Sie eine Frends-Umgebung und SQL-Datenbank verwenden, wird empfohlen, dass Sie einen ähnlichen Prozess erstellen und testen.
Lernen durch Handeln ist oft die beste Lernmethode!

Überblick über den Beispielprozess

Der Prozess ist unkompliziert. Die erste Aufgabe fragt Produktdaten aus der SQL-Datenbank ab. Das nächste Element legt die Variable für den StringBuilder fest. Das Foreach-Element durchläuft die von SQL abgefragten Produktdaten und erstellt für jedes Produkt eine XML-Nachricht. Der Prozessablauf verzweigt sich vom Exclusive Decision-Element basierend auf der Farbe des Produkts. Wenn der Farbwert null ist, enthält die Nachricht andere Inhalte als Produkte mit einem festgelegten Farbwert. Die XML-Nachricht wird mit der POST-Methode an den REST-Endpunkt gesendet. Schließlich löscht das letzte Element in der Foreach-Schleife die StringBuilder-Variable, bevor mit dem nächsten Produkt fortgefahren wird.

Elementkonfiguration

Unten finden Sie Screenshots der einzelnen Elementkonfigurationen.

Microsoft ExecuteQuery:

Im Beispielprozess fragt die Microsoft ExecuteQuery nur zwei Produkte aus der Tabelle ab. Der Verbindungsstring wird in einer Umgebungsvariable gespeichert und ist ausgeblendet. Neben der Konfigurationsabbildung finden Sie das Abfrageergebnis mit Produktdetails.

Microsoft ExecuteQuery FreundesaufgabeGitHub-Seite.

Zielnachricht festlegen

In diesem Ausdruckselement wird die Variable targetMessage initialisiert.

Für jedes Produkt

Das Foreach-Element durchläuft eine Schleife über die beiden abgefragten Produkte.

An Zielnachricht anhängen

Dieses Codeelement erstellt den ersten Teil der XML-Nachricht. Beachten Sie das XML-Element der obersten Ebene und den Rest der XML-Nachrichtenstruktur.

Keine Produktfarbe?

Einige Produkte haben einen Farbwert von Null und andere einen Farbwert von Rot, Grün, Blau usw. Dieses exklusive Entscheidungselement verzweigt die Ausführung basierend auf dem Farbattributwert.

Keine Farbdetails anhängen

Wenn der Farbwert null ist, wird dieser Teil der Nachricht an die Zielnachricht angehängt.

Dieses Codeelement schließt gleichzeitig das Element der Nachricht ab.

Farbdetails anhängen

Falls der Farbwert ungleich null ist, wird dieser Teil der Nachricht an die Zielnachricht angehängt.

Dieses Codeelement schließt gleichzeitig das Element der Nachricht ab.

XML-Nachricht senden

Web RestRequest Task FreundeGitHub-Seite.

Zielnachricht löschen

Dieses Ausdruckselement löscht die Variable targetMessage für die nächste Iteration von Foreach.

Ausführung des Beispielprozesses

Unten finden Sie Screenshots der Prozessinstanz.

Sie können in der unteren linken Ecke des Foreach-Elements sehen, dass die Schleife zweimal durchlaufen wurde, da zwei Produktdetails aus der Datenbank abgefragt wurden. Überprüfen Sie den Inhalt der XML-Nachricht und vergleichen Sie das Ergebnis mit der Aufgabe „XML-Nachricht senden“, um den Unterschied in der Nachricht zu sehen.

Ergebnisse, wenn der Farbwert Null ist

Ergebnis der Aufgabe „XML-Nachricht senden“

Ergebnisse, wenn der Farbwert ungleich null ist

Ergebnis der Aufgabe „XML-Nachricht senden“

Der nächste Artikel istEinführung in Umgebungsvariablen.


Verwandte ArtikelErstellen Sie ein JSON-Array und speichern Sie es in einer VariableErstellen und Bearbeiten von ProzessenBeispiel für die Zuordnung aus einem EDIFACT JToken-BaumEinführung in das Erstellen einer JSON-Nachricht – ein nicht ganz einfaches BeispielEinführung in das Erstellen einer neuen XML-Nachricht – ein einfaches Beispiel