This is simple File to File BPM with N:M(2:2) mapping.
Create your namespace as a very first Step.
Step: Data Type and Message type
Create 4 Data Type structure DT_MSG1 and DT_MSG2 to send the files and DT_MSG3 and DT_MSG4 to receive the files.
Similarly create their respective Message Types.
Step: Message Interface
Create the following
1- Four Abstract Interfaces,
2- Two Outbound Interfaces and
3- Two Inbound Interfaces
Step: Message Mapping
In Messages tab insert your Source and Target messages, then do your mapping in the Design tab
Step: Interface Mapping
Step: BPM Design -Integration Process
Define Correlation as Constant Value to receive independent Messages. you can define Correlation as XPath for dependent messages.
Note:- For receiver Determination we need to define multiline container elements and for Send Step we need to choose Receiver From as Receivers List.
Configuration Part(Integration Directory):
Create this part in the same way as we usually create for any BPM scenario.
Import Business System from SLD and Integration Process from IR as a Service.In our scenario we need to create the following objects:-
1- Two Sender communication Channel and two Receiver communication Channel
2- Two sender Agreement ,
3- Two Receiver Agreements
4- Four Interface Determinations* and
5- Four Receiver Determination*
* Business System will call Integration Process twice and similarly Integration Process will call Business System twice, with their respective Interfaces.
After activating the Configuration objects we need to upload the Input files to test the scenario.
Note:- We need to remove all the parent nodes like ns0:messages and ns1:Message1/2 from the Input files to avoid the mapping Error
For Example we have to send files as below.
<?xml version="1.0" encoding="UTF-8"?>
I hope this blog will help you to understand N:M mapping in better way . For further queries kindly revert to me.