group-starting-with
Die Funktion group-starting-with erhält eine Boolsche Bedingung als Argument. Wenn die Boolsche Bedingung "true" ergibt, wird ab dem Datensatz, auf den die Bedingung zutrifft, eine neue Gruppe erstellt.
Im Beispiel unten ist die Bedingung, dass "Key" (Schlüssel) gleich "heading" sein soll. Diese Bedingung triftt auf den ersten und vierten Datensatz zu, daher werden als Ergebnis zwei Gruppen erstellt:
Anmerkung: | Wenn vor dem ersten Datensatz, auf den die Bedingung zutrifft, weitere Datensätze vorhanden sind, wird eine zusätzliche Gruppe erstellt. Wenn vor dem ersten "heading"-Datensatz z.B. weitere "line"-Datensätze vorhanden waren, würden diese in eine neue Gruppe platziert. |
Sprachen
Built-in, C++, C#, Java, XSLT 2.0, XSLT 3.0..
Parameter
Name | Beschreibung |
---|---|
nodes/rows | Mit diesem Input muss ein Mapping-Datenelement verbunden werden, das eine Sequenz von null oder mehr Werten liefert. So kann damit etwa ein Datenelement aus einer XML-Quelldatei, einem CSV-Feld, einem Datenbankdatensatz, usw. verbunden werden. |
bool | Liefert die Boolsche Bedingung, durch die bei true eine neue Gruppe begonnen werden soll. |
Beispiel
Angenommen, bei Ihren Quelldaten handelt es sich um eine XML-Datei folgenden Inhalts (Beachten Sie, dass der Namespace und die XML-Deklarationen im Codefragment unten aus Gründen der Einfachheit entfernt wurden).
<records> |
Die Aufgabe ist es, für jeden vorangestellten ("heading") Datensatz Gruppen zu erstellen. Außerdem muss jede Gruppe auch alle "line" (Zeilen)-Datensätze enthalten, die auf den "heading"-Datensatz folgen. Zu diesem Zweck wird im folgenden Mapping die Funktion group-starting-with aufgerufen. Immer, wenn der key-Name im nachstehenden Mapping gleich "heading" ist, wird das an bool gelieferte Argument true und es wird eine neue Gruppe erstellt.
Das Ergebnis des Mappings sieht folgendermaßen aus:
<groups> |
Sie finden dieses Beispiel sowie einige weitere Gruppierungsbeispiele in der folgenden Mapping-Datei: <Dokumente>\Altova\MapForce2025\MapForceExamples\GroupingFunctions.mfd. Klicken Sie auf die Schaltfläche Vorschau für die jeweilige Funktion, bevor Sie auf das Fenster Ausgabe klicken.