cancel
Showing results for 
Search instead for 
Did you mean: 

one file to multiple idocs

former_member529475
Active Contributor
0 Kudos

hi frnds,

I am doing FILE TO IDOC SCENARIO. Everything is fine The IDOC is generated in the R/3 system.

Thing is In my XML FILE I have 4 records. So it has to generated 4 IDOCs in the R/3 system. But only 1 idoc is generated in my r/3 system.

I am not using BPM TO DO THIS. Is it possible to generated multiple idocs from one single xml file without bpm...

Thanks in advance.

Vasu

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi ,

Check this nice blog ......by michal

/people/michal.krawczyk2/blog/2005/12/04/xi-idoc-bundling--the-trick-with-the-occurance-change

Sekhar

Answers (6)

Answers (6)

Former Member
0 Kudos

Hi,

You can achieve this with the help of BPM.

You just do a (1:N) msg mapping by changing the max occ of the target IDOC msg to unbound.

create an interface mapping for it.

now come to the integration process

In the Integration process you first put a receive step,which will receive your file,

then put a trasformation step which will have a single line input container and a multiline output container.

then put a block in foreach/parforeach mode, select your multiline container element in Multiline Element property and the single line container element in the Current Line property.

then put a send step inside the block whose message will be that current line container element.

this will do..

Reward points if helpful.

--Sankar Choudhury

turmoll
Active Contributor
0 Kudos

Hi,

Take a look at this OSS note: [Note 814393 - Multiple IDoc instances in an XI message|https://service.sap.com/sap/support/notes/814393]. There are all steps described that you need to follow.

You might have made a mistake in point 8:

😎 In the message mapping, use the file saved in step 7 instead of the imported IDoc 
by using the "Import XML or XSD" function in the mapping tool to select the source or target messages.

Regards,

Jakub

Former Member
0 Kudos

Basicly we have 2 ways of handling such scenarios:

- we can use a block step and send multiple IDOCs from our BPM

- we can also do a little trick and send multiple IDOCs from the XI without a BPM

The first approach is a standard XI approach. It involves the use of a BPM

so the speed of this transfer many not be very good in case you'd like to send

hundreds or thousands of IDOCs in just one call.

The second approach uses a little trick that was mentioned several times

on the XI Froum by a number of XI developers but is still not very clear to the XI newbies.

It allows us to send multiple IDOCs without the use of a BPM. Most probably this will be your choice

if you'd like to use such 1:N (IDOCs) scenarios effectively.

In this weblog I'll describe the second approach:

Step 1

- at first you have to import your IDOC definition from your R/3

Step 2

- as you know this IDOC definition that you've just imported allows the mapping of only one IDOC

- in order to change this you have to export the IDOC definition to an XSD file

Step 3

- now we can change the occurance of the IDOC segment so it will allow many

IDOC segments - you can do it by specifying the IDOC segment occurance

in the same way all multiple IDOC segments are described

- or you can set the occurance to unbounded - like we can specify with any data type that we create within the XI

Step 4

- then we have to import the IDOC definition again as the "External definition"

Step 5

- create a mapping from you source message type to the created external IDOC definition

- as you can see the IDOC occurance is not 1..1 anymore

Step 6

- create an interface mapping that will use your new message mapping

- specify the source and the target of this interface mapping as the standard IDOC

Step 7

- create your scenario inside Integration Directory and while specyfinig the Interface determination

remember to use your new Interface mapping

While testing your new scenario you should be able to see that the occurance of the IDOC segment is not 1..1 anymore.

This weblog show an alternative way of sending IDOCs through the XI

which was widely discussed on the XI forum but hopefuly now it will be a little bit more clear.

agasthuri_doss
Active Contributor
0 Kudos

Dear Vasudeva Rao,

With help of BPM we have did it and no issue at all, are you more specific that with out BPM you want to acheive.

Thanks & Regards

Agasthuri Doss

SudheerJ
Participant
0 Kudos

Hi,

Can you please give me the details how to solve this kind of issue using BPM as you said you were using BPM and it worked.

Thanks in advance!!

Sudheer.

former_member192798
Active Contributor
0 Kudos

Hi Vasu,

The below links provide more information about IDOC scenarios.

/people/ravikumar.allampallam/blog/2005/02/28/creating-sales-order-through-idoc

/people/ravikumar.allampallam/blog/2005/03/03/creating-purchase-order-idoc-through-xi

Hope the above helps.

Regards.

Praveen

Shabarish_Nair
Active Contributor
0 Kudos

In order to acheive this all you need to do is to manually change the occurance in the IDOC XML to unbounded. Make the maxoccurs to 'unbounded' !!!