core:listMode="OVERWRITE"
Aktion |
XML |
Beschreibung |
Eingabe XML |
< shp :Shipment xmlns:shp = 'SCM.SHIPMENT' xmlns:core = 'CORESYSTEM' > < lineItems > < lineItem lineItemId = '1' numberOfPackages = '10' /> < lineItem lineItemId = '1.1' numberOfPackages = '11' /> < lineItem lineItemId = '1.2' numberOfPackages = '12' /> < lineItem lineItemId = '2' numberOfPackages = '20' /> < lineItem lineItemId = '2.1' numberOfPackages = '21' /> < lineItem lineItemId = '2.2' numberOfPackages = '22' /> < lineItem lineItemId = '3' numberOfPackages = '30' /> < lineItem lineItemId = '3.1' numberOfPackages = '31' /> < lineItem lineItemId = 'X1' numberOfPackages = '91' /> < lineItem lineItemId = 'X2' numberOfPackages = '92' /> </ lineItems > </ shp :Shipment> |
Ein einfaches Sendungsobjekt mit Positionen |
Update XML |
< shp :Shipment xmlns:shp = 'SCM.SHIPMENT' xmlns:core = 'CORESYSTEM' xmlns:base = 'SCM.BASE' > < lineItems core:listMode = "OVERWRITE" base:keepTrees = 'X' > < lineItem lineItemId = '1' numberOfPackages = '100' /> < lineItem lineItemId = '1.1' numberOfPackages = '110' /> < lineItem lineItemId = '2' numberOfPackages = '200' base:keepChildren = 'true' /> < lineItem lineItemId = '2.1' numberOfPackages = '210' /> </ lineItems > </ shp :Shipment> |
Das Attribut core:listMode="OVERWRITE" ändert den Listenmodus von "APPEND" auf "OVERWRITE". Positionen werden automatisch anhand des Attributs "lineItemId" aufgelöst. Das Attribut base:keepTrees='X' ist nur für Positionen gültig. Hierbei werden alle Positionen vom typ "X" behalten (siehe Oben) Das Attribut base:keepChildren='true' ist ebenfalls nur für Positionen gültig. Hierbei werden alle Subpositionen von lineItemId='2' behalten |
Ergebnis XML |
< shp :Shipment xmlns:shp = 'SCM.SHIPMENT' xmlns:core = 'CORESYSTEM' > < lineItems > < lineItem lineItemId = '1' numberOfPackages = '100' /> < lineItem lineItemId = '1.1' numberOfPackages = '110' /> < lineItem lineItemId = '2' numberOfPackages = '200' /> < lineItem lineItemId = '2.1' numberOfPackages = '210' /> < lineItem lineItemId = '2.2' numberOfPackages = '22' /> < lineItem lineItemId = 'X1' numberOfPackages = '91' /> < lineItem lineItemId = 'X2' numberOfPackages = '92' /> </ lineItems > </ shp :Shipment> |
Wie zu sehen ist, wurden die Positionen 1.2, 3 und 3.1 entfernt, da diese nicht im Update XML enthalten sind. |