There’s a question that arises in configuring Arc that comes up often:
I have a transport connector (like AS2 or SFTP) that receives multiple EDI files that are addressed to different interchange relationships. How can I support this in my flow if each X12 connector expects one EDI relationship (Interchange Sender ID and Interchange Receiver ID)?
By default, the X12 connector is meant to be used in a 1:1 relationship with the interchange relationship in the EDI document, so if you had a sender that was using different interchange IDs for different document types - 123A and 123P for instance, you would set up X12 connectors where the Sender Identifier is configured in each one, and EDI files would need to be routed to the correct connector accordingly.
Support multiple EDI relationships in a single connector (only supported in unlimited EDI licenses)
If you are using a license that supports unlimited use of the EDI connectors, you will find an option in the Advanced tab to relax the validation of the interchange sender and receiver in the Advanced section of the connector:
When this is set, you can route multiple EDI documents with different interchange headers through the same X12 connector. Note that since this setting allows for the processing of any number of EDI relationships, this setting is only supported when the license of Arc supported unlimited numbers of EDI connectors.
Scanning the X12 envelope to direct the request to a matching X12 connector configuration
If you are not using a license that supports unlimited EDI connectors, you can still support multiple EDI relationships in a single transport layer and use the Branch connector to route an incoming message to the right connector based on the EDI relationship. There is an operation in arcScript called x12Scan that you can use to scan a file for EDI metadata:
https://cdn.cdata.com/help/AZH/mft/X12.html#x12scan
If this is what you need, in the attached X12Scan.arcflow, you will find a simple flow that uses the x12Scan operation to determine the sender of a message for routing.
CreateTestEDI is a simple script connector that will generate 2 EDI files addressed from two different senders if you click on the Receive button in the output tab (this is to act as a stand-in for a transport step where you can receive EDI from multiple senders). You would just use this to generate the test data to demonstrate the flow.
Script_X12Headers is a simple Script connector that will scan the file and add metadata about the sender and receiver of the file to the message to assist in routing. If you examine the file in the output tab of the connector, you will see that several new headers are added:
The From123EDI connector is a simple Branch connector that is designed to make a choice on the headers added in that step:
And finally, based on the decision in that step, the X12123A and X12113P connectors are the X12 connectors configured for the matching relationships.