Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

...

TitelAuftrag (Providerwechsel / Verbundleistung) anlegen
Kurzbeschreibung

Folgender Ablauf beschreibt die typischen Interaktionen zwischen dem aufnehmenden Auftrageber (EKPauf und TNBauf, im zweiten Sequenzdiagramm "Buyer of new line" bezeichnet), dem Leistungserbringer (LE, im zweiten Sequenzdiagramm "Seller of new line" bzw. "Seller of old line" bezeichnet) und dem abgebenden Auftraggeber (EKPab und TNBab, im zweiten Sequenzdiagramm "Buyer of old line" bezeichnet) im Anwendungsfall "Auftrag (Providerwechsel / Verbundleistung) anlegen" von der Anlage des Auftrags bis zu seinem Abschluss.

Ein Providerwechsel / Verbundleistung sind ist nur dann möglich, wenn keine weiteren offenen Aufträge zum Bestand des Auftraggebers vorliegen. Dies gilt sowohl für Aufträge des bestandsführenden Auftraggebers als auch von anderen Auftraggebern.

Dabei werden die für diesen Ablauf erforderlichen Auftrags-Status durchlaufen und die für diesen Ablauf relevanten Informationen übermittelt.

Zu diesen Anwendungsfall sind die zwei folgenden Sequenzen relevant:

  1. Die Vorabstimmung
  2. Die Durchführung
Vorbedingung
  • Rahmenverträge und Dienstverträge sind vorhanden
  • Der Auftraggeber hat die Verfügbarkeit des Produktes geprüft
  • Mindestens alle Pflichtfelder für eine Product Order im Anwendungsfall Neu PV oder VBL sind laut Auftragsmedestruktur gefüllt Auftrags-/Meldungsstruktur (download) gefüllt.
  • Es liegt kein anderer offener Auftrag zum betroffenen Bestand (z.B. für den Anschluss oder dem Übertragungsweg) für den Wechselauftrag vor.
AuslöserDer aufnehmende Auftraggeber legt einen Auftrag für den Providerwechsel bzw. die Verbundleistung beim Leistungserbringer (ANE) an.
Ergebnis

Das Produkt wurde erfolgreich bereitgestellt.

Voraussetzung für eine erfolgreiche Bereitstellung des Produktes durch den EKPauf ist die Zustimmung des TNBab zum Wechsel des EKP (siehe RespondProviderChange)

Ablauf

Durchführung der Vorabstimmung

Die Vorabstimmung wird durch die unter Verwendung der WBCI Schnittstelle zwischen EKPauf und EKPabg durchgeführt.

...

  • Ermittlung des Wechseldatums durch den EKPabg
  • Ermittlung der WITA Vertragsnummer (Telekom) bzw LINE-ID (NGAB), sowie der Technologie der Ressource durch den EKPabg
  • Klärung, ob die Ressource übernommen werden soll durch den EKPauf

src
Img
Bitbucket file macro
urlhttps://www.plantuml.com/plantuml/svg/SoWkIImgAStDuKeiBSdFAyrDIYtYIiglK0XtSlRaAW3APIPd5YJcbIYa9fQcAIGMAoYvUWSe0DbAQB992Caa9Iu5Bh1wNJkGZ9L2cAEkTwYhhc-G7qJSHXSY7kGQwgiRveYgsD5RrpSaYCiXDIy5w300

Codeblock
languagetext
titleVorabstimmung
linenumberstrue
collapsetrue
@startuml
autonumber
box WBCI
participant eauf as "EKP auf"
participant eab as "EKP ab"

eauf -> eab: VA-KUE-MRN
eauf <- eab: REUM-VA
eauf -> eab: AK-MTR

Produktbeauftragung

Die Produtbeauftragung

bitbucket.org/fit-api/fit-api/src/main/tmf622/assets/WBCI_PreliminaryProcess.puml
syntaxHighlightingPlantUML

Produktbeauftragung

