Sortieren mit Variablen

www.altova.com Dieses Kapitel drucken Vorherige Seite Eine Ebene nach oben Nächste Seite

Startseite >  Erstellen von Mappings > Sortieren von Daten >

Sortieren mit Variablen

In einigen Fälle müssen eventuell Zwischenvariablen zum Mapping hinzugefügt werden, um das gewünschte Ergebnis zu erzielen. In diesem Beispiel wird gezeigt, wie Sie Datensätze aus einer XML-Dati extrahieren und mit Hilfe von Zwischenvariablen sortieren. Das Mapping-Beispiel dazu finden Sie unter dem folgenden Pfad: <Dokumente>\Altova\MapForce2019\MapForceExamples\Altova_Hierarchical_Sort.mfd.

sort-altHier1

Altova_Hierarchical_Sort.mfd

In diesem Mapping werden Daten aus einer XML-Quelldatei namens Altova_Hierarchical.xml gelesen und in eine XML-Zieldatei geschrieben. Wie Sie oben sehen, enthält die XML-Quellkomponente Informationen über ein fiktives Unternehmen. Die Firma besteht aus Niederlassungen (Office). Die Niederlassungen sind in Abteilungen (Department) unterteilt, die wiederum aus Personen (Person) bestehen.

 

Die XML-Zielkomponente PersonList enthält eine Liste von Person-Datensätzen. Das Datenelement Details dient zur Aufnahme von Informationen über die Niederlassung und Abteilung, zu der die Person gehört.

 

Ziel ist es, alle Personen aus der XML-Quelldatei zu extrahieren und alphabetisch nach dem Nachnamen (last name) zu sortieren. Außerdem müssen der Name der Niederlassung und der Abteilung, zu der jede Person gehört, in das Datenelement Details geschrieben werden.

 

Um dies zu erreichen, werden in diesem Beispiel die folgenden Komponententypen verwendet:

 

1.die Funktion concat. Diese Funktion gibt in diesem Mapping einen String im Format Office(Department) zurück. Sie erhält als Input den Namen der Niederlassung und den Abteilungsnamen und zwei Konstanten, die die öffnende und schließende Klammer bereitstellen. Siehe auch Arbeiten mit Funktionen.
2.eine Zwischenvariable. Die Rolle der Variablen ist es, alle für eine Person relevanten Daten in denselben Mapping-Kontext zu bringen. Aufgrund der Variablen werden im Kontext jeder Person jeweils die Abteilung und die Niederlassung einer Person nachgesehen. Anders ausgedrückt, merkt sich die Variable den Namen der Niederlassung und Abteilung, zu der eine Person gehört. Ohne die Variable wäre der Kontext falsch, was im Mapping zu unerwünschten Ergebnissen führen würde (eine genauere Anleitung zum Ausführen eines Mappings finden Sie unter Mapping-Regeln und -Strategien). Beachten Sie, dass die Variable die Struktur der XML-Zieldatei repliziert (sie verwendet dasselbe XML-Schema). Auf diese Art kann das Sortierergebnis mittels einer "Alles kopieren"-Verbindung mit der Zielkomponente verbunden werden. Siehe auch Verwendung von Variablen und "Alles kopieren"-Verbindungen.
3.eine Sortierkomponente, die die eigentliche Sortierung durchführt. Beachten Sie, dass der Input "key" der sort-Komponente mit dem Datenelement Last der Variablen verbunden ist, wodurch alle Personendatensätze nach dem Nachnamen sortiert werden.

© 2019 Altova GmbH