cancel
Showing results for 
Search instead for 
Did you mean: 

Wait Step In BPM

Former Member
0 Kudos

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.

Accepted Solutions (1)

Accepted Solutions (1)

MichalKrawczyk
Active Contributor
0 Kudos

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>

Answers (6)

Answers (6)

Former Member
0 Kudos

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.

Former Member
0 Kudos

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

Former Member
0 Kudos

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

Former Member
0 Kudos

Can you please tell me how to Do N:1 mapping without BPM. would be very helpfull.

prateek
Active Contributor
0 Kudos

Hi John,

N:1 is not possible without BPM

Ckeck out this

/people/pooja.pandey/blog/2005/07/27/idocs-multiple-types-collection-in-bpm

Regards,

Prateek

Former Member
0 Kudos

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

Former Member
0 Kudos

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.

bhavesh_kantilal
Active Contributor
0 Kudos

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

Former Member
0 Kudos

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

Former Member
0 Kudos

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

bhavesh_kantilal
Active Contributor
0 Kudos

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