on 04-23-2007 11:37 AM
Hi All ,
I have a scenario in which Incoming are Two IDOC's of the same type, I need to collect them as a Single IDOC in my BPM, and send it.
The Incoming IDOC's have a Variance of apprx 3 Sec when they are getting generated and sent to XI
Now do i need to use a WAIT step inside my BPM (or) Do i have to Follow the Standard BPMCollectPatternTime in this case what kind of a mapping would i use to map my two IDOC's to One single IDOC.
Would be very help full if any body could guide me thru.
Hi John,
you can also collect IDOCs in R3 as in Stefan's blog
/people/stefan.grube/blog/2006/09/18/collecting-idocs-without-using-bpm
this way there's no need to use a BPM inside XI - so much better approach
Regards,
michal
-
<a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a>
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
When I use an External Def with Occurence changed to UNBOUNDED, then IP gives me an error saying that
Cont_IDOC_LIST and Cont_IDOC are not compatible.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
HI,
That is you need to change in XSD as explained in above link, and reimport it under external definition , this will be used to collect the Idocs the modified interface(imported xsd) you would have to use in receiver side,in mapping , after collecting , If you are using BPM , do not send this collected Interface as it is , because it holds the multiple messages ....
Regards
Chilla
HI,
Use the standard BPM collect patern based on time dependent collection in the below link,
And use the standard graphical mapping see the below blogs for mapping kind of examples
http://help.sap.com/saphelp_nw04/helpdata/en/08/16163ff8519a06e10000000a114084/content.htm
/people/pooja.pandey/blog/2005/07/27/idocs-multiple-types-collection-in-bpm - Collection of IDoc to Single File
/people/stefan.grube/blog/2006/09/18/collecting-idocs-without-using-bpm - collecting IDocs without BPM
/people/prateek.shah/blog/2005/06/08/introduction-to-idoc-xi-file-scenario-and-complete-walk-through-for-starters - IDoc to File
Regards
Chilla
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Can you please tell me how to Do N:1 mapping without BPM. would be very helpfull.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Yes i have designed as per the Standard pattern.
Is there anyway I could check the messages going from the Container operation to my transformation Step.I just want to re-check if the messages are getting appened in the Container.
Any more Help
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thanks for the Replies,
I would not be able to Collect the IDOC's at the R/3 end as per Stefen's blog(Wish I could).
Now,
I have used the Standard Collect pattern Time Dependant pattern, However, Somehow seems like My container operation (MultiLine Container of the Same Source message Type) is not collecting the IDOC's and mapping is executed twice for two IDOC's hence it is creating two Files. ineed just One file.I am unable to figure out what could be wrong. Here is the detailed Design .
IP
==
Standard Time Dependant Collect pattern.(1 Min)
Container Elements.
-
Cont_IDOC (Source IDOC type)
Cont_IDOC_LIST (Source IDOC type, Multiline Checked)
Cont_IDOC_Target(Source IDOC type)
recieve Step = Message-->Cont_IDOC
Container Operation -> Expression>Cont_IDOC,target>Cont_IDOC_LIST ,Operation>APPEND.
After Loop
-
Tranformation = Source>Cont_IDOC_LIST,target>Cont_IDOC_Target,Interface Mapping--->IDOC(0-Unbounded)_to_IDOC(occr =1), Same with mapping.
Send Step = message-->Cont_IDOC_Target.
Should'nt the APPEND operation in Container Step collect all the IDOC's and send it At once to the Transformation step.Well thats not happening,
Your Inputs will be greatly appreciated, I am Kinda Stuck here.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Look at the time dependent pattern in this link,
http://help.sap.com/saphelp_nw04/helpdata/en/08/16163ff8519a06e10000000a114084/content.htm
Have you done the TimeDependent Loop as needed with the deadline monitoring as shown in this link?
Apart from that things look good to me.
Regards
Bhaves
Hi jhon,
with out BPM PATTERNS also we can do,with the help of N:1 mapping out side BPM we can do,collecting two idocs and map to single idoc can be done with N:1 mapping ,in order to put some time dalay while doing n:1 mapping we go for wait step, based on process logic we go for wait step.
thanks & rgds
mahesh
Hi John,
see your Cont_IDOC_LIST container variable should point to a msg interface which has a msg type of external definition of IDOC in which you have changed the occurance of idoc to maxoccurs as unbounded according to Michal's blog......then your this Cont_IDOC_LIST variable can append multiple idocs in it.....then your transformation will generate only one output because then your mapping will be executed only once for the complete Cont_IDOC_LIST variable.....
Thanks,
Rajeev Gupta
Hi,
Using the standard BPMCollectPattern with Deadline monitoring wouldbe the better way to do this.
You will have a N:1 mapping outside the time dependent collect pattern , to combine the 2 Idoc's into 1.
Regards
Bhavesh
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
84 | |
25 | |
12 | |
9 | |
6 | |
6 | |
5 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.