group-ending-with
Die Funktion group-ending-with erhält eine Boolsche Bedingung als Argument. Wenn die Boolsche Bedingung "true" ergibt, wird bis inklusive dem Datensatz, auf den die Bedingung zutrifft, eine neue Gruppe erstellt.
Im Beispiel unten ist die Bedingung, dass "Key" (Schlüssel) gleich "trailing" sein soll. Diese Bedingung triftt auf den dritten und fünften Datensatz zu, daher werden als Ergebnis zwei Gruppen erstellt:
Anmerkung: | Wenn nach dem letzten Datensatz, auf den die Bedingung zutrifft, weitere Datensätze vorhanden sind, wird eine zusätzliche Gruppe erstellt. Wenn z.B. nach dem letzten "trailing"-Datensatz z.B. weitere "line"-Datensätze vorhanden wären, 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 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 nachfolgenden ("trailing") Datensatz Gruppen zu erstellen. Außerdem muss jede Gruppe auch alle "line" (Zeilen)-Datensätze enthalten, die vor dem nachfolgenden Datensatz stehen. Zu diesem Zweck wird im folgenden Mapping die Funktion group-ending-with aufgerufen. Immer, wenn der key-Name im nachstehenden Mapping gleich "trailing" 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.