In case you are using SAP PI/PO for B2B/EDI communication, you might have IDocs coming from SAP ERP/ECC which have to be distributed individually and the receiver determination (routing) is growing with each partner…
With SAP PO we also have the possibility to use iFlows and folders. The folders act like configuration scenarios, but each iFlow can only be assigned to one folder (1:1 relation). This means, shared objects can not be assigned to several partner-specific folders, so we have to use generic folders:
So how about creating one iFlow for each Receiver Party which can be assigned to the partner-specific folders individually?
Inspired by this Wiki entry, here´s the how-to guide for SAP PO:
1. Activate the parameter according to SAP note 1941832 in NWA
Application Ressources: /nwa/app-resources
Select Resource Adapter JavaIdocAdapter
Set property ResolveVirtualReceiver = true
2. Add the ID of the party from the SAP system into the Party Identification using the following schema:
- Agency = Business System (used in Integration Directory/SLD)
- Schema = ALE#<PartnerType>#<PartnerFunction> (Partner Function is optional)
- Value = Number of the partner (customer/vendor)
In order to enter a new agency/schema you have to define it first (Define…).
3. Create one iFlow for each receiver partner with virtual receiver and Service = * and assign it to the partner specific folder (Communication Component must be * as this is not resolved by PI)
- Partyless iFlows are not affected (Partner Type = LS, Logical System), only real ALE partners (customer/vendor)
- In case you do not want to maintain an iFlow per receiver partner (e.g. if you are in a Retail scenario with your POS per site/customer), you simply maintain virtual receiver Party = *, Communication Component = *