170 likes | 279 Views
Process Flow for TSS - Supplier. This document describes the process and interdialogue rules in the NeBI interface between TSS and subcontractors. Security: Public. Document history. 2003-12-11 Ove Fritz C 2004-02-23 Lars Abrell D
E N D
Process Flow for TSS - Supplier This document describes the process and interdialogue rules in the NeBI interface between TSS and subcontractors.Security: Public
Document history 2003-12-11 Ove Fritz C 2004-02-23 Lars Abrell D 2005-10-11 Per Rudal PE1 RenegOrder init av FNS uppdaterad, ny slide ExecuteOrder med OEAjusterade format (master slide), puts 2005-10-11 Per Rudal PE2 FNS ändrat till Supplier, puts av slide Villkor 2005-11-04 Per Rudal PE3 Nya slides Dialogöversikt o Affärsregler. ExecuteOrder med OEA borttagen tills vidare. 2005-11-04 Hans Guste PE3_1 Rubrik Affärsregler ändrad till Interdialogregler, Approved tillagt sid 1 2005-11-18 Anders Hultin PE3_2 Interdialogregler kommenterade efter internt Relacommöte 2005-12-07 Per Rudal PE4 Interdialogreglerna uppdaterade efter e-gs-forum 29/11.CancelOrder: ruta 6b, “ESN2”, är ny.RenegOrderBySup: ruta 12, “manuell hantering” är borttagen. 2005-12-23 Per Rudal PE5 Interdialogreglerna uppdaterade efter e-gs-forum 14/12 (h-regel 4, tillägg 4-6)Nya slides: 2 Transaktionsmönster, 3 Omsändning o larm 2006-01-16 Per Rudal PE6 Uppdatering efter e-gs-forum 11/1: slide 2, Transaktionsmönster; slide 3, Omsändning, heart-beat o larm; slide 11, Inderdialogregler 2, punkt 2, 3, 6. 2006-06-20 Per Rudal E Version för gränssnittsdokument J.PE7 utgår. Röd reservationstext i Interdialogreglerna borttagen. 2006-06-20 Per Rudal F Version för gränssnittsdokument K.Ny slide 9, RenegotiateOrder initierad av Supplier alt B. 2006-06-20 Per Rudal PG1 Dialog för leveransgodkännande, “ExecuteOrder med OEA” återinförd (jmfr PE1 o PE2 ovan) 2006-10-20 Per Rudal PG2 slide 3: Omsändning http-nivå Telia: 3*120s -> 7*4minslide 4 Dialogöversikt + slide 9, Reneg Supplier alt B + slide 11, EO m levgodk: version 3.1 -> 4.0 2006-11-08 Per Rudal G Version för gränssnittsdokument L 2006-12-01 Per Rudal PH1 Version för gränssnittsdokument MNy layout. Ny slide 6, NegotiateOrder med förhandling + slide 4, Dialogöversikt uppdaterad 2007-01-19 Hans Guste, Per Rudal PH2 Translation to English. New doc name “NeBi_proc_TSS-Supplier PH2”. New slide Dialogue rules. Inter-dialogue rules updated. 2007-01-31 Per Rudal H Process version for NeBI_doc_TSS-Supplier_M.doc (no changes except for version and date) 2007-02-15 Per Rudal PI1 Process version for NeBI_doc_TSS-Supplier_PN1.doc: added dialogue InvoiceDetail
Transaction pattern NeBI Responder Initiator 1. B2B Application 2. Request (dialog + trans) B2B 3. ebMS service + action (=dialog + trans) 4. ebMS header validation Trans A 6. Ack / Error 5. MSHack / Error 7. Application 8. Request (dialog + trans) 9. Dialog X 10. 11. Request (dialog + trans) 12. ebMS service + action (=dialog + trans) 13. ebMS header validation Trans B 15. Ack / Error 14. MSHack / Error 16. Request (dialog + trans) 17. • The dialogue above is an example. The dialogue X consists of two transactions, A and B, that are inititiated by different parties. The internal flow of a party is determined by the party itself (the figure function names are just examples). The focus of the figure is the common NeBI-interface which shows the transaction pattern for all transactions used in the interface: • A transaction request is an http-request holding one ebMS-message including a business document, e g an Order • A transaction reply is a new http-request holding one ebMS-message containing an MSH-ack or Error
Resending, heart-beat and alarm This slide describes the resending pattern, heart-beats and alarms for (missing) events in the NeBI interface.All values are configurable. Current values are indicated. • Resending on http-levelIf http-returnis not received for an http-request, then: • TSS will resendthe http-request every4min7times • Eltel will resend the http-request every 120s during 24h • Resending on transaction levelIf MSH-ack (Message Service Handler Acknowledgment) is not received for a transaction, then: • TSS will resendthe trans every 10 minutesduring 24h (given http-return is received, see 1 above) • Relacom will resendthe transwith increasing intervalduring 24h • Eltel will resendthe trans every10 minutesduring 24h (given http-return is received, see 1 above) • Heart-beatTSS sends fictitious orders (also called Topaz-order) every 15 minutes to be able to supervise the functionality of the flow also when normal traffic is low. • Transaction alarm • TSS If OA is not received by TSS withinX minutesafter OR is sent, TSS supervision staff will be notified (historically called 15-minutes alarm). The time is configurable per business agreement. • Relacom will supervise TSS heart-beat • Eltel will supervise TSS heart-beat
Dialogue overview • NegotiateOrder [nebi.biz:BC:NegotiateOrder_3.0] • NegotiateOrder with order content negotiation [nebi.biz:BC:NegotiateOrder_4.0] • RenegotiateOrderinitiated by TSS [nebi.biz:BC:RenegotiateOrder_3.0] • RenegotiateOrderintiiated by Supplier alt A [nebi.biz:BC:RenegotiateOrder_3.0] • RenegotiateOrderinitiated by Supplier alt B [nebi.biz:BC:RenegotiateOrder_4.0] • CancelOrder [nebi.biz:BC:CancelOrder_3.0] • ExecuteOrder [nebi.biz:BC:ExecuteOrder_3.0] • ExecuteOrder with delivery acceptance [nebi.biz:BC:ExecuteOrder_4.0] • InvoiceDetail [nebi.biz:BC:InvoiceDetail_4.0]
NegotiateOrder[nebi.biz:BC:NegotiateOrder_3.0] Supplier TSS Application B2B B2B Application NeBI 1. OrderRequestByBuyer a) Send order b) Is the order acceptable? 2. OrderAcknowledgment BySupplier c) Accept order d) Reject order 3. DialogueCancellationBySupplier
NegotiateOrderwith order content negotiation [nebi.biz:BC:NegotiateOrder_4.0] Supplier TSS Application B2B B2B Application NeBI 1. OrderRequestByBuyer a) Send order b) Is the order acceptable? 2. OrderAcknowledgment BySupplier c) Accept order d) Reject order 3. DialogueCancellationBySupplier e) Change order 4. OrderRequestBySupplier f) Is the change acceptable? g) Accept changed order 5. OrderAcknowledgmentByBuyer i) Change Supplier order 6. DialogueCancellationByBuyer h) Reject order
RenegotiateOrder initiated by TSS[nebi.biz:BC:RenegotiateOrder_3.0] Supplier TSS Application B2B B2B Application NeBI 1. OrderUpdateRequestByInitiator a) Change order b) Is the change acceptable? c) Accept change 2. OrderUpdateAcknowledgment ByResponder d) Reject change 3. DialogueCancellationByResponder
RenegotiateOrder initiated by Supplier alt A[nebi.biz:BC:RenegotiateOrder_3.0] Supplier TSS Application B2B B2B Application NeBI a) Request Order change 1. OrderUpdateProposalRequestByInitiator b) Is the change acceptable? c) Reject the change request 2. DialogueCancellationByResponder 3. OrderUpdateRequest ByResponder d) Change the order e) If the OUPR concerns a cancellation the dialogue is ended and TSS initiates a new CancelOrder dialogue. f) Is the change acceptable? g) Accept the change 4. OrderUpdateAcknowledgment ByInitiator h) Reject the change 5. DialogueCancellation ByInitiator
RenegotiateOrder initiated by Supplier alt B[nebi.biz:BC:RenegotiateOrder_4.0] Supplier TSS Application B2B B2B Application NeBI a) Change order 1. OrderUpdateRequestBySupplier b) Is the change acceptable? c) Accept order change 2. OrderUpdateAcknowledgmentByBuyer d) Reject order change 3. DialogueCancellationByBuyer
CancelOrder[nebi.biz:BC:CancelOrder_3.0] Supplier TSS Application B2B B2B Application NeBI a) Cancel order 1. OrderCancellationRequest b) Is the cancellation acceptable? c) Accept cancellation 2. OrderCancellation d) Reject cancellation 3. DialogueCancellationByResponder • Comments to c) • If Supplier wants paymentfor the cancelled order, Reason.Name is set to 'faktureras’ in OC and ESN2+OE are sent in an ExecuteOrder dialogue. • In rare occasions, Supplier will not able to send ”OC faktureras”. This will not give TSS problems.
ExecuteOrder[nebi.biz:BC:ExecuteOrder_3.0] Supplier TSS Application B2B B2B Application NeBI a) ESN1 is sent for every status change before workreport b) Sendstatus 1. ExecutionStatusNotification 1 c) Send workreport 2. ExecutionStatusNotification 2 d) Sendexecutedreport 3. OrderExecuted Workreport = ’Arbetsrapport’ Executedreport = ’Åtagande klart’
ExecuteOrderwith delivery acceptance[nebi.biz:BC:ExecuteOrder_4.0] Supplier TSS Application B2B B2B Application NeBI a) ESN1 is sent for every status change before workreport b) Sendstatus 1. ExecutionStatusNotification 1 c) Send workreport 2. ExecutionStatusNotification 2 d) Sendexecutedreport 3. OrderExecutedRequest e) Is executedreport acceptable? f) Reject executedreport 4. OrderExecutedDenial g) Accept executedreport 5. OrderExecutedAcknowledgment
InvoiceDetail [nebi.biz:BC:InvoiceDetail_4.0] Supplier TSS Application B2B B2B Application NeBI a) SendInvoiceDetail 1. InvoiceDetail a) ID is sent for every InvoiceDetailPart b) Is the InvoiceDetail Correct? c) Ok 2. InvoiceDetailAcknowledgment 3. InvoiceDetailComplaint d) Not Ok
Dialogue rules • A dialogue defines a transaction pattern between two parties • A conversation is an instance of a dialogue. It is identified by its conversationId which must be unique. • Every transaction contains a conversationId so that the receiving part can associate the transaction with a conversation
Inter-dialogue rules 1 Within each dialogue the process rules are illustrated by the sequence diagrams in the previous slides. The following slides describe inter-dialogue rules that are rules that apply to concurrent dialogues that concern the same order. • Principal rules • The first dialogue for every order is NegotiateOrder • Concurrent dialogues concerning the same order are permitted • Transactions are not permitted towards an order with a completed ExecuteOrder dialogue • An order is identified by its OrderId which must be uniqueThe rule means that every NegotiateOrder dialogue concerns a new order with a unique orderid (see below for order resend though).When a new unique order is rejected in the NegotiateOrder dialogue using DialogueCancellation, then the order, including its orderid, is regarded as non-existant. The orderid of the rejected order may be reused in a new NegotiateOrder dialogue.In a dialogue of type ”NegotiateOrder with order content negotiation” all transactions, possibly including multiple OrderRequest transactions operate on the same order, thus using the same orderId. • Resending an order is allowed if the “resend flag” is setWhen resending, the order content is identical, apart from the resend flag. Resending is done when an order needs to be sent through the regular channel at a time when it has already reached Supplier through a reserve channel.
Inter-dialogue rules 2 • Exceptions, additions and explanations • The dialogue NegotiateOrder must be finished before starting ExecuteOrder [OA before ESN/OE]Info: Some violation of the rule occurs for technical reasons, since the IT components between the business application endpoints not always manage to maintain the original business application transaction sequence. The reason is that the IT components have parallel execution threads. This problem is most common during recovery after a stop. • ESN2/OE is not allowed to be sent during an ongoing RenegOrderBySupInfo: If RenegOrderBySup is not responded in a timely manner, the Supplier should contact TSS through other channels. • Workreport (ESN2) confirms cancellation request (OCR)[ESN2 = OC + ESN2]Explanation: Supplier does not need to confirm OCR with OC if Supplier sends ESN2 in the dialogue ExecuteOrder, see slide CancelOrder. • In the dialogue RenegOrderBySup, an ”impossible” orderchange (OUR) as an answer to OUPR may be rejected by the SupplierInfo: Subsequent status reporting (ESN/OE) is allowed, but cannot be handled by TSS. Manual routines must be used. • A newdialogue RenegOrderBySup maybe initiatedwhile a RenegOrderBySup is ongoingInfo: TSS will however reject the new RenegOrderBySup. Supplier must wait for the ongoing dialogue to complete or contact TSS through other channelsin order to solve the problem.