on 06-28-2012 4:28 PM
Hi Experts,
I have a SOAP to RFC Async Scenario. Here I am receiving messages in a batch mode e.g- in one single XI message there are multiple records.
+<row>
+<row>
+<row>
+<row>
+<row>
+<row>
.
.
.
.
+<row>
Something like the above one.
Now I have created two operation mappings OM1 and OM2 and trying to execute them based on certain conditions in this <row> structure.
Now, suppose if the first row is validating the first condition and the 4rth row is validating the 2nd condition then, will the OM be executed as per the order mentioned ?
Say, in this case for 2nd row OM1 and 4rth row OM2.
Please help in this regard.
Thanks
Sugata B Majumder
Hi Baskar and Raja Sekhar,
You are right it is not working in the Interface Det. level.
I have decided to split the entire scenario in two parts-
SOAP to File and then File to RFC.
in first case the SOAP to File will be a one to one mapping and and file will be placed in the AL11 path.
now using FCC in the second scenario I will restrict the RecordSet per message to 1.
So, if there are 5 rows in the actual message from SOAP it will be split-ed in 5 XI messages and then for each of them that condition based Interface determination will be executed,
But I need one help to configure the FCC in the sender adapter for the second scenario.
The input file will be XML only having multiple rows and I one to send it in XML format but one row per message.
I am going for this option because the mapping is huge and damn complex... can not rework with mapping.
Please let me know the parameters for sender FCC.
Thanks
Sugata
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi ,
I dont prefer your design, adding one more extra mapping will solve your problem.
Solution:
1)Write a condition in Interface determination.
2)Create one more addtional message mapping to sort the records .
this mapping should have source message has a source and target about you have to write mapping loigc to supress records.
Like same way one more mapping required in other operation mapping. that is how i designed my interfaces in my current project it worked.
Even i deal with 5000 records in one message but my logic working.
explore this option.
Hi ,
You have a condition logic to indetify the which mapping to execute , write a same condition in Interface determination .
2)Develop one more mapping for each operation mapping , in this case mapping is between source to source message and write same condition in for root node (interface determination condition) and reamaining fields are one to one.
The output of mapping will be only condition satisfied records. second level mapping is already developed mapping .
Eg:
I developed similar kind of interface it is File to IDoc, the File record may have multiples records max 5000 but based on payload i have to call two different IDocs.
So what i did was written a same condition in Interface determiantion and developed 2 levels of mapping . first level mapping filter only condition satisfied records .
Hope you are clear.
Regards,
Raj
To answer your original question, if the message satisfies both conditions (as is the case in your example, because PI only checks if any of the rows satisfies the condition), both operation mappings will be called, each with the full message.
CSY
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I would recommend to do the condition in the mapping if that is feasible for the requirement. Doing OM level might not be helpful.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi ,
1)Write a condition in INterface determination but it will not gaurantee 100%(as per my experince).
2)Write a condition in mapping also to supress records.
This solution works , in my current project maintaining logic in both the cases working.
Regards,
Raj
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
91 | |
10 | |
10 | |
9 | |
9 | |
7 | |
6 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.