BizTalk support on EDIFACT for Postal Transactions - biztalk

We are in a need of understanding the capability of BizTalk on EDIFACT for postal transactions.
We need to understand whether the following postal EDIFACT transactions are supported by BizTalk.
1. PREDES
2. PRECON
3. CARDIT
4. RESDIT
5. RESCON
6. RESDES
7. EMSEVT
8. ITMATT
Please Help.

All of the supported EDIFACT schemas in BizTalk Server have become open source for a while now. You can look-up if a message is supported by checking this page: https://github.com/Microsoft/Integration/tree/master/BizTalk%20Server/Schema/EDIFACT
FYI: I did a search and haven't found a match for you.

Related

XSD for Decoding in Logic Apps an X12 830 02000

I am looking for the XSD to use to support a Decoding action in Logic Apps for the X12 830 00200. This was approved by ANSI in 1986 (pre-ASC), but is still widely used by Ford. I understand the same XSD would be used in a BizTalk Server solution. Does anyone have one to share?
I have tried the download item MicrosoftEdiXSDTemplates.zip as part of Microsoft Azure BizTalk Services SDK Setup:
https://www.microsoft.com/en-us/download/details.aspx?id=39087
However that only goes back to 00204, which I tried unsuccessfully adapting.
I would rather not do this as a Flat File Decode, as I want all X12 830 processing in my Logic Apps solution to have a consistent, Agreement-based configuration.
I have sample EDI, drawn from the real-world.
I will be using Ford's specs for the v002001FORD 830O to validate any schema I obtain or create: https://www.gsec.ford.com/GEC/edispecs/830.pdf
** UPDATE **
Thanks all for the help. It ends up that on the MS side, the Kusto log analytics trace of my run-time activity shows explicit duplicate schema references in my Agreement, while my run-time exception from Logic Apps does not clearly indicate a duplicate schema issue is present: 'The message has an unknown document type and did not resolve to any of the existing schemas configured in the agreement.' So, there was nothing wrong with my schema. I just had to tweak my Agreement configuration. I am reporting this to MS and hope the schema validation in the Agreement and/or the exception reporting will be improved.
To me a broader issue is that the X12 schema provided are ASC-issued ones: 02000, 03000, 04000, etc.. The same ones prevented from being shared on Git due to copyright issues. The reason I believe I am running into older, ANSI-issued specs still in used despite their age by Ford, Toyota, etc. is that the same copyright issues tends continued usage by OEMs of these specs despite their age. For that reason, it would be a big help to the community if MS provided the XSDs for the ANSI-issued X12 specs as is done for the ASC-issued ones. For each ASC-issued spec, such as 04000, there are many documents: 830, 856, etc. This multiplies out to scores if not hundreds of handcrafted XSDs one may need to produce (as is our case) to implements broad X12 support in Logic Apps.
The process with outlier EDI Schemas is to find the closest one and modify it to support the version you need.
What do you mean by 'unsuccessfully adapting'? This is not an uncommon thing.
Since the spec is so old, one thing I would very much consider is bumping the interchanges up to a 'current' :) version, even just 00204. I'm not sure the specific value 00200 will work with BizTalk EDI.
You would use a custom Pipeline Component for the incoming and should be able to use the EDI.Override properties on outbound.

Biztalk Cannot process EDIFACT file

I'm new in processing EDIFACT files. I want to process a EDIFACT file of type D:01B INTFSTA. I searched for schema in BizTalk server, created orchestration and deployed in BizTalk server. While processing the file I get the following error.
Error encountered during parsing.
Error: 1 (Miscellaneous error)
70: Cannot locate document specification because multiple schemas matched the message type "http://schemas.microsoft.com/BizTalk/EDI/EDIFACT/2006#EFACT_D01B_IFTSTA".
Error: 2 (Miscellaneous error)
71: Transaction Set or Group Control Number Mismatch
Error: 3 (Miscellaneous error)
29: Invalid count specified at interchange, group or message level
.
The sequence number of the suspended message is 1.
There is no other application using the same schema (D:01B INTFSTA).
Please help.
Most likely you have the schema deployed more than once in your BizTalk environment. In the BizTalk console, go to "All Artifacts", select "Schemas" and list alphabetically. There, search for EFACT_D01B_IFTSTA in the Root Name column. You will find that it is deployed in another application most likely.
A good practice around deploying EDI schemas btw, is to update the namespace to include the name of your trading partner. More than 1 of your trading partners may use the schema in different ways or have customizations in it. This approach lets you handle this situation.
The suggested namespace would, for example, be http://schemas.yourcompany.com/partners/yourtradingpartner
Most likely, the schema is not deployed. Check the Schemas node of the All Artifacts Application.
2&3. You test EDIFACT instance is invalid. Did you cut and paste it together? That would cause the mis-matches.
Note, it's a better practice to change the Target Namespace on the EDI schemas to something specific to the app which uses them.

