Issue In processing an IDoc with Huge Segments

Hi All,
When we are trying to process an Huge IDoc which has large number of segments. The IDoc process starts and stops in the middle and remains in 64 status ( there are no short dumps etc).
Currently the IDoc is configured to be Trigger Immediatly. However when we schedule the same IDoc in a background the IDoc is processed successfully.
So wanted to check what might be the reasons for Idoc to stop the process in between.
Regards,
Swaroop

Possible reasons :
- Huge memory consumption
- Large processing time for Idoc segments .
Idoc parsing and processing happens inside a LOOP statement around EDIDD table , now if you have larger no of segments this will lead to larger execution time .
There may be other performance reasons e.g. Read Table without Binary Search ; check the IDOC processing function module code .
Also check the SAP notes for the IDOC processing function module code ; just mentioning a similar SAP note 381942 .

Similar Messages

  • How outbound IDoc with Z segment is creating without using a program/FM?

    Hi,
    I am having an outbound IDoc with Z message type and segments.
    I need to find how this IDoc/ IDoc segment is getting created. I tried to find
    it using the segment’s where used list (in SE11- IDoc segment structure). But it
    is showing that the structure and fields are not used anywhere.
    How it is possible to create a Z segment in IDoc without
    using the corresponding structure in some program or function module?
    I have searched in google/scn for a solution, but didn’t find
    anything.
    Any one please helps me to find how this IDoc segment is
    populating?
    Regards,
    Dipin

    Hi Arthur,
    This IDoc is catering as part of a flow (Tcode IW21). I have
    set a break point in the function module ALE_IDOCS_CREATE and processed the transaction
    IW21, but the program didn’t stop in the break point, but the IDoc got created.
    Regards,
    Dipin

  • Inbound Processing of Idocs with status other than success

    Hi,
           I am new to ALE/Idocs. Can anyone  please let me know how can I process the Idocs which have the status other than 53.
    Thanks &  Regards,
    Indira

    Hi,
    In addition to the previous posts few more programs to process failed inbound IDocs are as mentioned below.
    - Use program RBDAGAIE to process edited IDocs (IDocs with status 69)
    - Use program RBDAPP01 to process IDocs failing with serialization issue (IDocs with status 66)
    - Use program RBDAGAI2 to process IDocs after ALE inbound error (IDocs with status 56, 61, 63, 65)
    ~ Bineah

  • Splitter program for processing the IDOCS with status 64.

    Hello folks,
    I have a requirement explained below. I am looking for a sample code which could help me to jump start with initial development.
    Requirement:
    Develop a splitter program which retrieves all the IDCOS with status 64, create and schedule batch jobs with 200 IDOCS each. The splitter program with be scheduled every 15 min.
    Restrictions
    Only 150 batch jobs can be created at a time.
    Estimation
    There may be around 36000 IDOCS with status 64 every hour.

    Srinivas,
    Here is the explaination why we require a splitter program.
    Using RBDAPP01 parellel processing
    Let us assume there are 4 servers A, B, C and D in a server group. If we select RBDAPP01 parellel processing there will be too many RFC calls to the servergroup.
    (there are some more RFC calls later on for Order creation for example). As there is a restriction with number of RFC calls, we need to clear other RFC's before making new one. This is making complex and messy.
    Using RDBAPP01 serial processing
    For the volume of orders getting created each day, it takes a week to process those Idoca created in one day. Hence it is not a good solution.
    Splitter program
    We spawn 150 batch jobs with 200 records each. This way if we think it takes 20 min for each job to complete...by the end of 20th min we must had processed 30000 idocs.
    Hence it is the solution offered.
    Srinivas...still this confuses me..but if I am wrong anywhere please correct me.
    But your initial response has helped me a lot. Everything was blank to me, ur reply made it clear over the requirement.
    Thanks a lot,
    Naren

  • Failed to process DELVRY03 IDoc  with 36,000 Segment

    Hi All,
    We have interface IDoc to JMS. ECC is sending DELVRY03 IDoc to XI to JMS.
    One of the IDoc couldnt reach to XI & produced memory error dump with exception "Heap limit exceeded on work process"  We have already set maximum heap size for abap/dialog heap.
    This problem occurs only when IDoc has more than 25,000 Segments.
    Is there any other way to compress the data on IDoc side ....?
    Any solution for this kind of situation
    Thanks

    Hi Rakesh,
    While importing the idoc into IR, make sure you reduce the idoc size.
    This could be done in the following manner
    Go to Imported Objects --> IDOC -->Ur Idoc --> Tools -> Export Reduced XSD.
    Use this reduced xsd in message mappings, other wise the mapping tool will fail with a memory dump failure error.
    Also check out ztta/max_memreq_MB parameter
    U may also do the background processing
    IDoc Sending Problem
    U could find some suggestions here
    iDoc performance question
    Regards,
    Prateek

  • BD64 filter IDoc with Z-Segments

    Hi,
    i made a customer extension to the cremas05 idoc and set a filter in the BD64 at E1LFA1M (first level).
    If the filter is true - the Idoc will be created through BD14
    If the filter is false - an error appear through BD14.
    "internal error: Program read_table ....data_select_for_block"
    After disableing the user Customer Exit (creation of the z-segment) ... the process is running fine with filter true and false.
    Is it not possible to filter an IDoc(extension) with an zsegment ?
    any ideas ?
    Regards,
    Gordon

    Hi Gordon,
    BD95 Define Filter object type .We can specify the field and the table it belongs ... It is used to create a new IDOC Type or IDOC Extension ....
    Outbound:
    Step 1. Application document is created when transaction is saved.
    2. Message control is invoked.
    3. Messages are processed by system.
    4. Messages are Edited (if desired).
    5. Output (ALE / EDI) is checked
    6. Validate against Message control record from Partner Profile
    7. Application Document is saved.
    8. Entry NAST table is created for every selected output program
    along with Medium & Timing.
    9. Check for Process Immediately .
    If (yes)
    Determine Processing Program from TNAPR Table.
    ELSE
    Execute RSNASTED Program.
    10. Read Partner Profile to determine Process Code.
    11. Process Code points to the Function Module & Invoked.
    12. IDoc is generated.
    13. Check for ALE Request.
    if (Yes)
    Perform Filters, Conversions, Version Changes etc.
    Else.
    IDoc is stored in DATABASE.
    INBOUND:
    Step 1. EDI Subsystem creates an IDoc file from EDI Messages
    2. Subsystem calls Functional Module EDI_DATA_INCOMING from startRFC program.
    3. Data in Control Record is validate against the Partner Profile.
    4. IDoc is generated in Database and syntax check is carried out.
    5. IDoc file is deleted once file read.
    6. Event PROCESSSTATE REACHED is triggered in Idoc Object Workflow.
    7. Check for Process Immediately.
    If NO
    Execute RBDAPP01 Program
    Else
    Read Process Code from Partner Profile
    Process Code Points to Function Module
    Application Document Posted.
    further help:
    check url
    http://www.sappoint.com/abap/ale.pdf
    http://www.sappoint.com/abap/ale2.pdf
    http://www.sapgenie.com/ale/configuration.htm
    http://www.sappoint.com/abap/ale.pdf
    http://www.sappoint.com/abap/ale2.pdf
    http://www.sapdevelopment.co.uk/training
    And also u can get lots of inof from the below link.
    http://www.sapgenie.com/ale/why_ale.htm
    http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
    http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
    http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
    http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
    http://www.sapgenie.com/sapedi/index.htm
    http://www.sappoint.com/abap/ale.pdf
    http://www.sappoint.com/abap/ale2.pdf
    http://www.sapgenie.com/sapedi/idoc_abap.htm
    http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a60bb507d11d18ee90000e8366fc2/frameset.htm
    http://help.sap.com/saphelp_erp2005/helpdata/en/78/217da751ce11d189570000e829fbbd/frameset.htm
    http://www.allsaplinks.com/idoc_sample.html
    http://www.sappoint.com/abap.html
    http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
    http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
    http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
    http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
    http://www.sapgenie.com/sapedi/index.htm
    http://www.allsaplinks.com/idoc_sample.html
    ALE Configuration
    ALE
    ALE
    Reward points if useful
    thanks
    karthik

  • IDOC with Multiple Segment to One Single Record Mapping

    Hello
    I have a problem mapping the values of the segment <E1CSKTM>
    which occurs two times in my source IDOC to a single record.
    My requirement is to get one field (LTEXT) from the first E1CSKTM segment and map it to Name and take the same field (LTEXT) but from the second E1CSKTM segment and map it to OrgDescription
    The source message:
    <?xml version="1.0" encoding="UTF-8"?>
    <COSMAS01>
       <IDOC BEGIN="1">
          <EDI_DC40 SEGMENT="1">
             <TABNAM>EDI_DC40</TABNAM>
             <MANDT>300</MANDT>
             <DOCNUM>0000000000750131</DOCNUM>
             <DOCREL>700</DOCREL>
             <STATUS>30</STATUS>
             <DIRECT>1</DIRECT>
             <OUTMOD>2</OUTMOD>
             <IDOCTYP>COSMAS01</IDOCTYP>
             <MESTYP>COSMAS</MESTYP>
             <STDMES>COSMAS</STDMES>
             <SNDPOR>SAPQAE</SNDPOR>
             <SNDPRT>LS</SNDPRT>
             <SNDPRN>QAE300</SNDPRN>
             <RCVPOR>SAPQAX</RCVPOR>
             <RCVPRT>LS</RCVPRT>
             <RCVPRN>QAX304</RCVPRN>
             <CREDAT>20080308</CREDAT>
             <CRETIM>090820</CRETIM>
             <SERIAL>20080211134325</SERIAL>
          </EDI_DC40>
          <E1CSKSM SEGMENT="1">
             <MSGFN>005</MSGFN>
             <MANDT>300</MANDT>
             <KOKRS>1000</KOKRS>
             <KOSTL>0105012501</KOSTL>
             <DATBI>99991231</DATBI>
             <DATAB>19000101</DATAB>
             <ERSDA>20060219</ERSDA>
             <USNAM>HAMEED</USNAM>
             <BKZER>X</BKZER>
             <BKZOB>X</BKZOB>
             <PKZER>X</PKZER>
             <MGEFL>X</MGEFL>
             <BUKRS>1000</BUKRS>
             <GSBER>20</GSBER>
             <KOSAR>N</KOSAR>
             <VERAK>TBA</VERAK>
             <WAERS>SAR</WAERS>
             <KHINR>105012001</KHINR>
             <KOMPL>X</KOMPL>
             <OBJNR>KS10000105012501</OBJNR>
             <PRCTR>0105012000</PRCTR>
             <FUNC_AREA>Z240</FUNC_AREA>
             <FUNC_AREA_LONG>Z240</FUNC_AREA_LONG>
             <E1CSKTM SEGMENT="1">
                <MSGFN>005</MSGFN>
                <SPRAS>A</SPRAS>
                <KTEXT>&#1605;&#1583;&#1610;&#1585; &#1575;&#1604;&#1583;&#1575;&#1574;&#1585;&#1577; &#1608;&#1605;&#1608;&#1592;&#1601;&#1608;&#1607;</KTEXT>
                <LTEXT>&#1605;. &#1583;. &#1608;&#1605;&#1608;&#1592;&#1601;&#1608;&#1607;/ &#1581;&#1587;&#1575;&#1576;&#1575;&#1578; &#1605;&#1606;&#1591;&#1602;&#1577; &#1575;&#1604;&#1605;&#1583;&#1610;&#1606;&#1577;</LTEXT>
                <SPRAS_ISO>AR</SPRAS_ISO>
             </E1CSKTM>
             <E1CSKTM SEGMENT="1">
                <MSGFN>005</MSGFN>
                <SPRAS>E</SPRAS>
                <KTEXT>DvM and Stff/AOD-Mad.</KTEXT>
                <LTEXT>Div Mgr and Staff/AOD-Madinah</LTEXT>
                <SPRAS_ISO>EN</SPRAS_ISO>
             </E1CSKTM>
          </E1CSKSM>
       </IDOC>
    </COSMAS01>
    The Target Message:
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:CostElementMT xmlns:ns0="http://se.com.sa/materials">
       <INSERT>
          <COSTELEMENT_DATA action="INSERT">
             <TABLE>usmuser.OrganizationCodes_test</TABLE>
             <access>
                <OrgCode>105012001</OrgCode>
                <CostCenter>0105012501</CostCenter>
                <OrgDescription> English Name<OrgDescription/>
                <Name>Arabic Name</Name>
             </access>
          </COSTELEMENT_DATA>
       </INSERT>
    </ns0:CostElementMT>
    is this possible using the graphical mapping?

    Hi Baheej,
    If in your input "E1CSKTM" segment always occurs twice than u can go with the above UDF mentioned by Chirag and also u need to take care that field (LTEXT) also always occurs.If the field does not occur always than you need to check it using exists functions.
    Andmoreover if the "E1CSKTM" segment does occur more than twice than u need to create a UDF where u need to pass the values alternatively.
    Please check the above details and let us know if any furthur enhancements are to be made.
    Thanks,
    Bhargav
    Note:Award Points if found useful.

  • Generating an IDOC with all segments filled every time

    IDOC Experts,
    I am new to IDOC/ALE and I am struggling with the following situation. 
    I am trying to create an ALE interface with a Transportation Management System.  I have been able to configure ALE and IDOC to generate an IDOC XML file for message type DEBMAS.  I have activated change pointers and I am seeing the changed customers when I run RBDMIDOC. 
    The problem is the external system will require the complete data every time the customer master is changed.  Right now I am only seeing the changed segments in the IDOC file. 
    Is it possible to configure SAP to populate all of the segments every time a DEBMAS IDOC is generated?
    Thank you in advance for any direction you can provide.
    Brian Snyder

    Hi Brian,
    I tested my system and it does not work,I guess we can't set up mandatory.
    I think if you know any user exit for that application,then fill the segments programtically.
    Sorry for wrong information what i  provided.
    Thanks
    Seshu

  • How to process inbound idoc in R/3 with status 75 - idoc received via qRFC?

    Hi gurus,
    we are using EOIO for source to R/3, and all the idocs a received in r/3 with this status. But they can't be processed from BD87. How to process these?
    Thanks,
    Olian
    Edited by: Olian Saludew on Sep 11, 2008 11:44 AM

    Hi,
    Idocs Works on tRFC Queues.
    Check this Report to Process Inbound Idocs with Specified Status.
    RBDAPP01
    Regards
    Seshagiri

  • Processing inbound Idoc ORDERS03  with status 51

    Dear ALL
    While processing inbound idoc with message type ORDERS03 i am getting a status 51 with below erros
    I have maintained the data under VOE2 & VOE4 but not got the solution. We are on  SAP ECC6 Version
    Customer 1100 is customers purchase organization
    Partner no 1109 is customers plant
    VKORG, VTWEG, SPART cannot be determined for customer 0000001100 , vendor REN15D
    Message no. VG204
    Terms of payment in IDoc E1EDK18 have been transferred: Check data
    Message no. VG202
    Partner number 1109 for customer 0000001100 , partner function WE does not exist.
    Message no. VG140
    Regards
    Arun

    Hi,
    Vendor 100002 is not maintained in your system. Maintain the same or use some other vendor which is there in your system.
    You should be able to post the document.
    Regards,
    Lalit Kabra

  • Reprocess Idocs with status 3

    Hi ,
    I want to reprocess successful IDOCs with status 3 again,how can I do that?
    I think logically we can change the status other than 3 and use BD 87 to reprocess them?is this correct way?Idoc numbers would change or they would create new IDOCs?
    thank you,
    Babu

    Hi,
    You can use transaction BD87 to monitor the IDoc statuses.
    and use the following programs to reprocess outbound and inbound error IDoc(s).
    RBDAGAI2 - Re-processing of IDocs after ALE Input Error
    RBDAGAIE - Reprocessing of Edited IDocs
    RBDAGAIN - Process Outbound IDocs with Errors Again
    RBDAGAIP - New Posting of Partially Posted IDocs
    RBDMANI2 - Manual Processing of IDocs: Post IDocs Not Yet Posted
    RBDINPUT
    <b>Reward points</b>
    Regards

  • Data Transfer using LSMW IDOC processing with multiple segments

    we need to post the document data (Header structure, BP item structure, G/L item structure..etc) using LSMW IDOC processing.
    is it possible to transfer data for all these structures (Segments) in single file?

    Thanks for the reply.
    I am assuming when we are specifying the file in LSMW we are going to give the option to generate the file with include all structures.
    could you please elaborate further is there any thing specific we need to do while configuring LSMW to get the file for all segments in the IDOC with field names which we are going to populate with data, so that we can use it for data transfer.
    any help document will  be helpful.

  • Issues in IDoc Sender Scenario:IDoc  with errors added

    Hi all
             Am working on an IDoc to JDBC scenario. In R/3 system, I have created distribution model, partner profile, RFC destination and port.The IDoc is generated and is sent to XI successfully. But in XI , there is no entry in SXI_MONITOR for this (unfortunately IDX5 is not available in the XI server! ;as of now). Instead an entry is made in WE05 and WE02 with stautus 56(IDoc with errors added). In the status record:
    status 56 : External segment name E2KOMG003 cannot be interpreted
    status 60 : Basic IDoc type COND_A03 could not be found.
    And the segments displayed in data record  are different from the segments in the data record of the IDoc generated at R/3. (say for E1KOMG at R/3, E2KOMG003 in XI).Earlier the flow was working fine and the DB table was updated successfully. And the entire stuff is believed to be 'unmodified' .
    Would any one help in resolving the issue.
    Thanks,
    Chilanka

    Hi,
    >>>>I have created partenr profile in R/3.Need I create a partner profile in XI for R/3 system?
    no you cannot create any partner profiles in XI
    for more about IDOC configuration in XI check :
    <a href="/people/michal.krawczyk2/blog/2006/10/11/xi-new-book-mastering-idoc-business-scenarios-with-sap-xi"><b>Mastering IDoc Business Scenarios with SAP XI</b></a>
    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>

  • Error while processing inbound Idoc (HRMDA_07) with FM IDOC_INPUT_HRMD

    Hello,
    I have a inbound Idoc of type HRMD_A (basistype  HRMD_A07) which is processed by Function module (FM)  IDOC_INPUT_HRMD with  proofing. After processing an Idoc the status Monitor for ALE messages (BD87) tell me that my Idoc has status 53, which should be the result i would like to have.
    Unfortunately when i go to transaction PA20 and check the infotypes, i see that infotype 0302 isn't created. When analyzing this problem i see that during the processing the Infotypes are posted with HR_MAINTAIN_MASTERDATA (dialog mode is 0 and luw_mode = 0 from include LRHA2F02 FORM save_pa_pb_infty)  When this is done for infotype 0302 sy-subrc <> 0 the message is A complex application error has occured. This error message is placed in Export parameters
    Return and Return1
    of HR_MAINTAIN_MASTERDATA. When the program returns to the calling Form it checks if there is message of type E in HR_RETURN (see below) :
    CALL FUNCTION 'HR_MAINTAIN_MASTERDATA'
              EXPORTING
                pernr                          = ins_objects-objid       "#EC DOM_EQUAL
                actio                           = 'INS'
                tclas                           = tclas
                dialog_mode               = dial_mode
                luw_mode                  = '0'
                no_existence_check = $cross
                no_enqueue              = $cross
              IMPORTING
                return1                       = return
                hr_return                    = hr_return
              TABLES
                proposed_values    = proposed_values.
            REFRESH proposed_values.
         IF hr_return-msgty = 'E'.                           "note 984409
          CLEAR protocol_error.
          protocol_error-msgty  = hr_return-msgty.
          protocol_error-msgid  = hr_return-msgid.
          protocol_error-msgno  = hr_return-msgno.
          protocol_error-msgv1  = hr_return-msgv1.
          protocol_error-msgv2  = hr_return-msgv2.
          protocol_error-msgv3  = hr_return-msgv3.
          protocol_error-msgv4  = hr_return-msgv4.
          READ TABLE t_hrobjinfty WITH KEY objid = hr_return-pernr
                                           infty = hr_return-infty
                                           subty = hr_return-subty.
          protocol_error-segnum = t_hrobjinfty-segnum.
          protocol_error-routid = 'create_prf_pa_pb_object'
    As mentioned above, the error message is only placed in the parameters Return and Return1  and not in HR_RETURN.please read the first reply

    Hi,
    I think you have preety much done from your end itself .
    Could you please tell me what you got in this parameters:
         protocol_error-msgty  = hr_return-msgty.
          protocol_error-msgid  = hr_return-msgid.
          protocol_error-msgno  = hr_return-msgno.
          protocol_error-msgv1  = hr_return-msgv1.
          protocol_error-msgv2  = hr_return-msgv2.
          protocol_error-msgv3  = hr_return-msgv3.
          protocol_error-msgv4  = hr_return-msgv4.
    It may help us to track down the issue in more better way .
    Thanks!

  • How to isolate error with a record/segment in IDOC with multiple records

    I have an IDOC with multiple records/segments (typically 1000 records/segments). Sometime XI can not process the IDOC because of some control characters in data.
    1. How can I pre-processed the IDOC to remove those control characters?
    Can I use XPATH expression/Java class to do it? How can I configure the XPATH expression/Java class in XI to pre-process the file?
    2. Until I have answer to 1st question. I would like to find out the error is exactly for which record? What configuration can I do in XI to isolate the error is with which record/segment in IDOC?
    Thanks in advance.

    Split the IDoc.
    with in the UDF, after the validations if every thing fine, pass as successful records to success_MT and pass it to target system using Branching in BPM.
    if errors found in the record, then store the error records in Hash table with in UDF, get the IDoc number, frame as a string and raise alert.
    U have to do this in the context of IDoc.
    If U wanna get the IDoc Number, Segment Name and field name for every failure, U can pass the expected error field name as constant to UDF, frame the sentence in the UDF like -> <b>IDoc 1234321 segment – SEG001 – field – FLD03 has a special character ‘*’</b>.
    If U wanna pass this string to source/target, U can do in error messages branch in BPM.
    U must use BPM for splitting the IDoc, since it is multi-mapping.
    reg.,
    Yallabandi.

Maybe you are looking for

  • How do I move photos from my iPhone to my computer in a jpeg file format?

    I need to post photos of a failed product to the manufacturer's website.  I took the photos on my iPhone 5S.  I need to now move them to my computer and format them as .jpg's.  How do I do this?

  • Java API for SCA File reading

    Hi all, I would like to read the content of SCA files with a java api. Is there a way to do so? Thanks Thomas

  • Best Practice for Resolving OAS 10g R3 Classloading Issues

    What's the best practices for eliminating classloading issues for shared libraries that are loaded by default (apache.commons.logging, oracle.toplink, etc) in OAS 10g R3? So far it looks like my options are to exclude the conflicting JARs in my deplo

  • Doc rename/ copy folder stcruture/workstation application.....

    hi guys i have few questioon: 1. How to stop the users to rename the file while downloading from the DMS server 2. folder strcuture: how to copy:??? i made a folder structur, for a project..............now i have one more project, now i want to copy

  • Reg: displaying in tamil fonts in PDF

    Hi all, I have problem in displaying the characters in TAMIL(Local Language) in PDF in java. Here is the scenario. I enter the data in the screen using TAMIL Keyboard... The value gets stored in the database as special characters(&#3455). My requirem