cancel
Showing results for 
Search instead for 
Did you mean: 

n IDoc s message to one txt file

Former Member
0 Kudos

I have finished IDoc to file scenarios.

If I send n IDocs , there will be n txt files.

Can I just get a TXT file, with one line with one IDoc?

Thanks.

Accepted Solutions (1)

Accepted Solutions (1)

aashish_sinha
Active Contributor
0 Kudos

Hi,

Refer to following weblog for collecting of IDoc to a single file.

/people/pooja.pandey/blog/2005/07/27/idocs-multiple-types-collection-in-bpm - Collection of IDoc to Single File

Regards

Aashish Sinha

PS : reward points if helpful

Former Member
0 Kudos

trying.

Thanks for your kindly help.

Edited by: Shen Peng on May 28, 2008 2:57 PM

Answers (6)

Answers (6)

Former Member
0 Kudos

and one more thing

continuation to the previous reply

did u use * add time stamp * for the file in the processing mode.

Former Member
0 Kudos

Yes, I use add time stamp processing model.

I fellow the SAP system pattern BpmPatternCollectTime, did the same thing , but got error Expression must not return a multiline value.

I noticed that my scenario is IDoc to file. The pattern just uses a simple message type.

And I read SAP library:


Messages cannot be sent by using different Adapter Engines in a mapping-based message split. This affects configuration thus: All receiver agreements that have a receiver interface from the mapping entered in the key must only be assigned communication channels with the following adapter types: 

-          RFC Adapter

-          SAP Business Connector Adapter

-          File/FTP Adapter

-          JDBC Adapter

-          JMS Adapter

-          SOAP adapter

-          Marketplace adapter

-          Mail Adapter

-          RNIF adapter

-          CIDX Adapter

The adapters also have to all run on the same Adapter Engine.

.

Former Member
0 Kudos

118) Multi mapping with out BPM?

Ans.1.Multimapping without BPM is possible if you have SP14.

2. Multimapping without BPM is possible only for 1:N scenario.

3. For N: 1scenario you have to use BPM.

4. Multimapping without BPM is possible ONLY for those adapters, which resides in the Java Stack.

Former Member
0 Kudos

did u use BPM' for this scenario.

If not,

please check whether ur IDOC adaptor and FILE adapter is active status & increase poll interval time at the sender communication channel.

samiullah_qureshi
Active Contributor
0 Kudos

Hi

To dump data of multiple Idocs into a single file you can do this by using either of following way:-

In transaction WE20(Partner Profile) in outbound parameter select output mode as Collect Idocs. By doing this R3 will send a single Idoc containing data of multiple Idocs and you can easily dump into a file.

You can also do it by using BPM.

1. In BPM use Fork step with same the number of branches in it as number of Idoc you want to collect.

2. Use receive step in each branch of fork step.

3. Do a N:1 mapping to combine data from multiple Idocs into a file.

4. Use this mapping in BPM by using transformation step.

5. Use a send step to send data to a file.

Regards

Sami

Reward points if helpful.

Former Member
0 Kudos

Hi,

if your IDocs are all of the same type you could the standard BPM pattern Time Dependent Loop:

http://help.sap.com/saphelp_nw04/helpdata/en/08/16163ff8519a06e10000000a114084/frameset.htm

Regards

Patrick

Former Member
0 Kudos

There are 2 ways to do it. One using BPM and another without BPM

1.

In this case, your BPM would be...

Receive----> Container - transformation-> Send

Use Deadline Branch to limit collecting time

2.

Collecting IDocs without using BPM----> File port

/people/stefan.grube/blog/2006/09/18/collecting-idocs-without-using-bpm

Former Member
0 Kudos

hi

Another idea for collecting IDocs consists in using standard functionality of the IDoc. Instead of sending the IDoc directly to the XI via the IDoc adapter, you can download the IDocs gathered in a file with XML format. This file can now be uploaded by the sender file adapter. As the XML structure is the same as the IDoc adapter produces, there is no change of the behaviour of the message, besides there no single IDoc inside, but multiple IDocs instead.

1)As first step you go to WE21 and create an XML file port in the application system. Apply here a function module for creating the file name. You can use a standard module or a self-written module.

2)Schedule report RSEOUT00 with a variant where you assign the IDoc type, the xml port and the number of IDocs which shall be collected.

3)The report collects all IDocs in one file, until the "Maximal number of IDoc" is reached. When you have for example 2400 IDocs and you set "Maximal number of IDoc" to 1000, you receive 3 files, two with 1000 IDocs and one with 400. Inside the file there is one IDoc tag for each IDoc.

Do not gather too many IDocs into one file. The file size should be considered carefully. Too large files might cause memory leaks, when your hardware is not sufficient.

The files can be uploaded by the sender file adapter. When you collect IDocs of the same type, the Mapping can be done the same way as for IDocs processed by the IDoc adapter.

check the blog

/people/stefan.grube/blog/2006/09/18/collecting-idocs-without-using-bpm

Note: reward points if solution found helpfull

Regards

Chandrakanth.k

Former Member
0 Kudos

Thank you. When I run RSEOUT00 , got message "No IDoc is ready for processing".

I'm wondering this scenario is IDoc to file, a little different.

Former Member
0 Kudos

the report collects the IDOC and sends to the port. could you confirm that u have IDOCs getting created