Våra sponsorer
Dec 15, 2015
Våra sponsorer
BizTalk - EDI & B2B Anders Was’en- Enfo Zystems IBM Champion
Mikael Håkansson - Enfo Zystems MVP BizTalkhttp://blogical.se/blogs/mikaelTwitter: @wmmihaa
Kommande events…
12:e JuniWindows Azure Service Bus- Connectivity and Messaging Alan Smith
Sommar Kollo with Johan Hedberg Helsingborg 26:e Juni, Stockholm 27:e Juli + 21:a Aug
EDI support in BizTalk Server 2010
4
Agenda• What is EDI with BizTalk?• EDIFACT message structure• Parties, Profiles & Agreements• EDI Receive• EDI Send• EDI Send Batch• Handing CONTRL messages
• What is EDI with Azure Service Bus?
6
What is BizTalk?
MessagingPub/Sub, Transformations, Adapters
LOB Adapters
Process EngineRFID
TPM BRE ESB Toolkit EDI/B2B
BAM
Accelerators(SWIFT/HL7)
1
2
3
Common B2B formats• EDI• ANSI X12 or ASC X12
• Created 1979• Numbered messages, e.g. 850 (Purchase Order),
810 (Invoice)• Using “version” and “release”, e.g. Version 4
Release 1 (typed as: 004010)
SAMPLE MESSAGE:ISA*00* *00* *08*9251750000 *08*1234567890 *030627*1304*U*00401*000001403*0*P*>~GS*PO*8019721193*1234567890*20030627*1304*1403*X*004010~ST*850*01403001~BEG*00*SA*548177**20030627~REF*AN*547794~PER*BD*JOHN JONES*TE*5552225555~…….SE*30*01403001~GE*1*1403~IEA*1*000001403~
Common B2B formats
SAMPLE MESSAGE:UNA:+.? 'UNB+UNOA:3+ZYSTEMS:1+DATADIRECT:1+20051107:1159+6002'UNH+SSDD1+ORDERS:D:03B:UN:EAN008'BGM+220+BKOD99+9'DTM+137:20051107:102'NAD+BY+5412345000176::9'NAD+SU+4012345000094::9'CNT+2:4'UNT+22+SSDD1'UNZ+1+6002'
• EDI• EDIFACT
• Approved by United Nations 1986, based 1978• ISO standard ISO-9735• Named messages (6 letters), e.g. ORDERS,
INVOIC• Two releases yearly: D[YY].A and D[YY].B
• E.g. D96.A (NB! S-releases exist)
Microsoft BizTalk Service 2010 ships with ~ 10 000 EDI schemas!
11
EDIFACT – Message structure
UNA:+.? 'UNB+UNOA:3+ZYSTEMS:1+DATADIRECT:1+20051107:1159+6002'UNH+SSDD1+ORDERS:D:03B:UN:EAN008'BGM+220+BKOD99+9'DTM+137:20051107:102'NAD+BY+5412345000176::9'NAD+SU+4012345000094::9'CNT+2:4'UNT+22+SSDD1'UNZ+1+6002' SegmentTerminator = ‘
ElementSeparator = +ComponentDataElementSeparator = :
12
EDIFACT – Message structure
UNB+UNOA:3+ZYSTEMS:1+DATADIRECT:1+20051107:1159+6002'
SegmentTerminator = ‘ElementSeparator = +ComponentDataElementSeparator = :
UNB1 UNB2 UNB3 UNB4 UNB5UNB4.1 UNB4.2
EDIFACT message structure
13
UNA Service String Advice UNB Interchange Control Header
UNG Functional Group Header UNH Message Header UNT Message Trailer
UNE Functional Group Trailer UNZ Interchange Control Trailer
UNA:Specifies the special characters that are to be used to interpret the remainder of the message.
Eg: UNA:+.? '
UNB:Identifies an interchange, -the related parties and interchange identifier.
Eg: UNB+UNOB:1+5790000000555:14+5790000016662:14+111129:1130+37++++2++0'
Sender Receiver
Date & timeof preparation Interchange id
UNG:The function of this segment is to act as a header identifying and specifying a functional group.
UNH:This is the Message Header segment of an EDIFACT document. The UNH segment elements provide information about the message type, and the agency responsible for maintaining the publication of the message type. This segment indicates the start of a document in an interchange and the type of document that follows.
Eg: UNH+109+INVOIC:D:93A:UN:EAN007'
Message type and version
UNT:Message Trailer segment of an EDIFACT document. It includes the elements document reference and number of segments in the document. .
Eg: UNT+97+109'
Number of Segments in the messageReference Number
UNZ:The segment is used to indicate the end of an interchange and to check the interchange reference and number of documents in the interchange.
Eg: UNZ+3+37'
Number of messagesInterchange id
Message Interchange
EDI - Trading Partner Management
AgreementAcknowledgements, Validation, Batching and more
PartyPartyInternal/External, Certificates & General
properties
ProfilesIdentifiers & Protocol settings
Profiles
EDI Receive
15
BizTalk
EDI
Message Box
MgmtDb
Agreement?
XML
PipelineXML
What Agreement is setup between Contoso and Fabrikam ?
Expected Control Id (InterchangeId)?
PipelineXMLXMLXML
UNB+UNOB:1+Contoso:14+Fabrikam:14…UNH+100+ORDER:D:93A:UN:EAN007‘…UNH+100+ORDER:D:93A:UN:EAN007‘…UNH+100+ORDER:D:93A:UN:EAN007‘…UNZ+3+34'
Handing CONTRL messages
16
BizTalk
EDI
Message Box
MgmtDb
Agreement?
XML
PipelineXML
PipelineXMLXMLXML
PipelineEDI
CONTRL
UNB+UNOB:1+Contoso:14+Fabrikam:14…UNH+100+ORDER:D:93A:UN:EAN007‘…UNH+100+ORDER:D:93A:UN:EAN007‘…UNH+100+ORDER:D:93A:UN:EAN007‘…UNZ+3+34'
UNB+UNOB:1+Fabrikam:14+Contoso:14+…‘UNH+3+CONTRL:4:1:UN‘…UNT+3+3'UNZ+1+3'
EDI Send
17
BizTalk
XML
Message Box
Pipeline PipelineEDI
MgmtDb
Agreement?
EDI
<invoice> < invoiceId>123</ invoiceId> <customer>Contoso</customer> …</ invoice>
UNH+100+INVOIC:D:93A:UN:EAN007‘BGM+380:::DVA001V02+1018083+9‘DTM+3:20111027:102‘DTM+137:20111027:102‘RFF+ON:18046697‘ ….
UNB+UNOB:1+Fabrikam:14+Contoso:14…UNH+100+INVOIC:D:93A:UN:EAN007‘BGM+380:::DVA001V02+1018083+9‘DTM+3:20111027:102‘DTM+137:20111027:102‘RFF+ON:18046697‘ ….UNZ+3+34'
XML
What Agreement is connected to this send port?Sender Party?Receiver Party?Next Control Id (InterchangeId)?
EDI Send Batch
18
BizTalk
XML
Message Box
Pipeline PipelineEDI
MgmtDb
Agreement?
EDI
<invoice> < invoiceId>123</ invoiceId> <customer>Consoso</customer> …</ invoice>
XML
Batch Orchestration
Filter: customer == ContosoRelease: Group = 3What Agreement is connected to this send port?
Sender Party?Receiver Party?Next Control Id (InterchangeId)?
UNB+UNOB:1+Fabrikam:14+Contoso:14…UNH+100+INVOIC:D:93A:UN:EAN007‘…UNH+100+INVOIC:D:93A:UN:EAN007‘…UNH+100+INVOIC:D:93A:UN:EAN007‘…UNZ+3+34'
Filter: ReceivingParty = Contoso &ToBeBatched = false
19
What is EDI with Azure Service Bus?
Azure Service Bus – Enterprise Application Integration (EAI)
20
BizTalk IIS
Client
Bridge
SapBinding
LOB Target
BridgecustomerType == “VIP”
customerType == “Default”
RelayBinding
Azure Service Bus – EDI
21
Bridge
Integration as a service
EDI
TPM AS2
EDIFACT
X12
BAM
FTP
10.000+ EDI schemas
Azure Service Bus – EDI
22
Integration as a service
Bridge
EDI
TPM AS2
EDIFACT
X12
BAM
FTP
10.000+ EDI schemas
the end