Generate multiple Idoc segments

Hi all,
I have a Flat file to Idoc Scenario.
I need to generate no. of multiple Idoc Segments based on the source field value.
For Eg: if Field1 starts with 5 or 6 then E1 segment should be created 5 times,
similarly if Field1 starts with 4 then E1 segment is created 6 times
And as many times E1 is created that many times the corresponding other E2,E3 segments are created
i.e E2 E3 has 1-1 relationship with E1
Can this be done graphically ?
Working on PI 7.0 Environment
I would appreciate your Inputs.
Regards,
Varun
Edited by: Varun Reddy on Oct 5, 2010 8:21 AM

Im pretty sure that if you duplicate the target segment the max number of times (6) but you only map to 4 of them, only 4 will be created in the target structure. Let the Mapping/Data drive how many segments actually get created in your target structure.
I could be wrong but Im pretty sure thats how Ive handled repeating segments before.

Similar Messages

  • How to generate multiple idoc's from single appl document

    All,
    Iam looking for a way to generate multiple idoc's from single appl document (sales order). Based on the plant details on line items in the sales order i have to generate multiple idocs, i.e., send one idoc to each plant entered in sales order line items. any help will be appreciated.
    Thanks

    Hi,
    You can create a Z-program and call Function Module  <b>MASTER_IDOC_DISTRIBUTE</b>.
    You can make a call to this FM to send the Idoc as many times as u have plants in your Sales Order.
    You can call FM <b>IDOC_OUTPUT_ORDRSP</b> to fill the IDoc structure.
    Then u can keep the materials of only that plant for which u want to pass on the information.
    Thanks,
    Utsah Garg.

  • EDI Output type generating multiple IDOCs

    Hi All,
    For one of the Business requirement we have created a Delivery EDI output type and output type is processed via Report RSNAST00 in a batch job.
    The delivery document shows only one output type prcossed still, mutiple idocs are being sent out for this Delivery.
    RSEOUT00 is being used to process outbound IDOC.
    Any pointers toward this abnormal behavior shall be helpful.
    BR,
    Anshul
    PS - We havent implemented change Pointers

    Okay, so you have one output record in the delivery document generating multiple IDocs. 
    Compare the control records of the generated IDocs.  Do they have the same Basic Type, Message Type and recipient Partner Number? 
    If yes,
    1.     Check for multiple background jobs running RSEOUT00 at the same time.  Seems unlikely, but this is easy to check and eliminate as a possible cause.
    2.     Step through the program RSEOUT00 as it generates the output type for one delivery document.  Perhaps something is happening in a user exit that inadvertently results in replication of the IDoc.
    Otherwise, the process code that gets executed by the output type in the delivery document is, for some reason, generating additional output.  I donu2019t know of any standard output process code that does this, but it could be deliberate (by design).  If you are sure that it should NOT happen, then step through the code and look for a mis-behaving user exit.
    Regards,
    zKen

  • Generate multiple idoc's from the single application doc(Sales order)

    Hi All,
    Iam working on a requirement where i have to generate multiple idoc's from a single sales order based on sales org, division on header data and plant at item level, if somebody please let me know how to proceed with this requirement.
    Thanks
    Kashif

    Hi,
    You can create a Z-program and call Function Module  <b>MASTER_IDOC_DISTRIBUTE</b>.
    You can make a call to this FM to send the Idoc as many times as u have plants in your Sales Order.
    You can call FM <b>IDOC_OUTPUT_ORDRSP</b> to fill the IDoc structure.
    Then u can keep the materials of only that plant for which u want to pass on the information.
    Thanks,
    Utsah Garg.

  • Mapping Items in XML string to multiple IDOC segments

    I would like to map an XML tag  <Text>Line1Line2Line3Line4</Text>
    to an IDOC segment E1ED1TEXT . Defined as occurring 0 to 999999.
    I would like to map each item separated by a tilde into a separate occurence of the IDOC text segment. Is ther anyway to repeat the mapping without duplicating the subtree.
    E1ED1TEXT
    Text_Id - "ZTXT"
    Text_Line = Line1
    E1ED1TEXT
    Text_Id - "ZTXT"
    Text_Line = Line2
    E1ED1TEXT
    Text_Id - "ZTXT"
    Text_Line = Line3

    Hello,
    This is only possible using UDF
    mapping is like this:
    Text -> UDF -> splitByValue:eachValue -> Text_Id
    UDF is of context type
    argument is input
    String temp[] = input[0].split("~");
    for(int a=0;a<temp.length;a++){
    result.addValue(temp[a]);
    Hope this helps,
    Mark

  • Concatenating texts from multiple IDoc segments

    Hi everybody!
    I have to concatenate log texts supplied via IDoc segments into one string. There can be zero or more segments, each with one line of the long text. The result should be one single string field filled with all the lines concatenated.
    What's the easiest way to achieve this result? Do I need a user-defined function or can I code this using standard built-in funtions (this solution would be preferred)?
    Regards,
    Joerg

    Use the UDF with the following logic.
    Take the input type as Queue of the Segments
    Concatenate the temp = temp + a<i> in the loop
    return the temp.
    <b>UDF as follows:</b>
    String temp = " ";
    for(int i=0; i< a.lenght; i++)
    temp = temp + a<i>
    return temp;
    Your probelm will solve with the above UDF.
    Warm Regards,
    Vijay

  • Multiple idoc segment values to field fixed length FCC

    Friends,
    I need help to resolve a mapping issue. here is the brief about the scenario.
    Scenario: IDoc to Flat file Fixed length fields
    Issue: Idocs has values in multiple segments. i need to check condition for each segment occurrence if value exists then pass value if not then pass constant (i have to pass constant so that i can get the actual column width after FCC)
    Iam using the following logic.
    If condition then value1 -> remove contexts -> split by value -> target
    My scenario works fine for the above mapping however when i try introduction a constant in "if then else" then all my contexts in the target structure messes up.
    Thanks for your help.
    Regards,
    Pavan

    Did you tried MapWithDefault before Remove Contexts? To give more perfect solution , we would like to see a sample structure.
    raj.

  • Multiple idoc segments from single flat file

    hi,
    I want to upload data throught LSMW,   in a single row i have many item. can anyone give me idea, how to proceed.
    2.  i have to show a custom error report linked to lsmw.. how to do it..
    waiting for your reply
    Thanks & Regards
    Dinesh

    What object do you need to load?
    What exactly is in the file (what kind of data) ?
    If it is a simple file with few fields, then i think a recording is the fastest methods. It does give you a detailed error log.
    But all this depends on the file you have

  • IDOC segment with multiple lines

    Hi,
    I have a requirement where I need to populate the multiple lines in one segment without getting created multiple segment.
    I am generating material with multiple line data in the additional data using MATMAS05 IDOC for segment E1MTXHM but its generating multiple sub segments. I need to have multiple lines in one segment and not multiple segment.
    Please let me know how to achieve multiple lines in one segment.
    Thanks & Regards,
    Rayan

    Hi Subas,
    I haven written any code as I am triggering IDOC through BD10. This is a testing requirement and we need any IDOC irresepective of MATMAS, DEBMAS, CREMAS etc etc which can have multiple lines in a single segemnt.
    Sample IDOC:
    Z2XXXXD000                                       00002300002203CTDI-PA
    90210 Testing Address
    CA
    Beverly Hills
    United States                                                             
    Z2XXXD000                                       00002400002203ON TESTING
    303 308 5319                                                                               
    Z2XXXXC000                                       00002500000102Z004E          
    Actually every IDOC I am generating is getting multiple segment and each segment holding one line and my requirement is that all the lines should be get accomadated in a single segment like the above sample IDOC.
    Actually each segment has segment name and IDOC no. followed by field values but my requirement is within one segment name and IDOC no. all the field values get accomadated. Hope you got the understanding of what my requirement is? Please guide me how to trigger multiple line in a segment.
    Thanks & Regards,
    Rayan

  • Multiple purchase orders in a file - Multiple IDOC'S based on lineitem

    Hello All,
    I have a typical requirement where as there needs to be "separate IDOCs for different material with distribution channel X and Y".
    The input is a file with multiple purchase oders inorder to generate multiple IDOCs..
    As a prerequisite I made changes in occurrence of target structure IDOC from 1..1  to 1..unbounded.
    I came to know from some sources that it can be achieved  through Java mapping but i am not aware of JAVA.
    Can anybody has the detailed Java mapping code?
    It would be great if anybody help me out from this issue .
    Thanks in advance.
    Best regards
    Hari

    Hi Raj,
    Thanks for your reply.
    May be we can achieve it using graphical mapping but its a edifact file   with multiple purchase orders.
    Internally we have some conditions like for every repetirion of the segment UNH new idoc number needs to generate
    i.e. UNH -
    >IDOC
    along with line item requirement.
    In this case need to handle logic at the top level as well as line item level or can club both.
    If possible can you please let me know what have you done in your case so that i can compare mine.
    Thanks once again.
    Hari

  • Collect Multiple IDOC(Single IDOC type) to single file using BPM

    Hi All,
    When i am generating multiple IDOC for the same message type, i am getting multiple payload for the same as a result i used to get multiple files generated in application server.
    Now if i use BPM only to collect multiple IDOC to a file then what all the steps that i need to follow for the same.
    Ex: I want to post 10 IDOC for a single IDOC type,, Now using BPM in XI i want to collect all the 10 IDOCs with multiple payload into one single message and then want to process this in XI to generate the file.
    It would be glad if anyone refer me a good step by step blog for the same.
    Thanks in advance,
    Jay

    Thanks a lot Abhisek.
      I have also got a blog explaining the exact thing. But in the blog the ID part was missing which is present in the link you have provided.
    I will be glad if you can through some light on the ID part,, however the IR part and the BPM part is now mostly okay to me.
    I will configure this today only,, and may seek your help for any huddle.
    Thanks a lot once again.
    Regards,
    Jay.

  • 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

  • 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

  • Generating an IDOC for each Order present in the file (File to IDOC)

    Hi ,
    I have a requirement where in i have to generate an idoc for each orders present in a file . Initially i had implemented 1:N mapping by changing the occurence of idoc to 1..unbounded & using it as external definition i was able to generate multiple idocs.
    But now the requirement is that even if one record contains invalid data , then XI shoul process remaining records(which has  valid data) & then raise an alert for the invalid record . I have implemented this approach by using BPM (splitting the message) & the sending out each record as a single message to (1:1 mapping between file & IDOC).
    But now they dont want me to use an BPM . They want me to come up with an approach using 1:N mapping only where in i can make sure that the mappig doesnt fail even if there is one invalid record ,they want me to process remaining records & raise an alert for the invalid one .
    As far as i know this cant be done without BPM . Please let me know any valuable suggestions or inputs if there is any
    Regards
    Vinay P.

    Hi Vinay,
    Had a similar requirement few days back..
    What we did was to do a multimapping of 1:N where N = N1 and N2, N1 is the Idocs which you are doing today, N2 is the set of invalid records...
    Now we have written this as a file and then created another interface which will pick the file and based on the name of file we decided the To address. We have used mail package and this interface (file to mail ) was made as a generic one so that it can be used across many interfaces...
    filename and To address relationship was maintained as a value mapping in ID... You can have a thought of this approach and try to send the invalid records as a mail rather than alert.
    Regards
    Suraj

  • IDoc segment issue

    Hi,
    I have file to Idoc scenario, where my input file structure like below and need to create Idoc segments in SAP.
    Input Structure:
    Record (1--Unbounded)
    Header (1-1)
    Item_Details (1- Unbounded)
    Child_ItemsInfo (1 -Unbounded)
    Item_1 (1--1)
    abc
    def
    Item_2 (1--1)
    abc
    def
    Item_3 (1--1)
    abc
    def
    Now..I need to generate an Idoc segment "Z1ABCD", as many as child Item segments(Item_1,Item_2,Item_3) occurs in my input structure. I have used duplicate subtree on Idoc segment "Z1ABCD" and copied 2 more times.Now I have 3 "Z1ABCD" segments in my IDoc.
    Lets say, if my input structure have 2 Child_ItemsInfo, then I need to generate 6 "Z1ABCD" segments in Idoc. I'm able generate these segments.
    My code generating all the Item_1 segments then Item_2 segments like that...But I'm expecting a "Z1ABCD" segment at Item_details node level...like Item1,2,3 and then Item1,2,3....Please help me out!
    Note: My mapping looks like this;
    Item_1 ->remove context>Split by value(each) ->CollapseContext->Z1ABCD
    Item_2 ->remove context>Split by value(each) ->CollapseContext->Z1ABCD
    Item_3 ->remove context>Split by value(each) ->CollapseContext->Z1ABCD
    the target structure which I'm lookin for like below...(for 2 Child_ItemsInfo from my input structure)
    1.Z1ABCD (Item_1 info)
    2.Z1ABCD (Item_2 info)
    3.Z1ABCD (Item_3 info)
    4.Z1ABCD (Item_1 info)
    5.Z1ABCD (Item_2 info)
    6.Z1ABCD (Item_3 info)
    But my code generating the segments like below;
    1.Z1ABCD (Item_1 info)
    2.Z1ABCD (Item_1 info)
    3.Z1ABCD (Item_2 info)
    4.Z1ABCD (Item_2 info)
    5.Z1ABCD (Item_3 info)
    6.Z1ABCD (Item_3 info)
    Esha
    Edited by: esha nadh on Mar 9, 2011 9:14 PM

    I am bit confused .
    Why are you using this ...
    remove context-->Split by value(each) --->CollapseContext
    Do Direct assignment like below
    even the context should not change . it shoule be default .,
    Item_1 - > Z1ABCD
    Item_2 - > Z1ABCD
    Item_3 - > Z1ABCD
    isnt it working fine ??????
    actually it should ..
    In your case .
    IZ1ABCD for Item_1 coming together because . you Used removeContext So Both  Item_1 comest together .. and then you doing transformation .. so the result are coming together...
    Try Like Direct assignment . I hoping it should work fine
    regds
    PS

Maybe you are looking for

  • E2: "lightning​" icon where battery condition should be

    Tungsten E2:  Instead of an indication of the amount of charge left in the battery, where it should be I ALWAYS get the "lightning" icon instead.  For months, even after a wipe-out (and re-installation of data) in connection with a battery replacemen

  • Delete a row a row in a table

    Hi there, I am using Oracle ADF Business Components - Data Controls. I need to delete a table row clicking a link contained in a column of the same row in a ADF table. From the Data Control panel I did drag-and-drop the removeRowWithKey operation of

  • Update quantity in sales order by 'BAPI_SALESORDER_CHANGE'

    I am trying to use the 'BAPI_SALESORDER_CHANGE' to change a sales order. I have to add a line item for empties in the sales order. the line gets sucessfully added but the quantity is not gettign updated. I have tried all the fields of table ITEM_IN (

  • Architecture of xi -r/3

    hi experts, iam new to xi,  how the landscape wil be  between xi- r/3, if any document or image !  or how the landscape was connected between them thank you

  • Lion Mail help

    I recently did a complete new clean install of Lion due to problems with wifi continuosly disconnecting, which always required a reboot.  Well, the clean install (vs. the upgrade I originally did) didn't help at all with wifi but it did cause me a fe