Identifying HL7 V3 schemas for CDA R2

The company I work for recently started a project delving into the world of HL7 messaging and data trading. We are using BizTalk Server 2010 with the BTAHL7 accelerator for 2010 with success so far for HL7 v2 but now we have a need to accept HL7 v3 (CDA R2) documents. These are CCD's we will be accepting from an external vendor.
I have the full suite of .xsd schemas from HL7 for CDA R2 (all 1541 of them) but am struggling with how to figure out which schemas relate to the messages we will be receiving. All I have to work with are test CCD messages from our trading partner and no other information. I have tried to use the code and display name along with the templateId's to figure out which subschemas this will match so I can appropriately map into our internal canonical formats for data loading but I am struggling to figure that out.
I'd rather not create one project in BizTalk that holds all 1541 schemas to parse and validate these files as that would make reading my maps and transformation mechanisms that much more difficult. Has anyone with experience in HL7 v3 and BizTalk got any guidance on how I can identify the appropriate subschemas based on the information available in the test files?
Here is the header information:
<realmCode code="US"/>
<typeId root="XXX" extension="POCD_HD000040"/>
<templateId root="2.16.840.1.113883.10.20.1"/>
<templateId root="2.16.840.1.113883.3.88.11.32.1"/>
<templateId root="1.3.6.1.4.1.19376.1.5.3.1.1.6"/>
<templateId root="1.3.6.1.4.1.19376.1.5.3.1.1.2"/>
<templateId root="1.3.6.1.4.1.19376.1.5.3.1.1.1"/>
<templateId root="2.16.840.1.113883.10.20.3"/>
<templateId root="2.16.840.1.113883.3.88.11.83.1"/>
<id root="1.2.840.113619.21.1.3164884235793924544.1704986688012700"/>
<code code="34133-9" codeSystem="XXX" codeSystemName="LOINC" displayName="Summarization of episode note"/>
<title>XXX</title>
<effectiveTime value="20140110152448-0500"/>
<confidentialityCode code="N" codeSystem="XXX"/><languageCode code="en-US"/>
CDA is not like the rest of V3, and the v3 schemas are irrelevant. I would've thought Biztalk included CDA schemas specifically. The ones you need are:
datatypes-base.xsd
NarrativeBlock.xsd
voc.xsd
datatypes.xsd
POCD_MT000040.xsd
CDA.xsd
As #Grahame stated, having the HL7 V3 schemas does not really help you implement the CDA in BizTalk. The CCD (Continuity of Care Document) is a defined set of constraints on the CDA (Clinical Document Architecture) standard.
In order to obtain the CCD schemas, you have to go to HL7. You can download the CCD spec, samples, and required schemas directly by going here, accepting the HL7 licensing agreement, and giving them your data.
Once you download the ZIP file, look inside the CDASchemas folder for the actual schema files. The CDASchemas\cda\Schemas\CDA.xsd file will act as the "root" schema.

Send X12 AS2 Document with BizTalk 2013

