Wertauflöser - Kurzfassung
Zweck: Versucht eine als Eingabewert übergebene Zeichenfolge als als XML zu parsen und als Server-XML-Format zu interpretieren, um ein Objekt zurückzugeben.
Tooltip
Verwendung: Der Wertauflöser gibt im Erfolgsfall das erzeugte Objekt zurück.
Hinweis: Liegt kein Wert (
$null) als Eingabewert an, wird der kein Wert ($null) zurückgegeben.
Siehe auch: Server XML aus Objekt erzeugen

Der Objekt aus Server XML erzeugen-Wertauflöser versucht eine als Eingabewert übergebene Zeichenfolge als XML zu parsen und als Server-XML-Format (s. Server Datenencoder) zu interpretieren, um ein Objekt zurückzugeben.
Dabei sind folgende Fälle zu unterscheiden:
Eingabewert (abstrakt) | Eingabewert (konkrete Beispiele) | Rückgabewert | Fehler |
|---|---|---|---|
kein Wert ( | kein Wert ( | kein Wert ( | n/a |
Eine Zeichenfolge, die kein wohlgeformtes XML definiert | leere Zeichenfolge ("")
| n/a |
|
Eine Zeichenfolge, die ein wohlgeformtes XML ergibt, das sich auf ein für den Server unbekanntes |
| n/a |
|
Eine Zeichenfolge, die ein wohlgeformtes XML ergibt, das sich auf ein für den Server definierten HINWEIS Im serverseitig angewendeten Schema nicht vorgesehene Inhalte werden ignoriert!1 |
| kein Wert ( | n/a |
| Datenobjekt mit einem Feld | n/a | |
Eine Zeichenfolge, die ein wohlgeformtes XML ergibt, das sich auf einen für den Server definierten HINWEIS Im serverseitig angewendeten Schema nicht vorgesehene Inhalte werden ignoriert! |
| 123 | n/a |
| Entität des Typs "Bestellung" ( | n/a |
Konfiguration
Der Wertauflöser verwendet keine Parameter.
Als Eingabewert wird die Zeichenfolge erwartet, die vom Server als XML für ein Datenobjekt geparst werden soll.
Beispiele
Suche-Objekt als Eingabewert für eine "View" erzeugen
In Verbindung mit der Öffne View (Aktion) und dem Abfragekonfigurator kann der Objekt aus Server XML erzeugen-Wertauflöser hilfreich sein, um ein Objekt vom Typ "Suche" (search) als Eingabewert für eine Übersicht zu generieren.
Die Vorgehensweise wird im Beispiel für die Öffne View (Aktion) detailliert beschrieben. Deshalb wird hier nur kurz auf den Zweck und den Einsatz des Objekt aus Server XML erzeugen-Wertauflösers eingegangen:
Wie der Screenshot zeigt, wird eine Öffne View (Aktion)-Ereignisaktion im Kontext einer bestimmten Bestellposition ( Die Ereignisaktion soll eine Übersicht für Bestellungen öffnen, in der alle Bestellungen erscheinen, die über mindestens eine Bestellposition verfügen, deren Wert für das Textattribut "Warenbeschreibung" ( Diese Bedingung kann in einer Suche im Abfragekonfigurator für eine konkrete "Warenbeschreibung" recht einfach formuliert und getestet werden. Anstelle einer konkreten "Warenbeschreibung" kann man in der so erstellen und getesteten Suche dann eine eindeutige Textmarke (im Beispiel " Aus dem Abfragekonfigurator kann die XML-Definition für die Suche (inkl. Parameter) in die Zwischenablage kopiert, um sie - wie im Screenshot zu sehen - als statischen Text (s. Statische Werte) einfügen und weiterverarbeiten zu können:
HINWEIS Das Beispiel für Öffne View (Aktion) beschreibt weitere Details, die für eine erfolgreiche Umsetzung nach diesem Schema zu beachten sind. |
|
XML-Daten einer Entität per "Textverarbeitung" manipulieren
Das folgende Beispiel zeigt, wie der Objekt aus Server XML erzeugen-Wertauflöser in Verbindung mit dem Server XML aus Objekt erzeugen-Wertauflöser eingesetzt werden kann, um die Daten einer Entität - hier vom Typ "Bestellung" (s. Bestellungen) - so zu manipulieren, dass die manipulierten Daten eine neue Entität - hier vom Typ "Sendung" (s. Sendungen) definieren. Dabei sollen alle Merkmale der "Bestellung" auf die "Sendung" übertragen werden, die das XML-Schema für Sendungen unterstützt.
Laufzeitbeispiel:
Aus einer Bestellung mit den folgenden Angaben zu beteiligten Firmen und Positionen wird "per Knopfdruck" - genauer: indem ein Eigenes Aktionsevent per Ribbon Button ausgelöst wird - eine Sendung erstellt, die auf Sendungen abbildbaren Merkmale der Bestellung widerspiegelt:

Zur Demonstration wird die erstellte Sendung hier in einer ähnlich aufgebauten Erfassungsmaske wiedergegeben:

Das Feld "Bestelltyp" (
orderType) ist im Schema für Sendungen nicht vorgesehen. Es entfällt in den Daten der erzeugten Sendung.Die beteiligten Firmen und Positionen werden komplett übertragen. Für die Sendungspositionen sieht die Maske zusätzliche Felder vor, die natürlich leer bleiben.
ACHTUNG Das Umwandeln eines Entitätstyps in einen anderen durch die Manipulation von XML-Daten sollte nicht als "gute Praxis" missverstanden werden. Es ist im Allgemeinen keine empfehlenswerte Methodik zur Datenmanipulation und dient hier nur als Demonstrationsbeispiel für den Einsatz des Objekt aus Server XML erzeugen-Wertauflösers. Ein Lobster_data-Profil (mit Mappings zwischen den zugehörigen Orchestration-Vorlagen) oder eine Ereignisbehandlung mit einer konkreten Sequenz von Wertzuweisungen lösen die systematische Datentransformation zwischen zwei Entitätstypen sicher robuster, flexibler und wartungsfreundlicher als die folgende Konfiguration. Nur weil die Datenmodelle bzw. Schemas von Bestellungen und Sendungen weitgehend kompatibel sind, ist der Weg einer "Textverarbeitung" auf der Ebene der Server-XMLs überhaupt gangbar. Die beschriebene "Textverarbeitung" erhebt auch nicht den Anspruch jede für eine Bestellung denkbare "Datenlage" abzudecken.
Konfiguration:
Die Ereignisbehandlung, deren Ereignisaktionen rechts abgebildet sind, wird im Kontext einer Bestellung über ein Eigenes Aktionsevent (per Ribbon Button) ausgelöst. Eine Typprüfung in der "Prüfenden Regel" (nicht im Bild) stellt sicher, dass als Eingabewert eine Bestellung anliegt. Die Umwandlung von der Bestellung zur Sendung erfolgt im Kopf einer Ausführen mit-Ereignisaktion, in deren Kontext die zu erstellende Sendung als abweichendes Bezugsobjekt gilt. Eine Verkettung von Wertauflösern führt folgende Schritte aus:
Der Aktionsblock definiert folgende Aktionen im Kontext der neuen Sendung:
HINWEIS Das Entfernen der Entitätsattribute |
|
| Das Namespace-Attribut |
| An allen Stellen, wo das XML der Bestellung auf den Namespace Der Reguläre Ausdruck für die Ersetzung soll für öffnende und schließende Tags im XML greifen:
Der Suchtext |
| Das Entfernen der Entitätsattribute ( Der Reguläre Ausdruck ist dabei jeweils nach demselben Schema aufgebaut:
Als Wert für Ersetzen mit wird nur die erste Gruppe ( HINWEIS Die Entitätsattribute ( |




