Xml - Multiple IDOC

Hi All,
I do receive an XML file which should be mapped into multiple IDOC...
An Webblog talking about it ??? In the message mapping I suppose I should change
the target messages occurs from 1 to 1..Outbound...
But how do it say how is the split done ????
Thanks

Hi Stephan,
IDOC having occurrence 1....Outbound means that for the no. of records coming in XMl file say 5 then 5 idoc will be generated on receiver side
For each separate record in XML a separate IDOC will be generated.
look at this link
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/877c0d53-0801-0010-3bb0-e38d5ecd352c
<b>Basically the root node of XML message is mapped to IDOC node, so for each occurance of the XML root node an IDOC node will occur.</b>
Sachin
Message was edited by:
        Sachin Dhingra

Similar Messages

  • Merging multiple idocs into 1 XML output

    Hi Gurus,
      I've got a scenario whereby i will need to send payment documents via idocs to XI and XI will output them into an XML file.
    At the moment, when i perform a payment run for multiple vendors and send the idocs out, i realised that multiple idocs are being sent out and XI will output multiple XML docs.
    Is there any way i can merged these idocs into a single XML document? The idocs are all from the same system.
    Thanks in advance.

    HI,
    I think this is possible using PACKAGING.
    Check this note 814393 on Service Market Place.
    You want to create or process an XI message with multiple instances of an IDoc (of the same IDoc or extension type) in the mapping.
    Please refer below link to follow the steps to Merge IDOCs under single XML,
    SAP Network Blog: Collecting IDocs without using BPM
    Collecting IDocs without using BPM
    IDoc packaging
    Reason and Prerequisites
    The relevant IDoc is imported into the Integration Repository.
    Solution
    1) Log on to the Integration Repository.
    2) Open the relevant IDoc in the object editor.
    3) Select the "Export XSD" menu option in the "Tools" menu.
    4) In the subsequent dialog box, assign a file name and save the data to the hard disk of your local PC.
    5) Open the file that you have saved in step 4 in an adequate editor (for example, Notepad) for editing.
    6) Locate the first entry: <xsd:element name="IDOC" type="<
    Idocname>"> and add the following expression, maxOccurs="unbounded", between the value of the type attribute and the closing angular bracket.
    Example:
    <xsd:element name="IDOC" type="ADR2MAS.ADR2MAS02"
    maxOccurs="unbounded">
    7) Save the modified file to the hard disk of your local PC.
    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.
    Thnaks
    swarup

  • Splitting multiple IDoc XML files into single IDoc messages for R/3

    Hi all. I have a problem splitting IDoc XML files coming in to XI. I currently have an interface that takes in single store sale IDoc transactions (type WPUBON01) in an IDoc XML file. I then have some complex graphical mapping on the IDoc before sending to R/3 via the IDoc adapter. This works fine. However, we now wish to include multiple sales in one file i.e. many WPUBON01 IDocs. I could use message splitting to do this BUT the mapping is so complex, I do not wish to have to change it to enable the processing of many IDocs in one file instead of just one.
    What I want to do: have one mapping splitting a multiple IDoc XML file into single IDoc messages and then another taking these single messages as before and performing the mapping. I cannot find a way to do this in one interface; the main problem I'm having is getting XI to split the multiple IDocs into many single IDoc messages within XI itself. I'd be very grateful for any advice on the best way to do this.
    Thankyou.
    Stuart Richards (Halfords, UK)

    Bhavesh,
    Thanks again for a clear explanation... I'm moving forwards but still struggling. I've been on this all afternoon today (after a break on other things) and just cannot get my message to split properly (though the SOAP adapter problem I had earlier is now fixed!). If my initial IDoc XML file contains this format:
    <WPUBON01><IDOC>....</IDOC>
                          <IDOC>....</IDOC>
                          <IDOC>....</IDOC></WPUBON01>
    .. I'm not sure what the cardinaility on the first message mapping and interface mapping should be. I'd have thought the source interface would be 1 and the target would be 0..unbounded but this isn't working. I'm trying different things but I get different errors each time. Currently, I have the above cardinality in my first interface and I'm passing in the following data:
    <WPUBON01><IDOC><EDI_DC40><TABNAM>EDI_DC40</TABNAM><MANDT /><DOCNUM /><DOCREL>620</DOCREL><DIRECT>2</DIRECT><IDOCTYP>WPUBON01</IDOCTYP><MESTYP>WPUBON</MESTYP><MESCOD>ST6</MESCOD><SNDPOR>WPUX</SNDPOR><SNDPRT>KU</SNDPRT><SNDPRN>0518</SNDPRN><RCVPOR /><RCVPRT>KU</RCVPRT><RCVPRN>0518</RCVPRN><REFINT>00000003832292</REFINT></EDI_DC40><E1WPB01 SEGMENT="1"><POSKREIS>0518</POSKREIS><KASSID>29</KASSID><VORGDATUM>20071029</VORGDATUM><VORGZEIT>160633</VORGZEIT><BONNUMMER>1001</BONNUMMER><KASSIERER>100</KASSIERER><CSHNAME> </CSHNAME><BELEGWAERS>GBP</BELEGWAERS><E1WPB02 SEGMENT="2"><VORGANGART /><QUALARTNR>ARTN</QUALARTNR><ARTNR>000000065601301390</ARTNR><VORZEICHEN>-</VORZEICHEN><MENGE>1</MENGE><AKTIONSNR>0000000000</AKTIONSNR><REFBONNR> </REFBONNR><E1WPB03 SEGMENT="3"><VORZEICHEN /><KONDITION>PN10</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03><E1WPB03 SEGMENT="4"><VORZEICHEN></VORZEICHEN><KONDITION>ZPN1</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03></E1WPB02><E1WPB02 SEGMENT="5"><VORGANGART /><QUALARTNR>ARTN</QUALARTNR><ARTNR>000000065601301390</ARTNR><VORZEICHEN>-</VORZEICHEN><MENGE>1</MENGE><AKTIONSNR>0000000000</AKTIONSNR><REFBONNR> </REFBONNR><E1WPB03 SEGMENT="6"><VORZEICHEN /><KONDITION>PN10</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03><E1WPB03 SEGMENT="7"><VORZEICHEN></VORZEICHEN><KONDITION>ZPN1</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03></E1WPB02><E1WPB02 SEGMENT="8"><VORGANGART /><QUALARTNR>ARTN</QUALARTNR><ARTNR>000000065601301390</ARTNR><VORZEICHEN>-</VORZEICHEN><MENGE>1</MENGE><AKTIONSNR>0000000000</AKTIONSNR><REFBONNR> </REFBONNR><E1WPB03 SEGMENT="9"><VORZEICHEN /><KONDITION>PN10</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03><E1WPB03 SEGMENT="10"><VORZEICHEN></VORZEICHEN><KONDITION>ZPN1</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03></E1WPB02><E1WPB02 SEGMENT="11"><VORGANGART /><QUALARTNR>ARTN</QUALARTNR><ARTNR>000000065601301390</ARTNR><VORZEICHEN>-</VORZEICHEN><MENGE>1</MENGE><AKTIONSNR>0000000000</AKTIONSNR><REFBONNR> </REFBONNR><E1WPB03 SEGMENT="12"><VORZEICHEN /><KONDITION>PN10</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03><E1WPB03 SEGMENT="13"><VORZEICHEN></VORZEICHEN><KONDITION>ZPN1</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03></E1WPB02><E1WPB02 SEGMENT="14"><VORGANGART /><QUALARTNR>ARTN</QUALARTNR><ARTNR>000000065601301390</ARTNR><VORZEICHEN>-</VORZEICHEN><MENGE>1</MENGE><AKTIONSNR>0000000000</AKTIONSNR><REFBONNR> </REFBONNR><E1WPB03 SEGMENT="15"><VORZEICHEN /><KONDITION>PN10</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03><E1WPB03 SEGMENT="16"><VORZEICHEN></VORZEICHEN><KONDITION>ZPN1</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03></E1WPB02><E1WPB06 SEGMENT="17"><VORZEICHEN></VORZEICHEN><ZAHLART>PTCS</ZAHLART><SUMME> </SUMME><KARTENNR /><ZUONR>1001</ZUONR></E1WPB06></E1WPB01></IDOC><IDOC><EDI_DC40><TABNAM>EDI_DC40</TABNAM><MANDT /><DOCNUM /><DOCREL>620</DOCREL><DIRECT>2</DIRECT><IDOCTYP>WPUBON01</IDOCTYP><MESTYP>WPUBON</MESTYP><MESCOD>ST6</MESCOD><SNDPOR>WPUX</SNDPOR><SNDPRT>KU</SNDPRT><SNDPRN>0518</SNDPRN><RCVPOR /><RCVPRT>KU</RCVPRT><RCVPRN>0518</RCVPRN><REFINT>00000003832293</REFINT></EDI_DC40><E1WPB01 SEGMENT="1"><POSKREIS>0518</POSKREIS><KASSID>29</KASSID><VORGDATUM>20071029</VORGDATUM><VORGZEIT>160634</VORGZEIT><BONNUMMER>1002</BONNUMMER><KASSIERER>100</KASSIERER><CSHNAME> </CSHNAME><BELEGWAERS>GBP</BELEGWAERS><E1WPB02 SEGMENT="2"><VORGANGART /><QUALARTNR>ARTN</QUALARTNR><ARTNR>000000065601301390</ARTNR><VORZEICHEN>-</VORZEICHEN><MENGE>1</MENGE><AKTIONSNR>0000000000</AKTIONSNR><REFBONNR> </REFBONNR><E1WPB03 SEGMENT="3"><VORZEICHEN /><KONDITION>PN10</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03><E1WPB03 SEGMENT="4"><VORZEICHEN></VORZEICHEN><KONDITION>ZPN1</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03></E1WPB02><E1WPB02 SEGMENT="5"><VORGANGART /><QUALARTNR>ARTN</QUALARTNR><ARTNR>000000065601301390</ARTNR><VORZEICHEN>-</VORZEICHEN><MENGE>1</MENGE><AKTIONSNR>0000000000</AKTIONSNR><REFBONNR> </REFBONNR><E1WPB03 SEGMENT="6"><VORZEICHEN /><KONDITION>PN10</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03><E1WPB03 SEGMENT="7"><VORZEICHEN></VORZEICHEN><KONDITION>ZPN1</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03></E1WPB02><E1WPB02 SEGMENT="8"><VORGANGART /><QUALARTNR>ARTN</QUALARTNR><ARTNR>000000065601301390</ARTNR><VORZEICHEN>-</VORZEICHEN><MENGE>1</MENGE><AKTIONSNR>0000000000</AKTIONSNR><REFBONNR> </REFBONNR><E1WPB03 SEGMENT="9"><VORZEICHEN /><KONDITION>PN10</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03><E1WPB03 SEGMENT="10"><VORZEICHEN></VORZEICHEN><KONDITION>ZPN1</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03></E1WPB02><E1WPB02 SEGMENT="11"><VORGANGART /><QUALARTNR>ARTN</QUALARTNR><ARTNR>000000065601301390</ARTNR><VORZEICHEN>-</VORZEICHEN><MENGE>1</MENGE><AKTIONSNR>0000000000</AKTIONSNR><REFBONNR> </REFBONNR><E1WPB03 SEGMENT="12"><VORZEICHEN /><KONDITION>PN10</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03><E1WPB03 SEGMENT="13"><VORZEICHEN></VORZEICHEN><KONDITION>ZPN1</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03></E1WPB02><E1WPB02 SEGMENT="14"><VORGANGART /><QUALARTNR>ARTN</QUALARTNR><ARTNR>000000065601301390</ARTNR><VORZEICHEN>-</VORZEICHEN><MENGE>1</MENGE><AKTIONSNR>0000000000</AKTIONSNR><REFBONNR> </REFBONNR><E1WPB03 SEGMENT="15"><VORZEICHEN /><KONDITION>PN10</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03><E1WPB03 SEGMENT="16"><VORZEICHEN></VORZEICHEN><KONDITION>ZPN1</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03></E1WPB02><E1WPB06 SEGMENT="17"><VORZEICHEN></VORZEICHEN><ZAHLART>PTCS</ZAHLART><SUMME> </SUMME><KARTENNR /><ZUONR>1002</ZUONR></E1WPB06></E1WPB01></IDOC><IDOC><EDI_DC40><TABNAM>EDI_DC40</TABNAM><MANDT /><DOCNUM /><DOCREL>620</DOCREL><DIRECT>2</DIRECT><IDOCTYP>WPUBON01</IDOCTYP><MESTYP>WPUBON</MESTYP><MESCOD>ST6</MESCOD><SNDPOR>WPUX</SNDPOR><SNDPRT>KU</SNDPRT><SNDPRN>0518</SNDPRN><RCVPOR /><RCVPRT>KU</RCVPRT><RCVPRN>0518</RCVPRN><REFINT>00000003832294</REFINT></EDI_DC40><E1WPB01 SEGMENT="1"><POSKREIS>0518</POSKREIS><KASSID>29</KASSID><VORGDATUM>20071029</VORGDATUM><VORGZEIT>160634</VORGZEIT><BONNUMMER>1003</BONNUMMER><KASSIERER>100</KASSIERER><CSHNAME> </CSHNAME><BELEGWAERS>GBP</BELEGWAERS><E1WPB02 SEGMENT="2"><VORGANGART /><QUALARTNR>ARTN</QUALARTNR><ARTNR>000000065601301390</ARTNR><VORZEICHEN>-</VORZEICHEN><MENGE>1</MENGE><AKTIONSNR>0000000000</AKTIONSNR><REFBONNR> </REFBONNR><E1WPB03 SEGMENT="3"><VORZEICHEN /><KONDITION>PN10</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03><E1WPB03 SEGMENT="4"><VORZEICHEN></VORZEICHEN><KONDITION>ZPN1</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03></E1WPB02><E1WPB02 SEGMENT="5"><VORGANGART /><QUALARTNR>ARTN</QUALARTNR><ARTNR>000000065601301390</ARTNR><VORZEICHEN>-</VORZEICHEN><MENGE>1</MENGE><AKTIONSNR>0000000000</AKTIONSNR><REFBONNR> </REFBONNR><E1WPB03 SEGMENT="6"><VORZEICHEN /><KONDITION>PN10</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03><E1WPB03 SEGMENT="7"><VORZEICHEN></VORZEICHEN><KONDITION>ZPN1</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03></E1WPB02><E1WPB02 SEGMENT="8"><VORGANGART /><QUALARTNR>ARTN</QUALARTNR><ARTNR>000000065601301390</ARTNR><VORZEICHEN>-</VORZEICHEN><MENGE>1</MENGE><AKTIONSNR>0000000000</AKTIONSNR><REFBONNR> </REFBONNR><E1WPB03 SEGMENT="9"><VORZEICHEN /><KONDITION>PN10</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03><E1WPB03 SEGMENT="10"><VORZEICHEN></VORZEICHEN><KONDITION>ZPN1</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03></E1WPB02><E1WPB02 SEGMENT="11"><VORGANGART /><QUALARTNR>ARTN</QUALARTNR><ARTNR>000000065601301390</ARTNR><VORZEICHEN>-</VORZEICHEN><MENGE>1</MENGE><AKTIONSNR>0000000000</AKTIONSNR><REFBONNR> </REFBONNR><E1WPB03 SEGMENT="12"><VORZEICHEN /><KONDITION>PN10</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03><E1WPB03 SEGMENT="13"><VORZEICHEN></VORZEICHEN><KONDITION>ZPN1</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03></E1WPB02><E1WPB02 SEGMENT="14"><VORGANGART /><QUALARTNR>ARTN</QUALARTNR><ARTNR>000000065601301390</ARTNR><VORZEICHEN>-</VORZEICHEN><MENGE>1</MENGE><AKTIONSNR>0000000000</AKTIONSNR><REFBONNR> </REFBONNR><E1WPB03 SEGMENT="15"><VORZEICHEN /><KONDITION>PN10</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03><E1WPB03 SEGMENT="16"><VORZEICHEN></VORZEICHEN><KONDITION>ZPN1</KONDITION><KONDVALUE>1.00</KONDVALUE><CONDID /><QUALCONDID /></E1WPB03></E1WPB02><E1WPB06 SEGMENT="17"><VORZEICHEN></VORZEICHEN><ZAHLART>PTCS</ZAHLART><SUMME> </SUMME><KARTENNR /><ZUONR>1003</ZUONR></E1WPB06></E1WPB01></IDOC></WPUBON01>
    In the message monitor, I get a chequered flag. Great. However, I get the dreaded error 500 in the SOAP receiver comm channel:
    SOAP: response message contains an error XIAdapter/HTTP/ADAPTER.HTTP_EXCEPTION - HTTP 500 Internal Server Error
    Exception caught by adapter framework: SOAP Error
    Delivery of the message to the application using connection AFW failed, due to: SOAP Error.
    Any ideas as to what this might be?! I'm getting there.... if I get a solution out of this, I promise to write the blog myself!
    Cheers
    Stuart

  • Multiple iDocs in a single file

    Hello,
    I'm working on some integration to send a purchase order change file into SAP from BizTalk.  Everything works when we send every change as its own iDoc, or when we send all changes for a single PO in a single file, but when we try and include multiple iDocs in a single send, we get an error that it has to many elements.  The definition below is of the idocData element which indicates it can send more than one:
    <xs:elementxmlns:q2="http://Microsoft.LobServices.Sap/2007/03/Types/Idoc/3/PORDCH03//711"minOccurs="1" maxOccurs="2147483647" name="idocData" nillable="true"type="q2:PORDCH03">
    A sample of the file:
    <?xml version="1.0"?>
    <ns0:Send xmlns:ns3="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:ns2="http://Microsoft.LobServices.Sap/2007/03/Types/Idoc/Common/" xmlns:ns1="http://Microsoft.LobServices.Sap/2007/03/Types/Idoc/3/PORDCH03//711" xmlns:ns0="http://Microsoft.LobServices.Sap/2007/03/Idoc/3/PORDCH03//711/Send">
         <ns0:idocData>
            <ns1:EDI_DC40>
            </ns1:EDI_DC40>
            <ns1:E2PORDCH000GRP>
            ......        </ns1:E2PORDCH000GRP>
        </ns0:idocData>
        <ns0:idocData>
            <ns1:EDI_DC40>
            </ns1:EDI_DC40>
            <ns1:E2PORDCH000GRP>
         </ns1:E2PORDCH000GRP>
        </ns0:idocData>
    </ns0:Send>

    Hey Josh,
    Hope your issue is fixed by now.
    If not please check the Inbound Process code of the Order which is triggering Idoc in the SAP System.
    You have to modify that as per se your need.
    Thanks.

  • Not able to Post multiple IDOCS

    Hi All,
    I am getting my output from XSLT mapping like below:
    <?xml version="1.0" encoding="UTF-8" ?>
    <ZORDERS5>
    + <IDOC BEGIN="1">
    + <IDOC BEGIN="1">
    </ZORDERS5>
    But in the SAP R/3 it is able to post only the last IDOC (which is second IDOC in this case). I want to post all the IDOCS. What could be the problem?
    Edited by: sreinivas prak on May 13, 2008 11:12 AM

    Hi Srinivas,
    Post multiple IDOCS
    There are two Message Mappings involved in the whole scenario. First mapping is N:1 Mapping which will be used in BPM and second Mapping is 1:1 Mapping:
    1.     First Message Mapping &#61664; N: 1 – Mapping between IDoc (occurrence – 0...unbounded in “Messages” tab) to IDoc with changed occurrence of its top node (IDOC) as 0...unbounded.
    Check these Blogs:
    /people/michal.krawczyk2/blog/2005/12/04/xi-idoc-bundling--the-trick-with-the-occurance-change
    /people/stefan.grube/blog/2006/09/18/collecting-idocs-without-using-bpm
    /people/sap.user72/blog/2005/01/28/setting-up-inbound-qrfc-queues-for-serializing-idocs-using-the-idoc-adapter
    /people/prasadbabu.nemalikanti3/blog/2006/02/24/collecting-and-bundling-vendor-records-from-different-multiple-interfaces-file-systempeoplesoft-and-sending-to-sap-r3-system-part-1
    Thanks,
    Satya  Kumar
    Edited by: SATYA KUMAR AKKARABOYANA on May 13, 2008 11:21 AM

  • XML to Idoc- XML size more than 200 MB

    Hi Experts,
    I have an interface with source xml file size more than 200MB. I need to map it to Idoc and send it to ERP. I am planning to change wsdl of idoc(changing occurence 1.1 to 0.99999) to send multiple idocs in one message.
    I want to split XML file somehow and send it. what are the different options i have to achieve that ?  I am short of ideas.
    I know if we have flat file,  we can use recordset per message in sender file adapter.
    OR
    Cleint is willing to send it as a SOAP request, i do not want to use SOAP for such a big file.
    Regards
    Inder

    Hi Inder,
    As per sap recommendation we would be able to handle 100 MB, you need to tune your server by increasing the [arametersso that you would be able to handle the messages with big payload.
    By default the parameter  icm/HTTP/max_request_size_KB will be 10240 which can handle 100MB of file size.if you increase the parameter value by tuning ur system you can process a file bigger than that..
    Please refer to the below links for reference....
    [link1|http://help.sap.com/saphelp_nw04s/helpdata/en/58/108b02102344069e4a31758bc2c810/content.htm]
    [link2|http://help.sap.com/saphelp_nwpi71/helpdata/de/95/1528d8ca4648869ec3ceafc975101c/content.htm]
    as per the above suggestions the best practice is to sand as a multiple idocs splitting into chunks.
    Cheers!!!!
    Naveen.

  • Sending multiple IDocs (all in single file) to FTP via XI

    Hi All,
    We have a requirement as below where we are looking for various feasible solutions.
    The requirement is to collect multiple IDocs in ERP (2000-5000 in number) per day (either Flat File or XML) and needs to be sent as a single File (which has all these IDocs) to FTP Server via XI.
    BPM is not allowed to use and we are working on PI 7.0, so IDoc packaging is also not applicable. There is no mapping required, we need to just route them to FTP from ERP System.
    Looking forward for various solutions.
    Regards,
    N. Jayanth Kumar.

    Hi,
         Using the XML file port at R/3 to collect the Idocs would be a feasible solution. Also, as Sunil as already pointed out, you can configure this as a pass through interface, which will improve your overall processing time.
    Another solution can be to pass the Idocs to PI and then use the append mode in the receiver file adapter to collect the days idoc into a single file.
    To append only idocs for a particular day, try using dynamic filename, where file would have the date in it. This way, only Idocs for a particular day would be appended.
    Regards

  • Multiple IDocs - XI - Flat file

    We are looking at a scenario to send multiple IDOCS from SAP to Flat File. We implemented this using the Collect Pattern in BPM, merge all the IDocs into a single message and write it in a file. But is there any a way to avoid BPM and still be able to send multiple IDOCS in a package to be written onto one file?
    Thanks
    Vinoda

    Hi,
    I think this is possible using PACKAGING.
    Check this note <b>814393</b> on Service Market Place.
    <i>You want to create or process an XI message with multiple instances of an IDoc (of the same IDoc or extension type) in the mapping.
    The payload of the relevant message is to have the following the format:
    <IDOCTYP>
    <IDOC>...</IDOC>
    <IDOC>...</IDOC>
    </IDOCTYP>
    To be able to process these messages in the message mapping of the source system and to create them in the target system, you need an XML schema for the IDOC that allows multiple instances of the IDOCtag.
    If the relevant IDOC is imported into the Integration Repository, the system generates an XML schema that sets the number of instances of the IDOC tag to exactly one.
    The following describes how you can manually change the XML schema so that multiple instances of the IDOC tag are allowed, and how you can make the modified XML schema available to an adequate message mapping.
    Other terms
    IDoc packaging
    Reason and Prerequisites
    The relevant IDoc is imported into the Integration Repository.
    Solution
    1) Log on to the Integration Repository.
    2) Open the relevant IDoc in the object editor.
    3) Select the "Export XSD" menu option in the "Tools" menu.
    4) In the subsequent dialog box, assign a file name and save the data to the hard disk of your local PC.
    5) Open the file that you have saved in step 4 in an adequate editor (for example, Notepad) for editing.
    6) Locate the first entry: <xsd:element name="IDOC" type="<
    Idocname>"> and add the following expression, maxOccurs="unbounded", between the value of the type attribute and the closing angular bracket.
    Example:
    <xsd:element name="IDOC" type="ADR2MAS.ADR2MAS02"
    maxOccurs="unbounded">
    7) Save the modified file to the hard disk of your local PC.
    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.
    </i>
    Regards,
    Bhavesh

  • File Split to Multiple IDocs

    Hi all
    I have a problem with splitting an flat file into multiple IDocs. My attempt was to do this without BPM as mentioned in some similar posts, but I am not sure about how to get the file splitted. The flat file has multiple orders with multiple line items and each order should create a single IDoc of type ORDERS.ORDERS05. I have imported the IDoc as external definition with IDOC being 0...unbounded. My input file looks as following:
    ORDER1|LINE1|SOMETHING
    ORDER1|LINE2|SOMETHING
    ORDER1|LINE3|SOMETHING
    ORDER2|LINE1|SOMETHING
    ORDER2|LINE2|SOMETHING
    I have been getting this into the appropriate PI XML structure like:
    MT_Order
    ...OrderRecordSet  (0...unbounded)
    ......OrderRecord    (1...1)
    How do I get this into multiple IDocs for each ORDERx with its n LINE items? I was thinking of SplitByValue with value change on PO, but this doesn't seem to work.
    Any feedback appreciated. Thanks,
    Daniel

    Dear Daniel,
    You can achieve the required by using MultiMapping without BPM. Pls refer to the following blog for the same,
    /people/jin.shin/blog/2006/02/07/multi-mapping-without-bpm--yes-it146s-possible
    Apart from the above, if allowd you can changed the IDOC occurrence and change the XSD of the IDOC and you can achieve the requirement with the simple message mapping.
    Thanks
    Prasanna

  • Creating multiple idocs in ABAP mapping

    Hi,
    my scenario is source message (JDBC) to target message (idoc).
    There can be multiple idocs (unbounded).
    I am using ABAP mapping to create the Idoc XML structure. For this i use function module IDX_IDOC_TO_XML.
    The idoc is getting created but the problem occurs in case of generating multiple idoc instances.
    I changed the idoc occurence to unbounded & used the new idoc external definition in the interface mapping.
    I also call the IDX_IDOC_TO_XML & create the output stream factory in a loop (per idoc ).
    However only 1 idoc gets generated every time.
    Can someone suggest how to create the multiple idocs.
    Regards
    Prasenjit

    Hi Prasenjit,
    In order to generate multiple idoc first of all you need to change the target structure with multiple occurence...that you have already done...
    Now while generating XML in abap mapping you have to make sure you have element idoc(with its content) repeating for your "N" number of idocs...
    can you please copy paste your final xml generated...
    Nilesh

  • XML to IDOC : Hierarchy mapping help needed

    Hi All,
    I am trying to complete graphical mapping for an XML to IDOC structure. Both structures are EXACTLY same, but data is not populating in IDOC as desired.
    My incoming XML structure and IDOC structure is
    Header
    Data_header  (1 -- 999)
      |_Data_item (1 -- 3)
    Trailer
    If I have only 1 header, then IDOC data is populated correctly.
    But when I have multiple headers and theer items, the Headers are getting populated, but items do not get populated correctly.
    *Example  My Input is:*
    Header
    Data_header
      |_Item_1
      |_item_2
    Data_header
      |_item_3
    Trailer
    My output is (IDOC)
    Header
    Data_header
      |_Item_1
    Data_header
      |_Item_2
    Trailer
    As seen above Item3 of Data_header2 has gone missing._
    For Data Header, I am using REMOVE_CONTEXT function and for ITEM I am using SPLITBYVALUE. Thought this should have helped, but am struggling.
    Any tips, help, greatly appreciated.
    Many thanks
    Shirin

    Hello,
    Have you done one to one mapping, as u mentiong they are exactly same..
    if that's the case, then mapping test should be successful.
    If there is any diffrence in occurences of target structure or any other difference and let me know.
    If possible send me the target structure...
    Regards,
    Sreenivas.

  • File to multiple IDOCs error

    Dear All,
            I am trying to create customer master using FILE-To-Multiple IDocs.Idoc generated with 2 errors.
    1.First one is status 51...Specify the Account Group.
    2.Second one is it's generating only single idoc(not multiple).
    I have mapped Account Group source field to KTOKD(Idoc).is this mapping problem?I have given IDOC occurence unbounded but not generating multiple idocs.below is my message mapping structure.
    mt_customer                                                   Debmas01
      customer  (1...1)                                
        customer_master(1..unbounded)----
    >IDOC (1..unbounded)
    below is my input xml file with data.
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:mt_customer xmlns:ns0="urn://fenestacustmast">
       <Customer>
          <Customer_master>
             <AccountGroup>0004</AccountGroup>
             <CustomerNumber/>
             <CompanyCode>1000</CompanyCode>
             <SalesOrg>DBPM</SalesOrg>
             <DistributionChannel>PS</DistributionChannel>
             <Division>WD</Division>
             <Title>Mr</Title>
             <Name>Preethi</Name>
             <SearchTerm>Mat</SearchTerm>
             <SearchTerm2>V6CUSTNO</SearchTerm2>
             <StreetNumber>Street 6</StreetNumber>
             <City>Bangalore</City>
             <Country>IN</Country>
             <Region>KAR</Region>
             <TransporationZone>ASCHTS01</TransporationZone>
             <Fax>251662546</Fax>
             <Telephone>9658965236</Telephone>
             <VATRegNo>ABCG1254</VATRegNo>
             <LegalStatus>01</LegalStatus>
             <ReconAccount>36023901</ReconAccount>
             <SortKey>001</SortKey>
             <TermsOfPayment>S028</TermsOfPayment>
             <ToleranceGroup>1000</ToleranceGroup>
             <PaymentHistRecord>TRUE</PaymentHistRecord>
             <SalesDistrict>A1KAKA</SalesDistrict>
             <SalesOffice>BPBL</SalesOffice>
             <SalesGroup>SEN</SalesGroup>
             <Currency>INR</Currency>
             <CustPricingProc>1</CustPricingProc>
             <CustStatsGroup>1</CustStatsGroup>
             <DeliveringPriority>01</DeliveringPriority>
             <ShippingConditions>01</ShippingConditions>
             <Plant>DBBG</Plant>
             <AccountAssGroup>01</AccountAssGroup>
             <TaxClassification>1</TaxClassification>
             <InvoicingDate>IN</InvoicingDate>
             <InvoicingListDate>IN</InvoicingListDate>
             <IncoTerms>FCA</IncoTerms>
             <IncotermsPart2>Bangalore</IncotermsPart2>
             <CreditControlArea>FENE</CreditControlArea>
          </Customer_master>
       </Customer>
    </ns0:mt_customer>
    I did very simple mapping one to one without any functions.All are string types.I couldn't find what is the error?any help would be appreciated.
    Thanks in advance.
    Vinay

    Hi,
        I would like to know whether you have mapped your customer_master(1..unbounded) node to IDOC(1..unbounded) node???Please check it once.Depending on that only the multiple IDOCs will be generated. I think it is mapping problem only. Have you changed the occurrence of IDOC to unbounded by exporting & then reimporting it to external definitions???? I've already done it & i got multiple IDOcs generated. Please check it and let me know the response so that I can help.
    Please follow th below links
    http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/877c0d53-0801-0010-3bb0-e38d5ecd352c
    /people/michal.krawczyk2/blog/2005/12/04/xi-idoc-bundling--the-trick-with-the-occurance-change
    Thanks & Regards
    Priyanka Anagani

  • File to Multiple Idocs, Error: Tag MESSAGE1 found instead of tag IDOC BEGIN

    Hi,
    I have configured my file to multiple idocs scenario using the following blog -
    /people/claus.wallacher/blog/2006/06/29/message-splitting-using-the-graphical-mapping-tool
    Now when i try to execute this scenario it is scenario it is giving me the following error at "Call Adapter" Stage in runtime-
    "Tag MESSAGE1 found instead of tag IDOC BEGIN="
    My message looks like this at "Request Message Mapping" Stage in runtime -
      <?xml version="1.0" encoding="UTF-8" ?>
    - <ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
    - <ns0:Message1>
    - <ZDR009>
    - <IDOC BEGIN="1">
    - <Z100901 SEGMENT="1">
      <RUNDATE>20080220</RUNDATE>
      <RUNTIME>0037</RUNTIME>
      <CONSTANT1>PYRLINCST</CONSTANT1>
      <CONSTANT2>CSC</CONSTANT2>
    - <Z100902 SEGMENT="1">
      <RECTYP>2</RECTYP>
      <SSN>641381239</SSN>
    Kindly assist me in solving this error, Thanks in Advance!!
    Regards.
    Sudheer

    Hi Sudheer,
    Just the check the message mapping. Check the parant node mappings to create two different messages.
    It seems that the mapping done on IDOC Node to create the IDOCs is getting failed.
    Copy the content from inbound payload and test it in message mapping.
    Remember, when you load the test data into your test tab you will get the error of structure mismatch coz in your mapping you have additional message.
    Do the change with original data as shown below befor testing.
    <?xml version="1.0" encoding="UTF-8" ?>
    <ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
       <ns0:Message1>
    Original message will be here.
    </ns0:Message1>
    </ns0:Messages>
    Regards,
    Sarvesh

  • Flat file to multiple IDOCs

    Hi experts,
    I have a bit of a problem here wit a flat file to IDOC interface.
    My input CSV file structure (shortened) is as follows -
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:POINBOUND_MT xmlns:ns0="urn:xx:xi:dwn:xx:pf:xxx:poinbound:100">
       <Record>
          <Row>
             <PO_HEADER_ID/>
             <TYPE_LOOKUP_CODE/>
             <LINE_NUM/>
             <AMOUNT_LIMIT/>
          </Row>
       </Record>
    </ns0:POINBOUND_MT>
    the target side is an idoc - PORDCR1.PORDCR102.
    in the input file, for each row the PO_HEADER_ID field will have repeated values. the structure for eg.-
    PO_HEADER_ID < other fields> < otherfields> ...
    12345 <other fields>..<..  >
    12345 <other fields>..<..>
    12345 <other fields>..<..>
    56789 <other fields>..<..>
    56789 <other fields>..<..>
    Now i need two idocs ( 2 distinct header values) on target side - the 1st idoc will have first 3 line items and 2nd idoc will have the last 2 line items.  have already edited the IDOC in xsd format to make it unbounded.
    <b><u>Problem</u></b> - i am able to create two idocs by handling contexts(splitbyvalue and a UDF), but with the line items its not working i.e. <u>the first idoc gets the 3 line items created but the 2nd idoc does not have any!</u> 
    my mapping for line items is -
    PO_HEADER_ID <-> splitbyvalue(value changed) <-> count <---> UDF (for result.addvalue using count)  <----->  lDOC LINE_ITEM node.
    This logic does not work incase i need to create more than one idoc on the target side, it only works for the first idoc..so wat can i do??
    Plz help.
    thnx in advance!
    Raju.

    Hi Raju,
    check these links...
    /people/anish.abraham2/blog/2005/12/22/file-to-multiple-idocs-xslt-mapping
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/877c0d53-0801-0010-3bb0-e38d5ecd352c
    Sachin

  • Multiple IDocs-XI-Single File Scenario

    Hi All,
       We need to send multiple IDocs from R/3 to XI and then to a single file using File Adapter. Please help us with your suggestions on how to proceed using a simple solution.
    Regards,
    Peter

    I made a program that solved the issue of collecting the IDOC in to one file.
    1.  The partent profile should be setup for collect idocs
    2.  Make a report that will select and dispatch the idocs
    seudo code:
    select tables with select criteria:
    edidc (idoc control)
    edid4 (idoc data)
    one yo have made you selection into internal tables
    it_final_edidc
    it_final_edid4
    *you can apply rules and data tranformations, eg. PEXR2002 batch per payment type.
    CALL FUNCTION 'EDI_OUTPUT_NEW'
               EXPORTING
                    onl_option  = 'B'
                ERROR_FLAG  = ' '
                NAST_RECORD =
               TABLES
                    i_edidc     = it_final_edidc
                    i_edidd     = it_final_edid4
               EXCEPTIONS
                    OTHERS      = 1.
      " EDI mesages dispatched
      IF sy-subrc EQ 0.
        COMMIT WORK.
        CALL FUNCTION 'DEQUEUE_ALL'
           EXPORTING
                _SYNCHRON = ' '
             EXCEPTIONS
                  OTHERS    = 1.
    That work like a charm when writting the IDOC to a single file.
    But when I send the IDOCS to XI like XML-IDOC I still receive one transaction per IDOC.
    if anyone know how to solve that, let me know.
    juan

