EDI Partner Oriented Architecture: Use Case with EDI Separator XML for IDoc XML Messages
In large edi integration projects I face for outbound messages, e.g. invoices, order responses, deliveries, remittance advices, orders also very large lists in receiver determinations or integrated configurations (ICo).
When using eclipse for designing and deploying Integration Flows (IFlows), I usually face Integration flows looking like this:
Personally, I am losing here any overview – and more over: it does not look nice.
So what if you can use the EDI Separator XML functionality to sort your IDocs out for the final destination? Like mentioned here: EDI Separator XML: Xpath Queries for EDI Separator Sender Channels
So the architecture will look like this: Instead of a large ICo, you have one integrated configuration for the SAP ECC to EDI Separator and one integrated configuration for every partner.
SAP ECC to EDI Separator
The first IFlow / Integrated Configuration will pick up for each IDoc interface the IDoc XML messages and forwards them to the EDI Separator receiver channel.
Note: you need to set the property edi.recv.input.encoding as UTF-8 to keep the encoding during the routing process.
EDI Separator to Partner
EDI Separator to Partner – Sender Channel
To maintain your needs, you are free to define the routing rule in the EDI Separator XML sender channel. In the given example above the MESFCT in the IDocs is used to define the final destination of the IDocs.
Also other settings work, like these:
EDI Separator to Partner – Scenario
The second scenario has to be built for each partner. The following example uses a multi IDoc Interface and Interface Splits for filtering for the specific IDocs, e.g. DESADV or INVOIC.
A multi IDoc Interface will can look like this. So we will use this interface for our Operation Mappings.
➕ Because of the first Integrated Configuration / Integration Flow we do not have any stuck IDocs within the ECC system as SAP PO always picks sent IDocs and forwards them to the EDI Separator channel.
➕ / ➖ You will transform a large Integrated Configuration to several small configuration scenarios.
➖ The EDI separator XML sender channel will have long processing times for large IDoc XML files (>10 MB).
I currently have an EDI Separator for inbound IDocs and inbound XML Messages into S/4.
Among others it processes inbound ORDERS05 IDocs.
I also have outbound ORDERS.ORDERS05 messages. Now if I change these to a setup similar to
what you describe, I would again have EDI Separators as senders for outbound
ORDERS.ORDERS05 to my external partners.
Will the EDI Separator Sender channels not get confused between inbound and outbound ORDERS.ORDERS05?
Thank you, Peter
you may always use xpath expressions like
*/IDOC/EDI_DC40[(DIRECT = '2')]
*/IDOC/EDI_DC40[(DIRECT = '1')]
for filtering inbound & outbound IDocs. Also EDI_DC40 fields like RCVPRN & SNDPRN are useful.
thank you for your reply, I will dig into this further and start changing my setup.
Best regards, Peter