Plurale Attribute

Plurale Attribute sind Attribute, die demselben Datenobjekt mehrfach zugewiesen werden können. In der Regel beinhalten die einzelnen "Ausprägungen" des Attributs dabei unterschiedliche Detaildaten. Das ist aber keine notwendige Voraussetzung für die mehrfache Zuordnung.

Während vordefinierte Mehrfachattribute von Geschäftsobjekten per Definition pluralen Charakter besitzen, können ausgewählte Typisierte Attribute per Konfiguration wahlweise als plural definiert werden. In beiden Fällen erscheinen die einzelnen Zuordnungen für das entsprechende Merkmal formal als eigenständige Elemente in der <attributes>-Aufzählung des Datenobjekts, werden also zusammen mit allen anderen (singulären) Attributen aufgelistet. Im Unterschied zu den nur einfach ausgeprägten Merkmalen beinhalten die pluralen Attribute dabei einen ganzzahligen Index als Eigenschaft (index), der vom System ausgehend vom Startwert "0" hochgezählt wird.

Für den Zugriff auf plurale Inhalte gibt es spezielle Resolver (s. Attribut (Wertauflöser)), insbesondere den Plurale Attribute (Wertauflöser) und den Typisierte plurale Attribute (Wertauflöser).

►HINWEIS◄ Die Index-Werte von pluralen Attributen können z. B. durch Zuweisungen in einer Ereignisbehandlung überschrieben werden, um die Reihenfolge der Elemente zu beeinflussen. Dabei können zunächst beliebige Ganzzahlen zugewiesen werden. Beim Laden der Daten in ein Formular, das das plurale Element beinhaltet (ggf. auch unsichtbar und inaktiv) werden die Elemente nach aufsteigendem Index sortiert und erhalten dann auch wieder systematische Index-Werte aufsteigend von 0. Diese automatische Nummerierung kann bei Bedarf auch innerhalb der Ereignisbehandlung vorweggenommen werden, indem nach der eigentlichen Manipulation eine Für jeden Eintrag wiederholen (Schleife) über alle Elemente der Auszählung ausgeführt wird, die den Wert des Schleifenzählers (Variable $index) als Index setzt. Nur dann steht der systematische Index sofort für nachfolgende Aktionen zur Verfügung.

Das folgende Beispiel zeigt einen Ausschnitt aus der XML-Struktur einer Sendung mit einem singulären Textattribut ("DESTINATION_COUNTRY") und einem pluralen Textattribut ("CONTAINER_NO") mit drei Elementen. Der direkte Vergleich zeigt, dass die Struktur der einzelnen Elemente des plurales Textattributs abgesehen von der Index-Eigenschaft identisch mit der eines einfachen Textattributs ist.

<shp:Shipment [...]>
[...]
<attributes>
[...]
<shp:ShipmentText id="1901" [...]>
<value textType="DESTINATION_COUNTRY">
<textValue>AUS (AUSTRALIA)</textValue>
</value>
</shp:ShipmentText>
<shp:ShipmentText id="1824" [...]>
<value textType="CONTAINER_NO" index="0">
<textValue>JFGU2018119</textValue>
</value>
</shp:ShipmentText>
<shp:ShipmentText id="1827" [...]>
<value textType="CONTAINER_NO" index="1">
<textValue>SCMJ1248422</textValue>
</value>
</shp:ShipmentText>
<shp:ShipmentText id="1826" [...]>
<value textType="CONTAINER_NO" index="2">
<textValue>JFGU2018042</textValue>
</value>
</shp:ShipmentText>
[...]
</attributes>
<lineItems/>
</shp:Shipment>