Beschreibung
Titel | Hinzufügen, Änderung und/oder Löschen einer Produktoption zu einem laufenden Auftrag |
---|---|
Kurzbeschreibung | Folgender Ablauf beschreibt die typischen Interaktionen zwischen Auftraggeber und Leistungserbringer im Anwendungsfall "Hinzufügen, Änderung und/oder Löschen einer Produktoption zu einem laufenden Auftrag". Beispiel: Hinzufügen optionalen Serviceleistung für ein Hauptprodukt (Telekom) Dabei werden die für diesen Ablauf erforderlichen Auftrags-Status durchlaufen und die für diesen Ablauf relevanten Informationen übermittelt. Hinweis: Die Taskresource wird syntaktisch synchron validiert: Pflichtparameter gesetzt etc. (Folge-Zustand Acknowledged) Danach wurde sie fachlich validiert: PO existiert und im richtigen Zustand (Folge-Zustand InProgress) Schließlich erfolgt die Aktualisierung der ProductOrder (Folge-Zustand done) |
Vorbedingung | Die dazugehörige Product Order muss existieren und kaufmännisch validiert sein, so dass sich der Auftrag mindestens im Status accepted befindet. (nicht abgebrochen oder beendet) Die Produktposition muss einen Bezug zum Hauptprodukt haben (ProductOrder ResourceModel) Mindestens alle Pflichtfelder für die Meldung eines Montagehinweises sind laut Auftragsmedestruktur gefüllt. Ein Hinzufügen, Änderung und/oder Löschen muss erst abgeschlossen sein, bevor eine erneute Aktion gestartet werden kann. |
Auslöser | Auftraggeber möchte beim Leistungserbringer eine optionale Serviceleistung für eine laufende ProductOrder buchen |
Ergebnis | Die Produktposition wurde erfolgreich der ProductOrder hinzugefügt, geändert oder gelöscht. |
Ablauf
Beispieldaten
Im Beispiel wird eine optionale Serviceleistung ergänzt
POST AmendProductOrder (1)
fachliche Felder | Daten | API Felder |
---|---|---|
technisches Event Datum | 2022-05-12T08:45:00+02:00 | EventTime |
zu ändernde Order | 388a4963-f168-4603-99e8-477200099d91 | AmendProductOrder/productOrder.id |
zu ergänzende optionale Serviceleistung | ||
Aktionscode der AmendAction | add | AmendProductOrder/amendProductOrderItem.amendAction |
Auftragsposition | 2 | AmendProductOrder/amendProductOrderItem/productOrderItem.id |
Aktionscode des OrderItems | add | AmendProductOrder/amendProductOrderItem/ProductOrderItem.action |
Produktname | "Bereitstellung Komfort" | AmendProductOrder/amendProductOrderItem/productOrderItem/productOffering.name |
Beziehung zum zweiten ProductOrderItem | 1 | AmendProductOrder/amendProductOrderItem/ProductOrderItem/productOrderItemRelationship.id |
dependsOn | AmendProductOrder/amendProductOrderItem/ProductOrderItem/productOrderItemRelationship.relationshipType |
AmendProductOrderStateChangeEvent: inProgress (3)
fachliche Felder | Daten | API Felder |
---|---|---|
technisches Event Datum | 2022-05-12T11:30:00+02:00 | EventTime |
Status Wechsel auf inProgress Status: Datum/Uhrzeit des Statuswechsels | inProgress 2022-05-11T11:30:00+02:00 | AmendProductOrder.state AmendProductOrder.stateChangeDate |
AmendProductOrder erfolgreich
ProductOrderAttributeValueChangeEvent (4)
fachliche Felder | Daten | API Felder |
---|---|---|
technisches Event Datum | 2022-05-12T11:31:00+02:00 | EventTime |
Auftragsposition | 2 | ProductOrder/productOrderItem.id |
Aktionscode | add | ProductOrder/ProductOrderItem.action |
Produktname | "Bereitstellung Komfort" | ProductOrder/ProductOrderItem/productOffering.name |
AmendProductOrderStateChangeEvent: done (5)
fachliche Felder | Daten | API Felder |
---|---|---|
technisches Event Datum | 2022-05-12T11:31:10+02:00 | EventTime |
Status Wechsel auf done Status: Datum/Uhrzeit des Statuswechsels | done 2022-05-11T11:31:10+02:00 | AmendProductOrder.state AmendProductOrder.stateChangeDate |