Beschreibung
Titel | Auftrag (Providerwechsel / Verbundleistung) anlegen |
---|---|
Kurzbeschreibung | Folgender Ablauf beschreibt die typischen API Interaktionen zwischen dem aufnehmenden Auftrageber (EKPauf und TNBauf, aka AGauf), dem Leistungserbringer (LE, aka ANE) und dem abgebenden Auftraggeber (EKPab und TNBab, aka ABab) für die Anwendungsfälle "Auftrag (Providerwechsel / Verbundleistung) anlegen - Schlechtfall Negative RespondProviderChange (RUEM-PV)". Zu diesen Anwendungsfall sind zwei Sequenzen relevant:
|
Vorbedingung |
|
Auslöser | Der aufnehmende Auftraggeber legt einen Auftrag für den Providerwechsel bzw. die Verbundleistung beim Leistungserbringer (ANE) an. Schlechtfall: Am Schalttag kann die Bereitstellung nicht erfolgen. |
Ergebnis | Der Leistungserbringer fordert beim aufnehmenden Provider einen neuen Termin an (Status "Pending" - Information Required (TAM)) Der Leistungserbringer sendet an den abgebenden Provider eine Verzögerungsmeldung (ProcessingMessage "OrderDelay", (VZM-PV)) Nach erfolgter Terminverschiebung durch den aufnehmenden Provider sendet der Leistungserbringer an den abgebenden Provider eine Information über den neuen Bereitstellungstermin: ProcessingMessage "orderConfirmationUpdate", (erneute ABM-PV) Der weitere Verlauf wird hier nicht mehr betrachtet. |
Ablauf
Variante erfolgreiche Schaltung nach Terminanforderung
Beispieldaten (linker Block, TNBauf ↔ ANE)
8) ProductOrderStateChangeEvent: pending
ProductOrderStateChangeEvent: pending | ||
fachliche Felder | Daten | API Felder |
Orderstatus | pending | state |
fachliches Änderungsdatum | 2022-12-16T11:30:00+01:00 | stateChangeDate |
technisches EventDatum | 2022-12-16T11:30:00+01:00 | eventTime |
Grund der Änderung | 6001 "Endkunde nicht angetroffen" | stateChangeReason.code stateChangeReason.description |
11) ProductOrderInformationRequiredEvent
fachliche Felder | Daten | API Felder |
---|---|---|
Feld, zu dem eine Information benötigt wird | /requestedCompletionDate replace | fieldPath.path fieldPath.typeOfChange |
12) POST RescheduleProductOrder
fachliche Felder | Daten | API Felder |
---|---|---|
Verschobener Kundenwunschtermin | 2022-12-19T12:00:00+01:00 | rescheduledRequestedCompletionDate |
Wunschzeitfenster | 2022-12-19T08:00:00+01:00 2022-12-19T12:00:00+01:00 | productOrderItem.requestedTimeSlot.validFor.startDateTime productOrderItem.requestedTimeSlot.validFor.endDateTime |
13b) POST RescheduleProductOrderStateChangeEvent: inProgress
fachliche Felder | Daten | API Felder |
---|---|---|
technisches EventDatum | 2022-12-16T11:40:10+01:00 | eventTime |
Orderstatus | inProgress | event.rescheduleProductOrder.state |
Orderstatus Änderungsdatum | 2022-12-16T11:40:10+01:00 | event.rescheduleProductOrder.stateChangeDate |
14) POST ProductOrderAttributeValueChangeEvent
fachliche Felder | Daten | API Felder |
---|---|---|
technisches EventDatum | 2022-12-16T11:40:20+01:00 | eventTime |
Kundenwunschtermin | 2022-12-19T12:00:00+01:00 | event.productOrder.requestedCompletionDate |
Wunschzeitfenster | 2022-12-19T08:00:00+01:00 2022-12-19T12:00:00+01:00 | event.productOrder.productOrderItem.requestedTimeSlot.validFor.startDateTime event.productOrder.productOrderItem.requestedTimeSlot.validFor.endDateTime |
15) POST RescheduleProductOrderStateChangeEvent: done
fachliche Felder | Daten | API Felder |
---|---|---|
technisches EventDatum | 2022-12-16T11:40:20+01:00 | eventTime |
Orderstatus | done | event.rescheduleProductOrder.state |
Orderstatus Änderungsdatum | 2022-12-16T11:40:20+01:00 | event.rescheduleProductOrder.stateChangeDate |
16) ProductOrderAttributeValueChangeEvent
fachliche Felder | Daten | API Felder |
---|---|---|
technisches EventDatum | 2022-12-16T11:40:25+01:00 | eventTime |
Verbindlicher Liefertermin | 2022-12-19T12:00:00+01:00 | event.productOrder.expectedCompletionDate |
Vereinbartes Zeitfenster | 2022-12-19T08:00:00+01:00 2022-12-19T12:00:00+01:00 | event.productOrder.productOrderItem.appointment.validFor.startDateTime event.productOrder.productOrderItem.appointment.validFor.endDateTime |
17) ProductOrderStateChangeEvent: inProgress
ProductOrderStateChangeEvent: inProgress | ||
fachliche Felder | Daten | API Felder |
Orderstatus | inProgress | state |
fachliches Änderungsdatum | 2022-12-16T11:40:30+01:00 | stateChangeDate |
technisches EventDatum | 2022-12-16T11:40:30+01:00 | eventTime |
Grund der Änderung | 0011 "Montage beim Endkunden erforderlich." | stateChangeReason.code stateChangeReason.description |
21) ProductOrderStateChangeEvent: completed
ProductOrderStateChangeEvent: completed | ||
fachliche Felder | Daten | API Felder |
Orderstatus | completed | state |
fachliches Änderungsdatum | 2022-12-19T10:00:00+01:00 | stateChangeDate |
technisches EventDatum | 2022-12-19T10:00:00+01:00 | eventTime |
Grund der Änderung | 0010 "Auftrag ausgeführt." | stateChangeReason.code stateChangeReason.description |
vor 24) ProductOrderAttributeValueChange
ProductOrderAttributeValueChange (setzen von startDate) | ||
fachliche Felder | Daten | API Felder |
technisches EventDatum | 2022-12-19T10:00:30+01:00 | eventTime |
Nutzungsdatum | 2022-12-19T10:00:00+01:00 | product.startDate |
24) ProductOrderStateChangeEvent: closed
ProductOrderStateChangeEvent: closed | ||
fachliche Felder | Daten | API Felder |
Orderstatus | closed | state |
fachliches Änderungsdatum | 2022-12-19T10:01:00+01:00 | stateChangeDate |
technisches EventDatum | 2022-12-19T10:01:00+01:00 | eventTime |
Grund der Änderung | 0010 "Auftrag ausgeführt." | stateChangeReason.code stateChangeReason.description |
Variante LineInUse
→ gemäß Absprache in UAG01: hierzu wird kein Beispiel erzeugt
Variante Cancel
→ gemäß Absprache in UAG01: hierzu wird kein Beispiel erzeugt