Maybe you are looking for

  • Question on MDM 2.1 security.

    Hi All, We are trying to configure MDM 2.1 for our project and we have a question about security. One of our goal is to flter data according to a particular user. For instance, we have a group of users that will be able to see only their own data (so

  • LDAP_UNAVAILABLE how to tackle it

    i am using LDAP version 3.0 for fetctching data from Sun Directory Server 5.1. Using microsoft LDAP API in delphi 7.0 Use following API's first initialize session as FActiveDirSession := ldap_init(PChar(Host), PortNumber) Then bind to the server suin

  • IAS 6.0 SP3 Cluster install unexpected redirection of request.

    I'm having traffic from a web connector routed to a cluster that I didn't specify during the install. My clusters are in separate hosting centers to support network failure. When I send traffic to one cluster I'm noticing the application server in an

  • Regarding Designer Installation

    have succesfully installed the Oracle Designer but in designer's front panel we only have enabled the UTILITIES options (Repository Reports excepted), the rest of them are disabled (MODELLING SYSTEM REQUIREMENTS, GENERATING PRELIMINARY DESIGNS, DESIG

  • HT1296 Phone stuck on software update screen

    I tried doing a software update on my iphone 4s but now its stuck on the loading update screen. It won't finish loading, won't sync to the computer. I've tried several hard resets. Nothing works. I have pics of my baby i dont want to lose. Is there a