Die Produktbeauftragung gliedert sich in zwei Abschnitte

  • Die Product Order mit der Category "providerChange" bzw. "providerTechnologyChange", welche vom AGauf an den LE gestellt wird.
  • Die Product Order mit der Category "terminationProviderChange", welche der LE einstellt.

...

Darüber hinausgehende, technisch denkbare Möglichketen der Einflussnahme durch dem AGab (Stornierung, Terminverschiebung etc.) müssen vom LE abgewiesen werden.

Img
src
Bitbucket file macro
urlhttps://www.plantuml.com/plantuml/png/jLRTRjis5BxtKnmK660Z_gcTTacDTQkTEaEGfF5YrpT5BcZfME9AaHfvQDTxdZp6xl9YesGwKJIbBhmaG6IPF4VVp_ae-8CXfiaceiOiAMcJEUeQv7-rkVe6qylJdtiz66iLse3WIeUecn0mmaZfzVlnh9QwVXxmb4a2P7O1pC2heLsZ1hK0YIiGN69_qyfbzEfH1sqx9YX4kUKnxAiYhrt4fgWJBXbn9Lt9ahlTHxW2sRo4gqHOYLicF2yez6rbXPwe_yXTQVsQQ-t3-6eotGBa7VMqyEMCC3dHo0YRC1kSXOrDzo-jbc_llUx2fY2ii-2hL2k1OOIkK2f2q3oAgGzkBamGdBkMvEvMIcw2667610yvQYiZS0lYxZOYM60i75CFur6A_2R4o9gJcCa8HqkKL1zVDU4Q_yI0ohY3uV2oXiBWzw1HBvI8DF8WtWDu40IOvi00HUW_HaEtGjxhRBxzR9ylrkUVHzjQjKITxpM1ieAF7662VrcKVyENBp5HQlgTJg3aGhYr0DlKCcj3c9XMafWssaxA8ZIT9STLTjTcGHQntxBxi_3zspT7xzuUTT-yXe5Ta6OHrC_l_f4XZpBTeTL131UZ9ln-wYRKcGql6i2am0ZbpGsik0uXvgY1ow_2PcvH3NAsJb5kpqRFzUVHPMiygxCqTT5ceWaQcL4oSoIRkiI84LyY-4AtN9IV6TxqTayunlWioe-FZW-FkiTTw3RWqpq1DAcIuVO4RaO9TS-hSNFZgELfIPNXPSgvbbECHHPLP-KKWxWYJLQ6CDA4NBXlUT__2BFlBqVQBrU5QzlgI_oqidJj1kxjHFPUU9TsEr0-NMKtgju_0oBDvvRGFTDYaM4LAMn7RNVzbkQqJrII2io2y94H_f3xM3B_JBeAnzUOQWygpTzu_z1QuVuBwznZrhkK-c5NH7zrTnjhb264gE4QcU1cCtjV_Xp7E-Gc5MpTeGMdJk-dthk31m87S-J9mGLoGmxKe9vhxhHfw3MADBCg-6zLViot8IxIBuUrKZjBO1B4Rf6Ob_iIWWzBWbboS8yAXusd26sbUN5-erBP7aV3f-xXxL3EpEZwmX-Ffu_8_KDyuJx9_I4Ys_G-qqkd-a2MVokr_K8x_nth3-UURWjblgFmqtItrUu9J_lyyXwW3Bq3-mvwjmV5AJkyMl7EV-RNxF-3kzX4_0i0

Codeblock
languagetext
collapsetrue
@startuml
autonumber
      
box TMF622 Product Order, category=PV
participant eauf as "Buyer of new line: Ordering"
participant tauf as "Seller of new line:  Product Order"
      
box  TMF622 Product Order, category=TerminationProvider
participant leab as "Seller of old line:  Product Order"
participant tab as "Buyer of old line: Ordering"
      
      
eauf -> tauf: POST ProductOrder(productOrderItemCreate, VAId)
eauf <-- tauf: 201 Created(acknowledged)
note right: PV
alt Kaufmännische Validierung schlägt fehl
  eauf <- tauf: ProductOrderStatusChangeEvent(PO, Rejected)
