Customized IDOC Inbound: Structures differ in SXMB_MONI and receiving R/3

Hi everybody,
we post a IDOC to a R/3.
The IDOC arriving in R/3 has status 56 = IDOC with errors.
When I compare the payload in SXMB_MONI and in WE19/WE02 the structure differs?
What could be the reason?
Regards Mario

Hi Michal,
thanks a lot.
The error was difficult to find:
A segment had a wrong name, but it was only a <_>  -> so it was difficult to find.
Regards Mario

Similar Messages

  • Creating a custom IDoc inbound function module

    I have created a custom idoc.I wanted to create a custom IDoc inbound function module, this Function module will provide to launch a BAPI .Tell me how to "create" inbound function module for the custom idoc ?

    Goto any standard for the Paramtetres
    *"  IMPORTING
    *"     REFERENCE(INPUT_METHOD) LIKE  BDWFAP_PAR-INPUTMETHD
    *"     REFERENCE(MASS_PROCESSING) LIKE  BDWFAP_PAR-MASS_PROC
    *"  EXPORTING
    *"     REFERENCE(WORKFLOW_RESULT) LIKE  BDWFAP_PAR-RESULT
    *"     REFERENCE(APPLICATION_VARIABLE) LIKE  BDWFAP_PAR-APPL_VAR
    *"     REFERENCE(IN_UPDATE_TASK) LIKE  BDWFAP_PAR-UPDATETASK
    *"     REFERENCE(CALL_TRANSACTION_DONE) LIKE  BDWFAP_PAR-CALLTRANS
    *"     REFERENCE(DOCUMENT_NUMBER) LIKE  VBAK-VBELN
    *"  TABLES
    *"      IDOC_CONTRL STRUCTURE  EDIDC
    *"      IDOC_DATA STRUCTURE  EDIDD
    *"      IDOC_STATUS STRUCTURE  BDIDOCSTAT
    *"      RETURN_VARIABLES STRUCTURE  BDWFRETVAR
    *"      SERIALIZATION_INFO STRUCTURE  BDI_SER
    *"      EDI_TEXT STRUCTURE  EDIORDTXT1 OPTIONAL
    *"      EDI_TEXT_LINES STRUCTURE  EDIORDTXT2 OPTIONAL
    Do the below configs.
    1.Recognise the funcmod as Inbound -BD51
    2.Register the Function  module in WE57 .
    3.we42 Process code .
    4. WE20 -PARTNER Profile
    I hope it resolves ur Query.
    Rgds
    Sree M

  • Convert IDOC XML structure to flat file - and now?

    Hi,
    we are working with input message ORDERS05 and want to convert it to flat file.
    So we used the implementation description from "how to convert an IDOC-XML structure to a flat file....".
    Looks like this is a standard procedure described here fitting for all IDOCs.
    We followed the guide, making XI ready for Abap-Mapping, implemented the Abap class like described, added an interface mapping with source ORDERS05 to a mess.type dummy destination, added with type Abap-class the class implemented from the guide and completed the Int.Dir. implementation.
    For comparism purpose we have two systems as receiver, one with a standard flat file with regular graph.mapping in XI, one with the Abap mapping.
    Result:
    Error description in SXMB_MONI:
    Didn´t expect something like that! The IDOC was delivered successfully to the other simple flat file receiver.
    Any idea what we made wrong (we are on SP17) or if there is a standard mistake you can do when following the guide?
    Best regards
    Dirk

    Hi,
    I've got the same problem. He the solution in my case:
    The problem is:
    My IDOC has no element <STDMES>, but the method IF_MAPPING~EXECUTE from the 'HOW-TO Guide' does not check this situation:
    el_element = idocument->find_from_name('STDMES').
    ls_edidc-stdmes = el_element->get_value().
    thows the exception.
    Solution:
    make shure that the field STDMESis set or change the method to:
    el_element = idocument->find_from_name('STDMES').
    if not el_element is initial.
        ls_edidc-stdmes = el_element->get_value().
    endif.
    Best regards
    Dieter

  • Sample Custom idoc inbound function module

    Hi Friends
    I am receiving Inbound Idoc ,I Need to save the IDOC data into  ZTable
    Plz ..Can any one give me Sample idoc inbound FM to Config the  WE20(partner profile)
    Regards
    Ram

    HI Rama,
    I presumed that You are talking about a FM to create inbound IDOC. So for creating inbound IDOC you can use '
        CALL FUNCTION 'IDOC_INBOUND_ASYNCHRONOUS'
        TABLES
          idoc_control_rec_40 = gt_edidc
          idoc_data_rec_40    = gt_edidd.
      IF sy-subrc NE 0.
    *    MESSAGE e000 WITH text-003.
    *  ELSE.
    *    MESSAGE i000 WITH text-004  .
      ENDIF.
    just prepare edidc and edidd record in and pass it to the FM..
    Hope this will work for you...
    Thanks

  • Inbound Custom IDoc Processing

    Hi,
    I've created an Inbound Custom IDoc, Created the ABAP function module to post it to the application, configured workflow and IDoc processing.  All my setup appears fine as I can create IDocs from our AS400 subsystem and trigger a successful posting via the IDoc test tool.
    Having got this working I now want to automate the posting.
    At present I create the IDoc's on our Legacy AS400 System and FTP them onto the SAP Application Server which runs on a Windows 2003 platform.
    How do I get SAP to process each of my waiting Idoc's?
    Any examples appreciated....

    Hi
    For CUSTOM IDOC inbound processing
    Firstly attach your idoc to a process code.
    In the process cod you can tell the system that the specified program should be triggered whenever an idoc of that type comes to the system.
    Then you want to have a Z-function module for your idoc processing, if I understand correctly.The steps should be:
    1. Create a z function module for idoc inbound posting (copy from a function module idoc_input_*).
    2. Set Function Modules as Inbound: - Transaction BD51
    3. Assign Function Modules to Logical Messages and Idoc types:- Transaction WE57
    4. Create process codes : Transaction WE42, and link the z-function module.
    5. Create partner profile: transaction WE20 and attach the message type and process code.
    6. In the Z- function module, extract data from the idoc segments, do whatever processing you want to do, and then call BAPI_CREATE_SALES_ORDER_FROMDAT2.
    Check out this sample Function Module on the inbound system
    FUNCTION Z_IDOC_INPUT_EMPREP.
    ""Local interface:
    *"  IMPORTING
    *"     VALUE(INPUT_METHOD) LIKE  BDWFAP_PAR-INPUTMETHD
    *"     VALUE(MASS_PROCESSING) LIKE  BDWFAP_PAR-MASS_PROC
    *"  EXPORTING
    *"     VALUE(WORKFLOW_RESULT) LIKE  BDWFAP_PAR-RESULT
    *"     VALUE(APPLICATION_VARIABLE) LIKE  BDWFAP_PAR-APPL_VAR
    *"     VALUE(IN_UPDATE_TASK) LIKE  BDWFAP_PAR-UPDATETASK
    *"     VALUE(CALL_TRANSACTION_DONE) LIKE  BDWFAP_PAR-CALLTRANS
    *"  TABLES
    *"      IDOC_CONTRL STRUCTURE  EDIDC
    *"      IDOC_DATA STRUCTURE  EDIDD
    *"      IDOC_STATUS STRUCTURE  BDIDOCSTAT
    *"      RETURN_VARIABLES STRUCTURE  BDWFRETVAR
    *"      SERIALIZATION_INFO STRUCTURE  BDI_SER
    *"  EXCEPTIONS
    *"      WRONG_FUNCTION_CALLED
    Database Tables
      TABLES: ZAK_EMPLIST.
    Include programs
      INCLUDE MBDCONWF.
    Data Declarations
    *--- Employee Header -IDOC
      DATA: FS_EMPHDR_DATA LIKE Z1R_SEG1.
    *--- Employee Details -IDOC
      DATA: FS_EMPDET_DATA LIKE Z1R_SEG2.
    *--- Employee Header - application data
      DATA: FS_APP_EMPHDR LIKE ZAK_EMPLIST.
    *--- Employee Details - application data
      DATA: FS_APP_EMPDET LIKE ZAK_EMPLIST.
    Program Logic
    *---Initialize Work Flow Result
      WORKFLOW_RESULT = C_WF_RESULT_OK.
      LOOP AT IDOC_CONTRL.
    *--- Check whether the correct message was passed to us
      IF IDOC_CONTRL-MESTYP NE 'ZR_MSG'.
          RAISE WRONG_FUNCTION_CALLED.
      ENDIF.
    *--- Clear application buffers before reading a new record
      CLEAR   FS_APP_EMPDET.
      CLEAR   FS_APP_EMPHDR.
    REFRESH FS_APP_EMPDET.
    REFRESH FS_APP_EMPDET.
    *--- Process all records and pass them on to application buffers
        LOOP AT IDOC_DATA WHERE DOCNUM EQ IDOC_CONTRL-DOCNUM.
          CASE IDOC_DATA-SEGNAM.
            WHEN 'Z1R_SEG1'.            " Employee Header
              FS_EMPHDR_DATA = IDOC_DATA-SDATA.
              MOVE-CORRESPONDING FS_EMPHDR_DATA TO FS_APP_EMPHDR.
            WHEN 'Z1R_SEG2'.            " Employee Details
              FS_EMPDET_DATA = IDOC_DATA-SDATA.
              MOVE-CORRESPONDING FS_EMPDET_DATA TO FS_APP_EMPDET.
          ENDCASE.
        ENDLOOP.
    *--- If data is ok
      SELECT * FROM ZAK_EMPLIST WHERE ENUMBER = FS_APP_EMPHDR.
        IF SY-SUBRC NE 0.
          INSERT INTO ZAK_EMPLIST VALUES FS_APP_EMPHDR.
          INSERT INTO ZAK_EMPLIST VALUES FS_APP_EMPDET.
        ELSE.
          UPDATE ZAK_EMPLIST FROM FS_APP_EMPHDR.
          UPDATE ZAK_EMPLIST FROM FS_APP_EMPDET.
        ENDIF.
      ENDSELECT.
      IF SY-SUBRC EQ 0.
    *--- Populate Return variables for success
          RETURN_VARIABLES-WF_PARAM    = 'Processed_IDOCs'.
          RETURN_VARIABLES-DOC_NUMBER  = IDOC_CONTRL-DOCNUM.
          RETURN_VARIABLES-WF_PARAM    = 'Appl_Objects'.
          RETURN_VARIABLES-DOC_NUMBER  = FS_APP_EMPHDR-ENUMBER.
          APPEND RETURN_VARIABLES.
    *--- Add Status Reocrds indicating success
          IDOC_STATUS-DOCNUM           = IDOC_CONTRL-DOCNUM.
          IDOC_STATUS-STATUS           = '53'.
          IDOC_STATUS-MSGTY            = 'I'.
          IDOC_STATUS-MSGID            = 'ZE'.
          IDOC_STATUS-MSGNO            = '006'.
          IDOC_STATUS-MSGV1            = FS_APP_EMPHDR-ENUMBER.
          APPEND IDOC_STATUS.
      ELSE.
          WORKFLOW_RESULT              = C_WF_RESULT_ERROR.
          RETURN_VARIABLES-WF_PARAM    = 'Error IDOCs'.
          RETURN_VARIABLES-DOC_NUMBER  = IDOC_CONTRL-DOCNUM.
          APPEND RETURN_VARIABLES.
    *--- Add status record indicating failure in updating
          IDOC_STATUS-DOCNUM           = IDOC_CONTRL-DOCNUM.
          IDOC_STATUS-STATUS           = '51'.
          IDOC_STATUS-MSGTY            = 'E'.
          IDOC_STATUS-MSGID            = 'ZE'.
          IDOC_STATUS-MSGNO            = '007'.
          IDOC_STATUS-MSGV1            = FS_APP_EMPHDR-ENUMBER.
          APPEND IDOC_STATUS.
        ENDIF.
    ENDLOOP.
    ENDFUNCTION.
    Good Luck and reward me for the same
    Thanks
    Ashok

  • Sender and Receiver Idoc

    Hi All,
    what are the settings need to be done on  both XI system and SAP R/3 system while XI system is communicating to any SAP R/3 system through an IDOC on any side sender or receiver.
    Will there be any difference in the settings for sender and receiver SAP R/3 systems.
    Could any body please suggest me some blogs or documents.
    Thanks in advance..
    Regards,
    Radhika.

    Hi Radhika,
    Hi
    http://help.sap.com/saphelp_nw04/helpdata/en/18/22b800773211d396b20004ac96334b/content.htm
    http://www.erpgenie.com/index.php?option=com_content&task=view&id=346&Itemid=57
    http://searchsap.techtarget.com/loginMembersOnly/1,289498,sid21_gci994575,00.html?NextURL=http%3A//searchsap.techtarget.com/expert/KnowledgebaseAnswer/0%2C289625%2Csid21_gci994575%2C00.html
    http://www.thespot4sap.com/Articles/SAP_ALE_Other_Concepts_Conclusion.asp
    Refer this material..
    Data Creation in Idoc
    IDocs are text encoded documents with a rigid structure that are used to exchange data between R/3 and a foreign system. Instead of calling a program in the destination system directly, the data is first packed into an IDoc and then sent to the receiving system, where it is analyzed and properly processed. Therefore an IDoc data exchange is always an
    asynchronous process. The significant difference between simple RFC-calls and IDoc data exchange is the fact, that every action performed on IDocs are protocolled by R/3 and IDocs can be reprocessed if an error occurred in one of the message steps.
    While IDocs have to be understood as a data exchange protocol, EDI and ALE are typical use cases for IDocs. R/3 uses IDocs for both EDI and ALE to deliver data to the receiving system. ALE is basically the scheduling mechanism that defines when and between which partners and what kind of data will be exchanged on a regular or event triggered basis. Such a set-up is called an ALE-scenario.
    IDoc is a intermediate document to exchange data between two SAP Systems.
    *IDocs are structured ASCII files (or a virtual equivalent).
    *Electronic Interchange Document
    *They are the file format used by SAP R/3 to exchange data with foreign systems.
    *Data Is transmitted in ASCII format, i.e. human readable form
    *IDocs exchange messages
    *IDocs are used like classical interface files
    IDOC types are templates for specific message types depending on what is the business document, you want to exchange.
    WE30 - you can create a IDOC type.
    An IDOC with data, will have to be triggered by the application that is trying to send out the data.
    FOr testing you can use WE19.
    How to create idoc?
    *WE30 - you can create a IDOC type
    For more information in details on the same along with the examples can be viewed on:
    http://www.netweaverguru.com/EDI/HTML/IDocBook.htm#_Toc8400404
    http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a6620507d11d18ee90000e8366fc2/frameset.htm
    http://www.sappoint.com/presentation.html
    http://www.allsaplinks.com/idoc_search.html
    http://www.sapgenie.com/sapedi/idoc_abap.htm
    http://www.erpgenie.com/sapedi/idoc_abap.htm
    To Create Idoc we need to follow these steps:
    Create Segment ( WE31)
    Create Idoc Type ( WE30 )
    Create Message Type ( WE81 )
    Assign Idoc Type to Message Type ( WE82 )
    Creating a Segment
    Go to transaction code WE31
    Enter the name for your segment type and click on the Create icon
    Type the short text
    Enter the variable names and data elements
    Save it and go back
    Go to Edit -> Set Release
    Follow steps to create more number of segments
    Create IDOC Type
    Go to transaction code WE30
    Enter the Object Name, select Basic type and click Create icon
    Select the create new option and enter a description for your basic IDOC type and press enter
    Select the IDOC Name and click Create icon
    The system prompts us to enter a segment type and its attributes
    Choose the appropriate values and press Enter
    The system transfers the name of the segment type to the IDOC editor.
    Follow these steps to add more number of segments to Parent or as Parent-child relation
    Save it and go back
    Go to Edit -> Set release
    Create Message Type
    Go to transaction code WE81
    Change the details from Display mode to Change mode
    After selection, the system will give this message “The table is cross-client (see Help for further info)”. Press Enter
    Click New Entries to create new Message Type
    Fill details
    Save it and go back
    Assign Message Type to IDoc Type
    Go to transaction code WE82
    Change the details from Display mode to Change mode
    After selection, the system will give this message “The table is cross-client (see Help for further info)”. Press Enter.
    Click New Entries to create new Message Type.
    Fill details
    Save it and go back
    Check these out..
    Re: How to create IDOC
    Check below link. It will give the step by step procedure for IDOC creation.
    http://www.supinfo-projects.com/cn/2005/idocs_en/2/
    ALE/ IDOC
    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
    http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.docs
    go trough these links.
    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
    http://http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
    An IDoc is simply a data container that is used to exchange information between any two processes that can understand the syntax and semantics of the data...
    1.IDOCs are stored in the database. In the SAP system, IDOCs are stored in database tables.
    2.IDOCs are independent of the sending and receiving systems.
    3.IDOCs are independent of the direction of data exchange.
    The two available process for IDOCs are
    Outbound Process
    Inbound Process
    AND There are basically two types of IDOCs.
    Basic IDOCs
    Basic IDOC type defines the structure and format of the business document that is to be exchanged between two systems.
    Extended IDOCs
    Extending the functionality by adding more segments to existing Basic IDOCs.
    To Create Idoc we need to follow these steps:
    Create Segment ( WE31)
    Create Idoc Type ( WE30)
    Create Message Type ( WE81)
    Assign Idoc Type to Message Type ( WE82)
    imp links
    http://www.allsaplinks.com/idoc_sample.html
    http://www.sapgenie.com/sapedi/idoc_abap.htm
    www.sappoint.com
    --here u can find the ppts and basic seetings for ALE
    http://sappoint.com/presentation.html
    www.sapgenie.com
    http://www.sapgenie.com/ale/index.htm
    WE30 - you can create a IDOC type.
    An IDOC with data, will have to be triggered by the application that is trying to send out the data.
    Try this..Hope this will help.
    Steps to configuration(Basis) >>
    1. Create Logical System (LS) for each applicable ALE-enabled client
    2. Link client to Logical System on the respective servers
    3. Create background user, to be used by ALE(with authorizaton for ALE postings)
    4. Create RFC Destinations(SM59)
    5. Ports in Idoc processing(WE21)
    6. Generate partner profiles for sending system
    The functional configuration(Tcode: SALE)
    • Create a Customer Distribution Model (CDM);
    • Add appropriate message types and filters to the CDM;
    • Generate outbound partner profiles;
    • Distribute the CDM to the receiving systems; and
    • Generate inbound partner profiles on each of the clients.
    Steps to customize a new IDoc >>>
    1. Define IDoc Segment (WE31)
    2. Convert Segments into an IDoc type (WE30)
    3. Create a Message Type (WE81)
    4. Create valid Combination of Message & IDoc type(WE82)
    5. Define Processing Code(WE41 for OUT / WE42 for IN)
    6. Define Partner Profile(WE20)
    Important Transaction Codes:
    SALE - IMG ALE Configuration root
    WE20 - Manually maintain partner profiles
    BD64 - Maintain customer distribution model
    BD71 - Distribute customer distribution model
    SM59 - Create RFC Destinations
    BDM5 - Consistency check (Transaction scenarios)
    BD82 - Generate Partner Profiles
    BD61 - Activate Change Pointers - Globally
    BD50 - Activate Change Pointer for Msg Type
    BD52 - Activate change pointer per change.doc object
    BD59 - Allocation object type -> IDOC type
    BD56 - Maintain IDOC Segment Filters
    BD53 - Reduction of Message Types
    BD21 - Select Change Pointer
    BD87 - Status Monitor for ALE Messages
    BDM5 - Consistency check (Transaction scenarios)
    BD62 - Define rules
    BD79 - Maintain rules
    BD55 - Defining settings for IDoc conversion
    WEDI - ALE IDoc Administration
    WE21 - Ports in Idoc processing
    WE60 - IDoc documentation
    SARA - IDoc archiving (Object type IDOC)
    WE47 - IDoc status maintenance
    WE07 - IDoc statistics
    BALE - ALE Distribution Administration
    WE05 - IDoc overview
    BD87 - Inbound IDoc reprocessing
    BD88 - Outbound IDoc reprocessing
    BDM2 - IDoc Trace
    BDM7 - IDoc Audit Analysis
    BD21 - Create IDocs from change pointers
    SM58 - Schedule RFC Failures
    Basic config for Distributed data:
    BD64: Maintain a Distributed Model
    BD82: Generate Partner Profile
    BD64: Distribute the distribution Model
    Programs
    RBDMIDOC – Creating IDoc Type from Change Pointers
    RSEOUT00 – Process all selected IDocs (EDI)
    RBDAPP01 - Inbound Processing of IDocs Ready for Transfer
    RSARFCEX - Execute Calls Not Yet Executed
    RBDMOIND - Status Conversion with Successful tRFC Execution
    RBDMANIN - Start error handling for non-posted IDocs
    RBDSTATE - Send Audit Confirmations
    FOr testing you can use WE19.
    You can directly create an iDoc using some transaction like...
    Use TCODE bd10 - to Send Data
    and TCODE bd11 - to Get Data
    and you can check the IDoc List using TCODE we02.
    As you want step by step procedure.
    1. Define Logical System and Assign Logical System
    TCODE sale
    2. Define RFC
    TCODE sm59
    3. Define Port
    TCODE we21
    4. Define Partner Profile
    TCODE we20
    5. Define Distribution Model
    TCODE bd64
    6. Send Data
    TCODE bd10
    7. Get Data
    TCODE bd11
    8. IDoc List
    TCODE we02
    There are basically two types of IDOCs.
    Basic IDOCs
    Extended IDOCs
    Idoc Components
    Basic Idoc
    Basic IDOC type defines the structure and format of the business document that is to be exchanged between two systems.
    Extension Idoc
    Extending the functionality by adding more segments to existing Basic IDOCs.
    Creation of IDoc
    To Create Idoc we need to follow these steps:
    Create Segment ( WE31)
    Create Idoc Type ( WE30)
    Create Message Type ( WE81)
    Assign Idoc Type to Message Type ( WE82)
    Creating a Segment
    Go to transaction code WE31
    Enter the name for your segment type and click on the Create icon
    Type the short text
    Enter the variable names and data elements
    Save it and go back
    Go to Edit -> Set Release
    Follow steps to create more number of segments
    Create IDOC Type
    Go to transaction code WE30
    Enter the Object Name, select Basic type and click Create icon
    Select the create new option and enter a description for your basic IDOC type and press enter
    Select the IDOC Name and click Create icon
    The system prompts us to enter a segment type and its attributes
    Choose the appropriate values and press Enter
    The system transfers the name of the segment type to the IDOC editor.
    Create IDOC Type
    Follow these steps to add more number of segments to Parent or as Parent-child relation
    Save it and go back
    Go to Edit -> Set release
    Create Message Type
    Go to transaction code WE81
    Change the details from Display mode to Change mode
    After selection, the system will give this message “The table is cross-client (see Help for further info)”. Press Enter
    Click New Entries to create new Message Type
    Fill details
    Save it and go back
    Assign Message Type to IDoc Type
    Go to transaction code WE82
    Change the details from Display mode to Change mode
    After selection, the system will give this message “The table is cross-client (see Help for further info)”. Press Enter.
    Click New Entries to create new Message Type.
    Fill details
    Save it and go back
    u can also check all these links related to idocs
    http://www.allsaplinks.com/idoc_sample.html
    http://www.allsaplinks.com/
    http://www.sap-img.com/
    http://www.sappoint.com/abap.html
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCMIDALEIO/BCMIDALEIO.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCMIDALEPRO/BCMIDALEPRO.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/CABFAALEQS/CABFAALEQS.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCSRVEDISC/CAEDISCAP_STC.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCSRVEDI/CAEDI.pdf
    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://expertanswercenter.techtarget.com/eac/knowledgebaseCategory/0,295197,sid63_tax296858_idx0_off50,00.html
    http://sap.ittoolbox.com/documents/popular-q-and-a/extending-a-basic-idoc-type-2358
    http://help.sap.com/saphelp_47x200/helpdata/en/dc/6b7eee43d711d1893e0000e8323c4f/frameset.htm
    Reward points if this helps
    Regards
    Vani.

  • Creating custome idocs

    hi all
    I am XI consultant
    i want to send IDOC to XI server using ALE..but the IDOC is not present ....the master data is stored in standard sap tables but for them idoc is not present ...so i want to create custom idoc and using change pointer i can send it across ...is this a write approach...? Also please give me the procedure for the above approach as i dont have idea about how to create  custome idoc and send it using change pointer
    thanks
    Sheetal

    Hi
    Data Creation in Idoc
    IDocs are text encoded documents with a rigid structure that are used to exchange data between R/3 and a foreign system. Instead of calling a program in the destination system directly, the data is first packed into an IDoc and then sent to the receiving system, where it is analyzed and properly processed. Therefore an IDoc data exchange is always an
    asynchronous process. The significant difference between simple RFC-calls and IDoc data exchange is the fact, that every action performed on IDocs are protocolled by R/3 and IDocs can be reprocessed if an error occurred in one of the message steps.
    While IDocs have to be understood as a data exchange protocol, EDI and ALE are typical use cases for IDocs. R/3 uses IDocs for both EDI and ALE to deliver data to the receiving system. ALE is basically the scheduling mechanism that defines when and between which partners and what kind of data will be exchanged on a regular or event triggered basis. Such a set-up is called an ALE-scenario.
    IDoc is a intermediate document to exchange data between two SAP Systems.
    *IDocs are structured ASCII files (or a virtual equivalent).
    *Electronic Interchange Document
    *They are the file format used by SAP R/3 to exchange data with foreign systems.
    *Data Is transmitted in ASCII format, i.e. human readable form
    *IDocs exchange messages
    *IDocs are used like classical interface files
    IDOC types are templates for specific message types depending on what is the business document, you want to exchange.
    WE30 - you can create a IDOC type.
    An IDOC with data, will have to be triggered by the application that is trying to send out the data.
    FOr testing you can use WE19.
    How to create idoc?
    *WE30 - you can create a IDOC type
    For more information in details on the same along with the examples can be viewed on:
    http://www.netweaverguru.com/EDI/HTML/IDocBook.htm#_Toc8400404
    http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a6620507d11d18ee90000e8366fc2/frameset.htm
    http://www.sappoint.com/presentation.html
    http://www.allsaplinks.com/idoc_search.html
    http://www.sapgenie.com/sapedi/idoc_abap.htm
    http://www.erpgenie.com/sapedi/idoc_abap.htm
    To Create Idoc we need to follow these steps:
    Create Segment ( WE31)
    Create Idoc Type ( WE30 )
    Create Message Type ( WE81 )
    Assign Idoc Type to Message Type ( WE82 )
    Creating a Segment
    Go to transaction code WE31
    Enter the name for your segment type and click on the Create icon
    Type the short text
    Enter the variable names and data elements
    Save it and go back
    Go to Edit -> Set Release
    Follow steps to create more number of segments
    Create IDOC Type
    Go to transaction code WE30
    Enter the Object Name, select Basic type and click Create icon
    Select the create new option and enter a description for your basic IDOC type and press enter
    Select the IDOC Name and click Create icon
    The system prompts us to enter a segment type and its attributes
    Choose the appropriate values and press Enter
    The system transfers the name of the segment type to the IDOC editor.
    Follow these steps to add more number of segments to Parent or as Parent-child relation
    Save it and go back
    Go to Edit -> Set release
    Create Message Type
    Go to transaction code WE81
    Change the details from Display mode to Change mode
    After selection, the system will give this message “The table is cross-client (see Help for further info)”. Press Enter
    Click New Entries to create new Message Type
    Fill details
    Save it and go back
    Assign Message Type to IDoc Type
    Go to transaction code WE82
    Change the details from Display mode to Change mode
    After selection, the system will give this message “The table is cross-client (see Help for further info)”. Press Enter.
    Click New Entries to create new Message Type.
    Fill details
    Save it and go back
    Check these out..
    Re: How to create IDOC
    Check below link. It will give the step by step procedure for IDOC creation.
    http://www.supinfo-projects.com/cn/2005/idocs_en/2/
    ALE/ IDOC
    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
    http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.docs
    go trough these links.
    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
    http://http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
    An IDoc is simply a data container that is used to exchange information between any two processes that can understand the syntax and semantics of the data...
    1.IDOCs are stored in the database. In the SAP system, IDOCs are stored in database tables.
    2.IDOCs are independent of the sending and receiving systems.
    3.IDOCs are independent of the direction of data exchange.
    The two available process for IDOCs are
    Outbound Process
    Inbound Process
    AND There are basically two types of IDOCs.
    Basic IDOCs
    Basic IDOC type defines the structure and format of the business document that is to be exchanged between two systems.
    Extended IDOCs
    Extending the functionality by adding more segments to existing Basic IDOCs.
    To Create Idoc we need to follow these steps:
    Create Segment ( WE31)
    Create Idoc Type ( WE30)
    Create Message Type ( WE81)
    Assign Idoc Type to Message Type ( WE82)
    imp links
    http://www.allsaplinks.com/idoc_sample.html
    http://www.sapgenie.com/sapedi/idoc_abap.htm
    www.sappoint.com
    --here u can find the ppts and basic seetings for ALE
    http://sappoint.com/presentation.html
    www.sapgenie.com
    http://www.sapgenie.com/ale/index.htm
    Reward points if useful
    Regards
    Anji

  • Development of custom IDOC's

    Hi All,
    Can we go for approach of developing custom IDOC's? where in our scenarios are getting files from thrid party and updating data in file  into ECC.
    Approach towards Custom IDOC's is for error monitoring and recprocessing.
    Would request your inputs and suggesions in this regard.
    Is that good approach for going to custom idocs? if not why?
    Thanks,
    chandra.

    Hi,
    SAP R/3 systems send out data through IDoc (Intermediate Document), which in internally has segments and fields containing the data. But sometimes, these fields are not sufficient for a specific end-to-end business scenario as far as data transfer is concerned. So in such scenario, either few fields are to be added or subtracted, or completely new structure- IDoc needs to be created.
    At times because of the business scenario we do have to create Custom idocs .
    Regards,
    Bhanu

  • Idoc field structure error.

    Hi,
    I have a requirement like i need to add an additional field to the existing IDOC structure from where it is used for  the xslt mapping and do the remaining process.
    The mapping part is one to one but i need to add an another field to the external defintion idoc.
    Source is IDOC and the target structure is the same structuer that is in the external definiton.
    for this i have exported the xsd of the idoc and then i have imported through External Definitions part. but if i need to add an another field to it it is not allowing to do that..
    So please can anyone suggest me how to proceed..
    Thanks,
    Sai

    Hi Sai,
    i need to add an additional field to the existing IDOC structure
    Is there any specific reason for usign IDOC as external definition (are you changing the occurance of IDOC)?
    what is your sender and receiver system?
    Are you expecting the value for this addition field to be populated by sap along with the rest of IDOC data? if yes then ,get a custom IDOC created in SAP with the required field.
    Or if you want to populate this additional field in PI usign any logic (assuming you are sending to any non sap system), then you can create a new ED for the targert , just export
    the ED to desktop , open with any xml editor (xml spy or microsoft  visual studio 2005) and navigate to the portion of xsd which you want to edit add the field -> reimport in PI and  use it as your target strucuture.You cannot edit ED directly in ESR.
    Regards,
    Srinivas

  • IDOC Creation - structure has no data elements

    Hello,
    I've encounted the following situation when creating a new custom idoc:
    The structure in the data dictionary does not have any components (Data elements) associated with each field. (i.e if you view the structure using se11).  This is causing problems when trying to build ALE conversion rules using BD79 as you cannot tell which field is which for conversions with muliple conditions.
    Does anyone know how to get data elements against the fields in the dictionary structure.  Standard SAP idocs appear to have them - see E1MARCM.
    (we are using version 4.7)
    Any help would be appreciated,
    Thanks!

    Anita,
    I am assuming that although you are creating a custom idoc you are referring to  standard strucutre already existing for your segment.
    I am not very clear here, how did you create the segment. Can you clarify on the same?
    regards,
    Ravi

  • Creation of custom idoc with entire code

    Hi
         I am kavitha ,working on abap skill , i want the entire documentation for creation of custom idoc , including writing of posting programe and also selection programe , if possible please forward me any real time scenarion . plz forward me its urgent

    Hi,
    Hoping that u would reward me all the helpful points please refer the link:
    <a href="http://abapcode.blogspot.com">http://abapcode.blogspot.com</a>
    regards,
    Ameet

  • Sender and receiver partner number,

    Hi All,
    In the control section of an idoc, there are two fields - sender and receiver partner number. If my application sends an inbound idoc to Sap R/3, the two fields are not necessary? I have noticed the logical system has been assigned to the client.
    If somebody can explain the usage of sender and receiver partner, I would be much appreciated.
    Thanks,
    Dennis

    Hello,
    Can you please check the documentation: SAPBCSapAdapterGuide in your packges -> SAP -> Doc direcotry? The Chapter: 6
    This should explain you how to set up the Routing.
    Best regards,
    Dezso

  • Custom process code and FM for custom IDoc...

    Hello Experts,
    I created a custom IDoc based from ARTMAS05 IDoc. This is because we only need 3 segments and
    the standard idoc(Artmas05) contains so many segments that we need.
    Now, will I create a custom process code and FM for this? how do I go about this?
    Thank you guys and take care!

    Hello,
                 Here are the Steps that we need to be following while creating a Custom Process Code with Custom Function Module. ( Since the Segments to be handled are very Less, I am recommending that you go for a Custom Function Module).
    1. Go to SE37 Create a Function Module. Please ensure to Create it with the IMPORT / EXPORT /TABLES parameters exactly in the way that they exist in any Standard SAP Inbound FM (Refer to IDOC_INPUT_ORDERS for example).
    2. Once our FM is Ready (Need not be Complete with the Code to go ahead with the Process Code Creation) and Active, the next Step is to Create an Entry in the Transaction Code BD51 where we will register the Function Module.
    3. Next, we'll have to go to T-Code WE57 where we'll have to make an entry for the Function Module with the IDoc Type & Message Type.
    4. Finally, go to WE42 and Create a New Process Code and assign the Function Module and the Message Type.
    NOTE 1 : The Process Code is, as we know, Client Dependent. So, once you create a Process Code, we need to have it migrated to the Testing Environment to Start & Carry Out Testing.
    NOTE 2: If Step 2 & 3 are missing, then we'll not be able to assign the Function Module in WE42 while Creating Process Code.
    Hope it was helpful.
    Thanks and Regards,
    Venkata Phani Prasad K

  • Inbound function module for  custom IDOC

    HI,
    I have created custom IDOC.I need to create inbound function module for that custom IDOC.Can any one send me sample
    function module for custom IDOC.(what are all the import Export,tables  parameters and exceptions  that I need  to create for function module)
    Thanks&Regards
    Rama.Mekala

    HI Rama,
    I presumed that You are talking about a FM to create inbound IDOC. So for creating inbound IDOC you can use '
        CALL FUNCTION 'IDOC_INBOUND_ASYNCHRONOUS'
        TABLES
          idoc_control_rec_40 = gt_edidc
          idoc_data_rec_40    = gt_edidd.
      IF sy-subrc NE 0.
    *    MESSAGE e000 WITH text-003.
    *  ELSE.
    *    MESSAGE i000 WITH text-004  .
      ENDIF.
    just prepare edidc and edidd record in and pass it to the FM..
    Hope this will work for you...
    Thanks

  • Custom IDOC changes in the IDoc structure

    HI experts,
    I have made some changes in the Custom IDoc Structure
    But when I have transported the changes like I have 5 fields in the custom IDoc I changed the data type of field 2 changing the length of that field to 132 but when i am executing that all the other remaining fields getting populated in that 2nd field. Is there any way this problem can be resolved
    early answer is appreciated.......
    advance thanks
    srini

    Hi Srinivas,
    I would like to confirm some things. First your IDoc struc had field2 which is of length less than 132 and then you increased it to 132. Now you are now using <b>WE19</b> to test your IDoc. The reference IDoc no. that you gave was the IDoc that had been generated while the length was less than 132.
    If this is what you have done, then you will have this issue. I will tell you why. When you created the IDocs, this field was less than 132, then in the EDIDD-SDATA which is a character field of length 1000 bytes would have got filled with a different position.
    Say for example you have two fields in a segmentthey are A(of lenght 10) and B(of length 20). When you create IDoc, EDIDD-SDATA(which actually contains data would have been like the following:
    Say if A = 'ABC', B = 'DEF'
    EDIDD-SDATA = 'ABC       DEF                 '
    If you see it carefully it is a string of charachter where A starts at 1st and B starts at 11th position of the string. Now you changed length of A to 15. Then A would start from 1st Position upto 15th position while B starts from 16th upto 35. Hence when the WE19 tool extracts data from EDIDD, it extracts it as:
    A = 'ABC       DEF  '
    B = space
    Hope this answers your question.
    Regards,
    Srikanth
    PS: Same will be the case with WE09 as well. The IDocs which was created before changing the length will still look distorted.
    Message was edited by: Srikanth Lodd
    Message was edited by: Srikanth Lodd

Maybe you are looking for