Beispiel: Aufteilen einer Datenbanktabelle in mehrere XML-Dateien
In diesem Beispiel wird gezeigt, wie Sie mehrere XML-Dateien - für jeden Datensatz einer Datenbanktabelle eine - dynamisch generieren. Die Beispielmapping-Datei dazu finden Sie unter: <Dokumente>\Altova\MapForce2024\MapForceExamples\PersonDB-dyn.mfd.
Die Datenbank-Quelldatei (Sie liegt im selben Ordner wie das Mapping) enthält eine Tabelle namens "Person", die 21 Person-Datensätze enthält. Ziel ist die Generierung einer separaten XML-Datei für jeden einzelnen Datensatz in der Tabelle "Person".
![dyn-db2xml2](./images/dyn-db2xml2.png)
Da das Feld "PrimaryKey" die einzelnen Personen in der Tabelle eindeutig identifiziert, ist dies das Datenelement, das wir zum Aufteilen der Quelldatenbank in separate Dateien verwenden werden. Gehen Sie dazu folgendermaßen vor:
1. | Fügen Sie eine concat-Funktion ein (Sie können diese mit der Maus aus der Bibliothek core | string functions in den Mapping-Bereich ziehen). |
2. | Fügen Sie (über das Menü Einfügen | Konstante) eine Konstante ein und geben Sie als ihren Wert ".xml" ein. |
3. | Ziehen Sie die Funktion auto-number aus der Bibliothek core | generator functions mit der Maus in den Mapping-Bereich. |
4. | Klicken Sie auf die Schaltfläche Datei ( ![]() ![]() |
5. | Erstellen Sie die Verbindungen wie oben gezeigt und klicken Sie auf das Register "Ausgabe", um das Ergebnis des Mappings zu sehen. |
![PersonDB-dyn-PRO](./images/persondb-dyn-pro.png)
PersonDB-dyn.mfd (MapForce Professional Edition)
Beachten Sie, dass die erzeugten Ausgabedateien folgendermaßen dynamisch benannt sind:
•Das Feld PrimaryKey liefert den ersten Teil des Dateinamens, z.B. 1.
•Die Konstante liefert die Dateierweiterung, d.h. .xml, also lautet der Dateiname der ersten Datei 1.xml.