Altova MapForce 2025 Professional Edition

Beispiel: Zählen von Datenbanktabellenzeilen

Zur Startseite Zurück Nach oben Weiter

Das in diesem Beispiel beschriebene Mapping finden Sie unter dem Namen DB_UserList.mfd im Ordner <Dokumente>\Altova\MapForce2025\MapForceExamples\. In diesem Mapping werden Benutzerdatensätze aus einer Datenbanktabelle namens "Users" extrahiert und in eine XML-Datei geschrieben. Die Datenbankspalte "Username" enthält den Vor- als Zunamen einer Person (z.B. "Vernon Callaby"). Dieses Mapping hat folgende Ziele:

 

1.Für jeden Datensatz in der Tabelle "Users" soll ein neues Person-Element in der XML-Datei erstellt werden.

2.Der aus dem Datenbankfeld "Username" extrahierte Wert soll in der XML-Datei auf zwei separate Felder aufgeteilt werden ("First" und "Last").

3.Für jeden Datensatz soll die fortlaufende Nummer aus der Gesamtanzahl aller Datensätze in der Datenbank extrahiert werden (z.B. "Datensatz 1 von 4") und in das Datenelement Details geschrieben werden.

mf_map_DB_UserList

DB_UserList.mfd

Wie oben gezeigt, wird eine Verbindung zwischen der Quelltabelle "Users" und dem Element Person der XML-Zieldatei gezogen. Auf diese Art wird für jeden Datensatz in der Quelltabelle ein neues Person-Element in der Zielkomponente erstellt (erster Punkt der Mapping-Ziele).

 

Der Wert des Felds "Username" wird durch die Funktionen substring-before und substring-after bereitgestellt. Diese beiden Funktionen extrahieren den Text vor und nach dem Leerzeichen (" "). Damit wird der zweite Punkt der Mapping-Ziele erfüllt.

 

Zur Erreichung des dritten Ziels wird die count-Funktion verwendet. Das Ergebnis der count-Funktion wird an eine Variable übergeben. Mit der Variablen wird sichergestellt, dass das Ergebnis im Mapping gespeichert wird und zur Verfügung steht, wenn die "Details"-Elemente der einzelnen Personen in die XML-Zieldatei geschrieben werden. Beachten Sie, dass Datenbankdatensätze aus Gründen der Effizienz nur einmal gezählt werden sollten, daher ist der Geltungsbereich der Variablen auf compute-when=once gesetzt (siehe Ändern von Kontext und Geltungsbereich von Variablen)

© 2018-2024 Altova GmbH