I asked a question about EDI before EDI X12 Implementation with C#
And i'm need help again. We have decided to use BizTalk 2013, i was able to install BizTalk 2013, i need some assistance.
Our partner sent a document about AS2 Trading Partner Setup and some certificates for both production and test enviroment. The information in this document is:
AS2 Identifier and URL
MDN: SHA1
Encryption Algorithm: Triple DES
MDN Delivery Type (Synchronous/Asynchronous):
Synchronous (Asynchronous also supported)
Request Signed Receipt: Yes
Software: Cyclone Interchange
Payload Security Type (e.g., Signed, SignedAndEncrypted, etc.): SignedAndEncrypted
I read the tutorial below and try to integrate to our solution
http://msdn.microsoft.com/en-us/library/bb727687(v=bts.80).aspx
Steps i did;
Create Visual Studio Project that contains X12 850 document schema and deploy it.
Created one way receive port to receive edi document we create.
Install the certificate to Local computer > Other people
Created static solicit-response send port to send edi document to our partner and select the certificate for encrypt message.
Created parties for us and for our partner.
Created agreement between us and our partner. Select AS2 for protocol.
I did following changes in "Us > Our Partner" tab.
In Acknowledgements(MDNs) page, i selected Process inbound MDN into MessageBox for routing/delivery options and Request MDN boxes.
In Validation page i selected Message should be encrypted and DES3.
In Send Ports i selected port that i created.
Now when i copy file to receive port i created, BizTalk gives an error like this:
The AS2 Decoder encountered an exception during processing. Details of the message and exception are as follows: AS2-From:"" AS2-To:"" MessageID:"" MessageType: "unknown" Exception:"An AS2 message was received that did not contain the AS2-From header."
My test EDI document looks like (I tried with header information, and without header, results are same)
Mime-Version: 1.0
Content-Type: text/plain
Content-Transfer-Encoding: 8bit
AS2-From: ZZUS
AS2-To: ZZTHEM
AS2-Version: 1.0
Message-ID: AS2Message-001
ISA*00* *00* *ZZ*US *ZZ*THEM
*130530*1244*U*00401*00001234*0*P*:
GS*PO*US*THEM*20130530*1244*1234*X*004010
ST*850*1234
BEG*00*SA*PO1234**20130530**ZZ
ITD*ZZ***20080101*0**0*******1
DTM*002*20130615
N1*ST*US*92*1426136
N3*6719 THEALL RD STE B
N4*HOUSTON*TX*77066-1215*US
PER*ZZ*No Contact specified
PO1*1*1*CA***VN*MSC097030
PID*F****HAND SANITIZER,EPI-CLENZ,4 OZ,70% ETHYL
CTT*1
SE*44*1234
GE*1*1234
IEA*1*00001234
Btw, i'm creating document by C# code, is there any easy way BizTalk provides to create/read X12 documents like this?
Any help would be appreciated.
Thanks.
With any EDI application worth its salt (and I wouldn't put BizTalk in that category), you should be able to create a map. With all the abstraction layers that BizTalk uses, you should be able to use the various "adapters", including the EDI adapter to create a "map". The map should allow you to transform your source to a target, and then connect to another adapter to control workflow and delivery.
Here is a link to an example workflow for you: http://www.nullskull.com/a/1339/using-edi-adapter-to-sendreceive-po-within-trading-partners.aspx

Pool Multiple Messages with BizTalk 2006 SQL Adapter

I have a StoredProcedure that returns a simple table containing several records:
DECLARE #STEPS_TABLE AS TABLE (OrchestrationID uniqueidentifier, [Message] nvarchar(1000));
-- LOADING THE VALUES HERE
SELECT * FROM #STEPS_TABLE As Step FOR XML AUTO, XMLDATA, ELEMENTS
I used the SQL Transport Schema Generation Wizard to create my schema and could configure the port correctly. If I use this schema on my orchestration, it works perfectly. BizTalk starts one instance of the orchestration everytime the #STEPS_TABLE has more than 1 record.
Reading Microsoft technical documentation, they recommend to get several messages in one call and then use the XML pipeline to disassemble the multi-row BizTalk message into a single-row BizTalk message.
I haven't used the XML pipeline before, so I tried the provided steps but couldn't get it to work.
Could somebody provide me a link to a "how to" (didn't find anything until now, after several hours of searching) or give me some hints to succeed.
Thanks in advance.
... some hours later I could figure it out myself. So if anybody comes across the same issue as me, here you have some guidelines to make it work on your environment.
At the end I followed a different walkthrough from Microsoft and avoided the pipeline recommendation altogether. The documentation I found is called "Disassembling Result Sets Using the SQL Adapter" and does exactly what i was looking for. You can just follow the whole walkthrough from Microsoft but avoid the creation of the send port and make some little adjustment on the receive port.
After following the technical document you will end up with two schemas, I will call them message and envelope (contains several messages) for the sake of this excercise. In your orchestration you can create a receiving port that maps to the message and then when you configure it as a SQL Port and you link it to your stored procedure (or select statement), you only have to change the Document Root Element Name to the envelope root name; the XML Receive pipeline (provided by default in BizTalk 2006) will do the magic of disassembling the messages contained in the envelope and instantiating an orchestration for each message.
The Microsoft "Disassembling Result Sets Using the SQL Adapter" walkthrough can be found under:
http://msdn.microsoft.com/en-us/library/aa562098(v=bts.20).aspx
Mission accomplished :)

Resources