1. Problem
You need to send and receive
documents using the EDI pipelines to ensure that EDI validation takes
place and that the envelopes of the documents are created correctly.
2. Solution
There are two primary
steps in using the EDI pipelines. The first is to select the appropriate
pipeline on the port that is being used. When you are sending
documents, the port should be configured with the EdiSend pipeline. When you're receiving documents, it should have the EdiReceive pipeline. These pipelines have a number of configuration settings on them. Figure 1 shows the configurable properties of the EdiSend pipeline.
NOTE
There is a property on EDI pipelines named EdiDataValidation. While setting this to False
would seem to cause EDI validation to be turned off, it doesn't always
work that way. Make sure to test this functionality before you decide to
use it. You schema and configuration may impact whether this setting
has any effect or not.
3. How It Works
The pipelines perform
validation, party resolution, envelope interpretation and creation and
cause acknowledgements to be automatically created. The flow of the
pipelines is as follows:
EDIReceive pipeline
Examine
the document type. This step interrogates the document to determine if
X12 or EDIFACT and what the character set is. Properties are promoted on
the document at this point (for routing purposes).
Resolve parties. This step determines which party in BizTalk the document is intended for.
Resolve and validate schemas. The document is validated against the schemas that have been deployed.
Create an acknowledgement (if doing so is configured in the agreement).
EDISend pipeline
Resolve
parties, and match the context. When a document is sent, the envelope
is attached in the pipeline. All of the settings for the envelope are
determined at this stage.
Resolve
and validate schemas. The document is validated against the schema. If
the document fails validation, it will be suspended.