note right: ABBM
else Kaufmännische Validierung erfolgreich
  eauf <- tauf: ProductOrderStatusChangeEvent(PO, Accepted)
  note right: QEB
  tauf -> leab: notifyKUE
  note over leab, tab: Die Sequenz [[https://confluence.t-systems-mms.eu/pages/viewpage.action?pageId=547957140 Auftrag (Kündigung durch LE, GF PV/VBL) anlegen]] wird hier inkludiert
  leab ->tauf:notifyRUEM-PV(approval, reason)
  alt negative RUEM-PV
    note over eauf, tauf: Siehe [[https://confluence.t-systems-mms.eu/pages/viewpage.action?pageId=587837181 1) Negative RespondProviderChange (RUEM-PV)]]
  else positive RUEM-PV
    alt Fehlschlag Technische Validierung und Erteilung
      eauf <- tauf: ProductOrderStatusChangeEvent(PO, Rejected)
      note right: ABBM
      tauf -> leab: notifyRejected
      leab -> tab: ProductOrderStatusChangeEvent(PO2, Rejected)
      note right: ABBM-PV
    else Technische Validierung und Erteilung erfolgreich
      eauf <- tauf: POST ProductOrderAttributeValueChangeEvent()
      note right: e.g.: expectedCompletionDate
      eauf <- tauf: ProductOrderStateChangeEvent(PO,InProgress)
      note right: ABM
      tauf -> leab:notifyInProgress
      leab -> tab:POST ProductOrderAttributeValueChangeEvent()
      note right: e.g.: expectedCompletionDate
      leab -> tab: ProductOrderStatusChangeEvent(PO2, InProgress)
      note right: ABM-PV
      alt Fehlschlag während der Realisierung
        note over eauf, tauf: Siehe [[https://confluence.t-systems-mms.eu/display/tfit/2%29+Fehlschlag+beim+Leistungserbringer 2) Fehlschlag beim Leistungserbringer]]
      else Realisierung erfolgreich
        alt Fehlschlag am Schalttag
          note over eauf, tauf: Siehe [[https://confluence.t-systems-mms.eu/display/tfit/3%29+Fehlschlag+am+Schalttag 3) Fehlschlag am Schalttag]]
        else Schaltung erfolgreich
          eauf <- tauf: ProductOrderStateChangeEvent(PO,Completed)
          note right: ERLM
          tauf -> leab:notifyInCompleted
          leab -> tab: ProductOrderStatusChangeEvent(PO2, Completed)
          note right: ERLM-PV
          eauf <- tauf: POST ProductOrderAttributeValueChangeEvent()
          note right: e.g.: productOrderItem.product.startDate
          eauf <- tauf: ProductOrderStateChangeEvent(PO,Closed)
          note right: ENTM
          tauf -> leab:notifyInClosed
          leab -> tab: POST ProductOrderAttributeValueChangeEvent()
          note right: e.g.: productOrderItem.product.terminationDate
          leab -> tab: ProductOrderStatusChangeEvent(PO2, Closed)
          note right: ENTM-PV
        end
      end
    end
  end
end
@enduml

Beispieldaten (linker Block, TNBauf ↔ ANE)

Post ProductOrder (providerChange)

ProductOrderStateChangeEvent: Accepted

...

bitbucket.org/fit-api/fit-api/src/main/tmf622/assets/ProviderChange.puml
syntaxHighlightingPlantUML

Beispieldaten (linker Block, TNBauf ↔ ANE) (1)

Post ProductOrder (providerChange)

Bitbucket file macro
collapsibletrue
urlhttps://bitbucket.org/fit-api/fit-api/src/main/tmf622/examples/product-order-provider-change-0.json
syntaxHighlightingJSON

fachliche FelderDaten API Felder
Auftragsdaten

fachliches Bestelldatum des AG2022-05-11T10:30:00+01:00productOrder.orderPostedDate
GeschäftsfallproviderChangeproductOrder.category
Kundendaten
Kundenwunschtermin2022-12-01T12:00:00+01:00
(Uhrzeit fachlich nicht relevant, aber technisch erforderlich)

requestedCompletionDate

LageTAE_ONTFlur

product.networkTerminationLocation

HomeIDa12d5a4545

productOrderItem/product.homeID 

SeriennummerONT1515515155115

additionalOrderInformation.hardwareIdType = "OntSerialNumber"

additionalOrderInformation.hardwareIdValue = "1234567890"

Anschlussadresse
RolelocationAproductOrderIteam/product/place.role
StraßennameBiberwegproductOrderIteam/product/place.streetName
Hausnummer2productOrderIteam/product/place.streetNr
HausnummernzusatzaproductOrderIteam/product/place.streetNrSuffix
GebäudeteilEinfamilienhausproductOrderIteam/product/place.geographicSubAddress.buildingName
LandDEUproductOrderIteam/product/place.country
Postleitzahl59055productOrderIteam/product/place.postcode
OrtsnameRheinhausenproductOrderIteam/product/place.city
zur Anschlussadresse gehörender Name ("Klingelschild")
RolelocationAContactrelatedParty.role
AnredeHerrrelatedParty.salutation
VornameMaximilianrelatedParty.givenName
NachnameMüllerrelatedParty.familyName
Vorabstimmungsdaten
VA-IDDEU.1UND1.V012345678

ProductOrder/agreement.businessId = "DEU.VFD.V012345678"

ProductOrder/agreement.agreementType="providerChangeAgreement"

ProductOrder/agreement.name ="providerChangeAgreement"

Installationskontakt
RoleinstallationContactrelatedParty.role
AnredeHerrrelatedParty.salutation
VornameAlexanderrelatedParty.givenName
NachnameFischerrelatedParty.familyName
Telefonnummer0221/145155

relatedParty/contactMedium.mediumType = "PhoneContactMedium"

relatedParty/contactMedium/characteristic.contactType = "fixed"

relatedParty/contactMedium/characteristic.phoneNumber 

Mobilfunknummer17878878788

relatedParty/contactMedium.mediumType = "PhoneContactMedium"

relatedParty/contactMedium/characteristic.contactType = "mobile"

relatedParty/contactMedium/characteristic.phoneNumber 

Email-Adressea.fischer@example.net

relatedParty/contactMedium.mediumType = "EmailContactMedium"

relatedParty/contactMedium/characteristic.contactType = email

relatedParty/contactMedium/characteristic.emailAddress

Produktdaten
orderItem 1 (im Rahmen des Providerwechsel bestelltes Produkt)
ID1productOrderItem.id
GeschäftsfalladdproductOrderItem.action
ProduktnameFTTH L2 PON 1000 500productOrderItem/productOffering.name
Beziehung

productOrderItem.orderItemRelationship.id = 2

productOrderItem.orderItemRelationship.relationshipType = "migrateFrom"

orderItem 2 (wegfallendes Produkt des abgebenden Anbieters)
ID2productOrderItem.id
GeschäftsfalltransferproductOrderItem.action

Identifikation des Inventars

Produkt Identifier


388a4963-f168-4603-99e8-477200099d91


Product.id

Auftraggeberdaten
Auftraggeber

Leistungs-Nummer500012

ProductOrder/agreement.businessId

ProductOrder/agreement.agreementType="buyerServiceContract"

Auftraggeber-Nummer
500011

ProductOrder/agreement.engagedParty.businessId

Besteller

Leistungs-Nummer500013

ProductOrder/agreement.businessId

ProductOrder/agreement.agreementType="ordererServiceContract"

Auftraggeber-Nummer
500014

ProductOrder/agreement.engagedParty.businessId

Extrerne Autftragsnummer

 

 

Externe Auftragsnr.

1000111

DEU.VFD

ProductOrder/externalIdentifier.id

ProductOrder/externalIdentifer.owner (=ITU-Kennung)

ProductOrder/externalIdentifer.externalIdentifierType =ProductOrder

Ansprechpartner / Auftragsmanagement
RoleorderManagementBuyerContactrelatedParty.role
AnredeHerrrelatedParty.salutation
TitelCaptainrelatedParty.title
VornameJames T.relatedParty.givenName
NachnameKirkrelatedParty.familyName
Telefonnummer0221 456789

relatedParty/contactMedium.mediumType = "PhoneContactMedium"

relatedParty/contactMedium/characteristic.contactType = "fixed"

relatedParty/contactMedium/characteristic.phoneNumber 

Mobilfunknummer017754545454

relatedParty/contactMedium.mediumType = "PhoneContactMedium"

relatedParty/contactMedium/characteristic.contactType = "mobile"

relatedParty/contactMedium/characteristic.phoneNumber 

Email-Adressej.kirk@example.net

relatedParty/contactMedium.mediumType = "EmailContactMedium"

relatedParty/contactMedium/characteristic.contactType = "email"

relatedParty/contactMedium/characteristic.emailAddress

Response (2)

Bitbucket file macro
collapsibletrue
urlhttps://bitbucket.org/fit-api/fit-api/src/main/tmf622/examples/product-order-provider-technology-change-0.json
syntaxHighlightingJSON

ProductOrderStateChangeEvent: Accepted (4)

Bitbucket file macro
collapsibletrue
urlhttps://bitbucket.org/fit-api/fit-api/src/main/tmf622/examples/product-order-provider-change-1-state-change-event-accepted.json
syntaxHighlightingJSON

fachliche FelderDaten API Felder
Orderstatus acceptedstate 
OrderstatusChangeDate2022-05-11T10:31:00+01:00stateChangeDate 
technisches EventDatum2022-05-11T10:32:00+01:00eventTime
Grund der Änderung

0000

"Keine Änderung zum Auftrag"

stateChangeReason.code

stateChangeReason.description

ProductOrderAttributeValueChange (10)

Bitbucket file macro
collapsibletrue
urlhttps://bitbucket.org/fit-api/fit-api/src/main/tmf622/examples/product-order-provider-change-2a-attribute-value-change-event-seller-contact.json
syntaxHighlightingJSON

fachliche FelderDatenAPI Felder
technisches EventDatum 2022-05-11T10:33:00+01:00eventTime
Supplier-Daten
Rolle orderManagementSellerContactrelatedParty.role
AnredeFraurelatedParty.salutation
VornameLisarelatedParty.givenName
NachnameBachrelatedParty.familyName
Telefonnummer0221/789456

relatedParty/contactMedium.mediumType = phone

relatedParty/contactMedium/characteristic.contactType = fixed

relatedParty/contactMedium/characteristic.phoneNumber 

Mobilfunknummer0178/78787878

relatedParty/contactMedium.mediumType = phone

relatedParty/contactMedium/characteristic.contactType = mobile

relatedParty/contactMedium/characteristic.phoneNumber 

Email-Adressel.bach@example.net

relatedParty/contactMedium.mediumType = email

relatedParty/contactMedium/characteristic.contactType = email

relatedParty/contactMedium/characteristic.emailAddress

Daten vom abgebenden Provider
RollehandingOverProvider

relatedParty.role

Providername
1&1 Internet AG

relatedParty.name

Zustimmung ProviderwechselTRUE

productOrder/providerChangeInfo.approval

Antwortcode0000

productOrder/providerChangeInfo.responseReason[0].code

Antworttext"keine Anmerkungen"

productOrder/providerChangeInfo.responseReason[0].description

weitere Daten
Vertragsnummer 555001

ProductOrder/agreement.businessId













ProductOrder/agreement.agreementType="singleContract"

verbindlicher Liefertermin (Datum)2022-12-16T12:00:00+01:00
(Uhrzeit fachlich nicht relevant, aber technisch erforderlich)

expectedCompletionDate

Datum+Zeitfenster (wenn erforderlich, z.B. bei Technikertermin beim Endkunden)

2022-12-16T08:00:00+01:00

2022-12-16T12:00:00+01:00

productOrderItem.appointment.validFor.startDateTime

productOrderItem.appointment.validFor.endDateTime

Termin beim Endkunden erforderlichTRUE

ProductOrderItem.endUserAppointmentIsNecessary

Anschluss (a10nsp)4711productOrderItem/product.enni
Anschluss (port)4productOrderItem/product.port
Anschluss (s-vlan)3120productOrderItem/product.svlan
Anschluss (c-vlan)7productOrderItem/product.cvlan
Anschluss (lineId)DEU.DTAG.FTYLIQ7PFTproductOrderItem/product.accessLineId
Anschluss (uebergabepunktKunde)TAEproduct.accessTerminationInterface

ProductOrderStateChangeEvent: inProgress (identisch zu Geschäftsfall Neu)

...

ProductOrderStateChangeEvent: completed (identisch zu Geschäftsfall Neu)

...

(11)

Bitbucket file macro
collapsibletrue
urlhttps://bitbucket.org/fit-api/fit-api/src/main/tmf622/examples/product-order-provider-change-4a3a-state-change-event-completed.json
showLineNumberstrue
progLangplainin-progress.json
syntaxHighlightingJSON

ProductOrderStateChangeEvent: inProgress
fachliche FelderDaten API Felder
Orderstatus inProgressstate 
fachliches Änderungsdatum 2022-05-20T10:40:00+01:00stateChangeDate 
technisches EventDatum2022-05-20T10:40:00+01:00eventTime
Grund der Änderung

0000

"Keine Änderung zum Auftrag"

stateChangeReason.code

stateChangeReason.description

ProductOrderStateChangeEvent: completed (identisch zu Geschäftsfall Neu) (15)

Bitbucket file macro
cbfa78ef-cb5e-30f5-8b3b-ec5f9d824e1d
collapsibletrueapplicationLink
urlhttps://bitbucket.org/fit-api/fit-api/src/main/tmf622/examples/product-order-provider-change-4a-state-change-event-completed.json
syntaxHighlightingJSON

ProductOrderStateChangeEvent: completed
fachliche FelderDaten API Felder
Orderstatus completedstate 
fachliches Änderungsdatum 2022-12-16T10:45:00+01:00stateChangeDate 
technisches EventDatum2022-12-16T10:45:00+01:00eventTime
Grund der Änderung

0010

"Auftrag ausgeführt."

stateChangeReason.code

stateChangeReason.description

ProductOrderAttributeValueChange (identisch zu Geschäftsfall Neu)

...

(18)

Bitbucket file macro
collapsibletrue
urlhttps://bitbucket.org/fit-api/fit-api/src/main/tmf622/examples/product-order-provider-change-5a-attribute-value-change-event-start-date.json
showLineNumberstrue
progLangplain
collapsibletrue
applicationLinkcbfa78ef-cb5e-30f5-8b3b-ec5f9d824e1d
syntaxHighlightingJSON

ProductOrderAttributeValueChange (setzen von startDate)
fachliche FelderDatenAPI Felder
technisches EventDatum 2022-12-16T10:45:30+01:00eventTime
Nutzungsdatum 2022-12-16T10:45:00+01:00product.startDate

ProductOrderStateChangeEvent: closed (identisch zu Geschäftsfall Neu)

...

(19)

Bitbucket file macro
cbfa78ef-cb5e-30f5-8b3b-ec5f9d824e1d
collapsibletrue
urlhttps://bitbucket.org/fit-api/fit-api/src/main/tmf622/examples/product-order-provider-change-6a-state-change-event-closed.json
showLineNumberstrue
progLangplain
collapsibletrue
applicationLinksyntaxHighlightingJSON

ProductOrderStateChangeEvent: closed
fachliche FelderDaten API Felder
Orderstatus closedstate 
fachliches Änderungsdatum 2022-12-16T10:46:00+01:00stateChangeDate 
technisches EventDatum2022-12-16T10:46:00+01:00eventTime
Grund der Änderung

0010

"Auftrag ausgeführt."

stateChangeReason.code

stateChangeReason.description

...