Basic doubts in ALE/IDOC processing

Hi All,
1.How are IDOC Type and Message Type related? Many to one or One to Many?
2. what is the prominence of msg code and msg function in ALE outbound processing?
3. During outbound processing what is the startegy followed by the ALE service layer to pick up the customer model?
   It would be great if any one can answer these questions in plain words rather than referring links. Reward guaranteed.

Hi Ravi,
1.Can'te we assign more than one IDOC to the same msg type if the IDOC's are of different versions?
Yes we can. Doesn't SAP do that? For example, ORDERS01, ORDERS02 ... ORDERS05 are having the same message type ORDERS. You can also create your own IDoc type or extend the standard IDoc type.
3. When we run a stand alone program to trigger IDOC processing the only mandatory field will be the message type, so how can the sending system identify the receiving system?
You need to setup partner profile (t/code WE20) and distribution model (t/code BD64). Once this configuration are done, The system will populate automatically the IDoc Control Record for sender and recepient system information when the IDoc generated based partner profile setup.
Hope this will help.
Regards,
Ferry Lianto
Please reward points if helpful.

Similar Messages

  • Doubt in ale/idocs urjent

    hi,
    i have a doubt in ALE/IDOCS requirement is add a field to segment
    in tcode BD53(reduce message type) after adding a field.
    what configuration i need to do.

    welcome to SDN.
    Post this ABAP forum for quicker response.
    ABAP Development
    Regards
    Raja

  • I want ale/idoc process

    hai this is siva,
    i want ale/idoc process,
    thanks,
    siva

    IDoc Processing with the IDoc Adapter: http://help.sap.com/saphelp_nw04/helpdata/en/b9/c5b13bbeb0cb37e10000000a11402f/content.htm
    What is the different between ALE, IDOC and BAPI?:
    http://sapsdforum.com/2007/12/28/what-is-the-different-between-ale-idoc-and-bapi/
    HOPE THIS HELPS.
    Pls assign points as way to say thanks

  • ALE/IDOC PROCESSING

    hello guys,
    Can anyone explain me the ALE/IDOC scenario with some real time example.....
    I am having all the material and links for this ....  I know the total process how to create the custom idocs, how to distribute the ale scenario, how to create all the remaining stuff...
    But I don't have any real time experience with these....
    Let us assume <b>Distribution of Material Master Data Between two Systems</b> as our scenario..
    can anyone clearly explain me what would be systems like what r the different legacy systems you have used in your work environment and what is the middle ware you have used what is the business scenario you implemented....
    I really appreciate  your valuable time...  I assign the  marks for all the answer.. please guide me
    SRI

    Hi Sri,
    Let me try
    Assume there are two systems, one is your SAP R/3 and other one is the EBP (Enterprise Buying Portal).
    Now all the material from the R/3 system should be available in EBP system so that buyer can buy them online. But it is not advisable to go and create each material in EBP so we will use Distribution of Material data to EBP from SAP R/3. In this way lets say someone has bought the quantity then you require to reduce that much from the R/3 system. here again we can send back the data from EBP to SAP.
    Such a way there can be lot many real time scenario.
    When the systems are not in the same network we use EAI or XI to link them.
    Hope it is clear.
    Regards,
    Atish

  • Performance improvement for ALE/IDOC processing

    Dear experts,
    Could you let me know any information to tune performance?
    In our system (SAP R/3 Enterprise 6.20), material master data is distributed from one client to other clients in the same instance. It is because material master is maintained centrally, and is distributed to other clients for member companies.
    During the night batch, distributing master data takes more than 2 hours. Although the distribution usually finishes without errors, we would like to explore ways to improve processing performance. Especially, program RBDMIDOC runs long time to create IDOC for MATMAS, even 0 master IDOC is set eventually.
    OSS notes of the list for OS/DB/SAP parameters related to ALE/IDOC, tips in organizing batch jobs, etc, will be very appreciated.
    Many Thanks,
    Nori

    I'd recommend to profile the program at least once to see where there's possible room for improvements. I.e. an ABAP runtime analysis and SQL trace would be good for a start. You can check out the links in thread Please Read before Posting in the Performance and Tuning Forum, which will give you some references if you need them. Once you have more details, you either know what you need to do or you can provide them and ask a more specific question (and thus you will receive much better answers).
    As a general remark though I've seen often poor performance initially on the changer pointer selection, because there are too many entries in the table (due to system generating unnecessary change pointers, which should be disabled or/and lack of proper reorganization, i.e. deletion of old/processed change pointers via BD22). Sounds like this is most likely also the cause of your problem, because otherwise it's hard to explain long run times without generating any master IDocs. You can check the number of change pointers easily via view BDCPV or BDCP2 - it depends how you store your change pointers (most likely you find them via view BDCPV in a 6.20 system, unless somebody switched it to the newer BDCP2).
    If you still have them in BDCPV (or the underlying tables to be more precise), check out [OSS note 305462 - MOD: Migration change pointer to table BDCP2|https://service.sap.com/sap/support/notes/305462], which will provide you a general hint how to do that (and thus also improve the performance). However, if you're currently not deleting any old change pointers, you should ensure that a regular job runs for transaction BD22 (program RBDCPCLR). You'll easily find other (possibly relevant) OSS notes by doing a search yourself...

  • Doubt in ALE/IDOC's

    Hi Friends,
        I have 2 inbound idocs in which
         one idoc posts the document in SAP
         seecond oneconfirms that document.
    what my problem is if the second idoc comes first and try to confirm before the documnet posted it gets fail. SO that i want this confirmation to be done only after the document is posted. How can i achieve this.
    Thanks& Regards,
    Naren.

    hi,
    there is an excellent concept in ALE called <b>SERIALIZATION</b>.
    1. goto transaction code SALE.
    2. MODELLING AND IMPLEMENTING BUSINESS PROCESS -> MASTER DATA DISTRIBUTION -> SERIALIZATION FOR SENDING AND RECEIVING DATA -> SERIALIZATION USING MESSAGE TYPES
    3. what u actually do is,
    <b>example :</b>
    let us say IDoc1 is of message type CLFMAS, IDoc2 is of message type MATMAS. now u configure in the path given above that, MATMAS should be received first and CLFMAS should be received next. this is known even to the partner.
    this is how u correctly receive IDoc in the sequence.
    hope it helps.
    reward if useful...

  • Doubts in ale/idoc

    hi abapers please guide me
    1. what is process code why use this?
    2. what is collect idoc in partner profile?
    3. diffrences between enhance idoc custom idoc and extending idoc?

    Hi,
    1. what is process code why use this?
    Ans - Process code will be used to process the applicate data, which we will attach in the inbound partner profile. To the process code we can attach either function module / workflow. Check the transaction code - WE41 & WE42 for more understanding on process codes.
    2. what is collect idoc in partner profile?
    Ans: We can process idocs individually or as package. If you select Collect idocs, then all idocs will be buffered until you process those idocs manually with the help of standard program RSEOUT00 program. It means until you execute this program data wont be updated in the database. 
    3. diffrences between enhance idoc custom idoc and extending idoc?
    Ans:
    Extending Idoc & enhance idocs , both are same. It means when you create the idoc first time then we will call that idoc type as Basic type and when you enhance the existed idocs with new segments then we will call it as extendings idocs.
    Thanks
    jaya
    Reward, if its useful for you.

  • Doubt on ALE/idoc

    Hi All,
    i genereted idoc, but it have errors, how it can be reprocess. after reprocessing 'idoc no' will change or not
    Thanks,
    Ravindra.

    HI,
    Whenever IDOC has been re-processed a new number will generate.
    But in transaction BD87 and re-process it, then this will not generate new IDOC number but status of message
    will be changed.
    For more details refer this
    How to reprocess the same idoc
    Regards and Best wishes.

  • Doubt in ALE & IDOC

    Hi Gurus,
    I created Custom Z Segment type, Z Idoc Type , Z Message type , and attached the Idoc type to Message type. All these steps I done sucessfuly.
    Now my Requirement is I have to develop one Inbound function Module, Through this Function Module I need to update the Z Table.
    For this, before developing Function modules, What are the steps I have to follow, and what are the settings I have to check, From where I can found the Sender and Receiving System Details.
    Please can any one give me the advices on this.
    Thanks and Regards
    AbinavaSiri.

    Hi Abinava,
    Create a FM with the following parameters :
    *"  IMPORTING
    *"     VALUE(INPUT_METHOD) LIKE  BDWFAP_PAR-INPUTMETHD
    *"     VALUE(MASS_PROCESSING) LIKE  BDWFAP_PAR-MASS_PROC
    *"  EXPORTING
    *"     VALUE(WORKFLOW_RESULT) TYPE  BDWFAP_PAR-RESULT
    *"     REFERENCE(APPLICATION_VARIABLE) TYPE  BDWFAP_PAR-APPL_VAR
    *"     VALUE(IN_UPDATE_TASK) TYPE  BDWFAP_PAR-UPDATETASK
    *"     VALUE(CALL_TRANSACTION_DONE) TYPE  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
    Inside the FM :
    1) Read the IDOC_CONTRL table and get the IDOC number
    2) Fetch the values from the IDOC_DATA table into an internal table
    3) Perform validations if any and update the Ztable.
    Hope this helps.
    Thanx & Rgds

  • ALE & Idocs doubts

    Hi  Experts,
       I have big doubts in ALE & Idocs
    1.There are lot of function modules to create idocs.
      So how to find the relavent function modules for our
      requirement.Is there any criteria for this.
    2.When will we go to create idocs through BAPI,when we
      have both systems(sending & Receiving) are SAP.
    3.In INBOUND Idocs processing program,do we need to
      compulsary use BDC to update the data in conserned
      tables?
    Advanced Thanks for your replies

    Hi Murali,
    u can findout the list of fm related to the concerned msgtypes in <b>WE57</b> tcode.
    We have standard inbound function modules wich takes care of process/updation in inbound side. (Se37--> search by IDOC_INPUT* ).
    if those doen't suits to ur req. u can develop ur custom one and use BDC to update.
    Thanks
    eswar

  • DISTRIBUTION OF ALE IDOC

    HI GURUS
    i want detailed distributiuon on ale idoc processing along with transaction codes step by step
    plzzz its urgent
    baskar

    ALE
    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
    **************************************************8
    http://service.sap.com/ale
    ABOUT ALE AND IDOC
    Go through this hope u can understand .
    ALE/IDOC
    IDOC Programming
    There are two processes in IDOC processing one is INBOUND PROCESS( IDOC coming to the system and its handling at various stages) and the other is OUTBOUND PROCESS( IDOC is send to other system . Separate ABAP programs are written for these 2 processes and different configuration settings are required for each one .Depending upon the trigeering mechanism different programming approaches are used.OUTBOUND PROGRAMS handle the IDOC creation and INBOUND PROGRAMS handle the inbound IDOC and the data trasfer from the IDOC to the database tables.
    NEED FOR ABAP PROGRAMMING arises if
    1)New IDOC was created
    Depending upon the triggering mechanism i.e change pointer,message control
    etc the programming technique changes and the type of process.
    2)Existing IDOC was extended
    User Exits are used to populate data in new segments added and to read them
    back.
    3)To enhance an exsiting process.
    User Exits are used .
    Basic structure of an OUTBOUND PROGRAM
    The basic structure of all outbound programs is same. The CONTROL
    record which is of TYPE EDIDC has to be filled. It contains important fields like
    IDOCTP IDOC type
    MESTYP Message Type
    RCVPRN Recieving Partner (Destination)
    RCVPRT Partner Type (it is LS i.e Logical System)
    The DATA RECORD internal table which is of TYPE EDIDD has to be filled
    in the same order as there are segments in the IDOC definition.
    It has 2 important fields which are to be filled ,these are
    SEGNAM Name of the segment
    SEGDATA Data in the segment and can be upto 1000 bytes.This field
    is corresponds to each data segment in the IDOC.
    e.g.
    DATA INT_EDIDD LIKE EDIDD OCCURS 0 WITH HEADER LINE.
    DATA W_SEGDATA LIKE zsegment "custom segment zsegment
    INT_EDIDD-SEGNAM = 'ZSEGMENT'
    W_SEGDATA-field1 = value "taken from some table
    W_SEGDATA-field2 = value "taken from some table
    INT_EDIDD-SEGDATA = W_SEGDATA
    APPEND INT_EDIDD
    This will fill the data record corresponding to the segment ZSEGMENT . For all
    segments the sam steps will be repeated until all the data corresponding to all the
    segments in the idoc is filled in the internal table of type EDIDD.
    There is only one control record and can be multile data records in the idoc
    structure.
    Which data is to be extracted from the tables to be filled in EDIDD type internal table is determined in standalone programs from the objects which are specified in the selection screen and from the object key passed to the function module in case of message control and is taken from BDCP table in case of change pointers using function modules "CHANGE_POINTERS_READ"
    In case of stand alone programs and function modules based on change pointers method the function module "MASTER_IDOC_DISTRIBUTE" is used to send the IDOC to ALE layer for distribution ,in case of message control it is handled automatically by the RSNASTED program invoked by the message control.
    OUTBOUND PROCESS AND OUTBOUND PROGRAM.
    Outbound programs are used in outbound process to genearte IDOCs . There
    purpose is to extract the data from the tables and to fill the IDOC data records
    and the control record in the IDOC and pass ito the ALE layer for distribution to the recieving system .
    Depending upon the triggering mechanism (how and when the outbound program will be started different techniques and interface is used for outbound program.
    1)Message control
    Application like PO(purchase order) creation use this technique , where the output type is linked to the application(Message control is a configurable cross application component which can be set in IMG .Such programs are created in the form of function modules and linked to the output type which is linked to the apllication.These have predefined interfaces.
    In outbound programs(function module) that use message control the key of the
    application document is passed to the function module whcig will read the data from the table depending upon the key passed(NAST structure) and fill the IDOC segemnts with the application data.The control record is also passed to the function module but is not fully filled, the rmaining fields are filled and the control is passed back to the calling program which is RSNASTED and is invoked by the
    message control to process ALE and EDI output types and this program on recieving the IDOC data will create the physical IDOC in the system.
    The parameteers passed to the function module are
    IMPORTING PARAMETERS
    OBJECT LIKE NAST
    It contains documents key.
    CONTROL_RECORD_IN LIKE EDIDC
    It contains the partailly filled control record
    EXPORETING PARAMETER
    OBJECT_TYPE
    CONTROL_RECORD_OUT LIKE EDIDC
    TABLES
    INT_EDID LIKE EDIDD
    The internal table used to fill the data records in the same order as they exists in the IDOC.
    The important parameters that should be filled in the custom function module are
    CONTROL_RECORD_OUT and INT_EDIDD .The OBJK field of the structue NAST contains the key of the apllication document.
    2)Stand alone programs
    Generally used for Master Data transfer and as such depending upon the requirement can have different interfaces.The programs have a selection screen which has select options to select the objects, and parameters for specifying the recipient Logical System and the Message Type.
    Data is selected based on the specified objects from the tables . and control record of type EDIDC is created and filled with important values like DIRECTION ,IDOCTP,RCVPRT,RCVPRN and MESTYP .
    Data is filled in an internal table of TYPE EDIDD according to segment definitions
    and in same order and the function module MASTER_IDOC_DISTRIBUTE is called passing the control record and the internal table containg IDOC data and importing an internal table consisting of control records for each communication IDOCS created.
    3)Change pointer
    Change Pointer table is read and checked if changes were made to important fields , if so the outbound program will be triggered automatically , these have predefined interfaces
    ALE/IDOC Transaction
    SALE Area Menu for ALE configurations.It includes transactions for
    Logical System definition and linking it to a client, Transactions for
    RFC Destination and Port Definition Etc.
    SM59 RFC Destination
    Here we specify the login settings for the destination including
    the I.P address or Application Server name and the User name and
    password.The information entered here is used to run Remote Function
    Calls(RFC ) on the destination server .We can create number of types
    of RFC Destinations but 3 types are important .
    R/3 (R/3 to R/3), LS(logical system) and TCP/IP.
    The name of the RFC destination should be same as that of Logical
    System as it helps in creation of automatic partner profiles.
    WE21 Port Definition.
    There are 6 types of ports but only 2 types File and Transactional RFC
    types of ports are important.
    We have to specify the RFC Destination before a port can be created.
    WE57 This is used to assign the Inbound function module to the Message Type
    and to the IDOC Type.
    WE42 This is used to define the process Code for Inbound Processing.
    BD95 Define Filter object type .We can specify the field and the table it belongs
    to as a filter object .
    BD59 Assignment of Filter object type to the Message Type .Here we create the
    link between Filter object and the segment and the message type and the
    segment Field.
    BD50 Set message Type to reducible.
    BD65 Define Mandatory Fields.
    BD64 Distribution Model . Also known as Customer Distribution Model Used to
    define all the messages that will be exchanged between remote systems
    and the name of thes logical systems. Any filters can also be specified.
    The model once created has to be distributed on every system which will
    be communicating ,It can be maintained on only One system.
    BD21 Creating IDOcs from change pointers.
    This can be used to create IDOCs from change pointers for a particular
    message LIKE MATMAS.
    BD22 This can be used to delete change pointers.
    BD87 Status Monitor. Idocs can be selected base on number of criteria and there
    processing status can be seen in detail.
    BD10 Material Master Data Distribution .
    Based on Message MATMAS.
    BD12 Customer Master Data Distribution .
    Based on Message CREMAS.
    BD14 Vendor Master Data Distribution
    Based on Message DEBMAS .
    BDFG Generate ALE Interface for BAPI.
    Here we specify the Business Object and the BAPI Function module for
    which the interface has to be created.
    WE31 Segment Editor.
    This is used to create segments. We create the segment type and
    segment definition is automatically created by editor e.g. Z1DUMMY is
    segment type and Z2DUMMY is the segment definition .We specify the
    fields and the data elements these cp\orresponds to create segments.
    WE30 IDOC Editor
    It is used to create a new IDOC Type or IDOC Extension .We specify the
    segments that will be addd to the IDOC type.
    WE02/05 IDOC List.
    Various selct options and parameters are provided to select IDOCs
    depending on the date, direction , mesage type etc.
    WE20 Partner Profile
    Here we create partner profile for each and every partner from / to which
    the messages will be exchanged.There are 6 types of PF generally only
    profiles of type LS(Logical System) ,KU(Customer) ,LI(Vendor) is used.
    We specify the partner number and partner type and the agent and
    the agent type responsible for handling of errors .
    For every message send to the partner we have a outbound record and for
    evry message coming from the partner we have the inbound record .
    We specify the message in the otbound/inbound records ,double
    clicking will take us to the detailed screen where the IDOC Type ,Port
    and whether the IDCO will be immediatelt processed or collected are
    mentioned.
    Steps relate to idoc
    Creation of IDoc
    To Create Idoc we need to follow these steps:
    1)Create Segment ( WE31)
    2)Create Idoc Type ( WE30)
    3)Create Message Type ( WE81)
    4)Assign Idoc Type to Message Type ( WE82)
    Creating a Segment
    a)Go to transaction code WE31
    b)Enter the name for your segment type and click on the Create icon
    c)Type the short text
    d)Enter the variable names and data elements
    e)Save it and go back
    f)Go to Edit -> Set Release
    g)Follow steps to create more number of segments
    Create IDOC Type
    a)Go to transaction code WE30
    b)Enter the Object Name, select Basic type and click Create icon
    c)Select the create new option and enter a description for your basic IDOC type and press enter
    d)Select the IDOC Name and click Create icon
    e)The system prompts us to enter a segment type and its attributes
    f)Choose the appropriate values and press Enter
    g)The system transfers the name of the segment type to the IDOC editor.
    h)Follow these steps to add more number of segments to Parent or as Parent-child relation
    i)Save it and go back
    j)Go to Edit -> Set release
    Create Message Type
    a)Go to transaction code WE81
    b)Change the details from Display mode to Change mode
    c)After selection, the system will give this message “The table is cross-client (see d)Help for further info)”. Press Enter
    e)Click New Entries to create new Message Type
    f)Fill details
    g)Save it and go back
    Assign Message Type to IDoc Type
    a)Go to transaction code WE82
    b)Change the details from Display mode to Change mode
    c)After selection, the system will give this message “The table is cross-client (see d)Help for further info)”. Press Enter.
    e)Click New Entries to create new Message Type.
    f)Fill details
    g)Save it and go back
    Look at these links
    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
    ALE/ IDOC/ XML
    http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
    http://www.thespot4sap.com/Articles/SAP_XML_Business_Integration.asp
    http://help.sap.com/saphelp_srm30/helpdata/en/72/0fe1385bed2815e10000000a114084/content.htm
    Just follow the procedure
    Sending System(Outbound ALE Process)
    Tcode SALE ? for
    a) Define Logical System
    b) Assign Client to Logical System
    Tcode SM59-RFC Destination
    Tcode BD64 ? Create Model View
    Tcode BD82 ? Generate partner Profiles & Create Ports
    Tcode BD64 ? Distribute the Model view
    Message Type MATMAS
    Tcode BD10 ? Send Material Data
    Tcode WE05 ? Idoc List for watching any Errors
    Receiving System(Inbound ALE )
    Tcode SALE ? for
    a) Define Logical System
    b) Assign Client to Logical System
    Tcode SM59-RFC Destination
    Tcode BD64 ? Check for Model view whether it has distributed or not
    Tcode BD82 -- Generate partner Profiles & Create Ports
    Tcode BD11 Getting Material Data
    Tcode WE05 ? Idoc List for inbound status codes
    ALE IDOC Steps
    Sending System(Outbound ALE Process)
    Tcode SALE ?3 for
    a) Define Logical System
    b) Assign Client to Logical System
    Tcode SM59-RFC Destination
    Tcode BD64 !V Create Model View
    Tcode BD82 !V Generate partner Profiles & Create Ports
    Tcode BD64 !V Distribute the Model view
    This is Receiving system Settings
    Receiving System(Inbound ALE )
    Tcode SALE ?3 for
    a) Define Logical System
    b) Assign Client to Logical System
    Tcode SM59-RFC Destination
    Tcode BD64 !V Check for Model view whether it has distributed or not
    Tcode BD82 -- Generate partner Profiles & Create Ports
    Tcode BD11 Getting Material Data
    Tcode WE05 !V Idoc List for inbound status codes
    Message Type MATMAS
    Tcode BD10 !V Send Material Data
    Tcode WE05 !V Idoc List for watching any Errors
    STEP 1)a Goto Tcode SALE
    Click on Sending & Receiving Systems-->Select Logical Systems
    Here Define Logical Systems---> Click on Execute Button
    go for new entries
    -System Name : ERP000
    -Description : Sending System
    -System Name : ERP800
    -Description : Receiving System
    press Enter & Save
    it will ask Request
    if you want new request create new Request orpress continue for transfering the objects
    B) goto Tcode SALE
    Select Assign Client to Logical Systems-->Execute
    000--> Double click on this
    Give the following Information
    -Client : ERP 000
    -City :
    -Logical System
    -Currency
    -Client role
    Save this Data
    Step 2) For RFC Creation
    Goto Tcode SM59-->Select R/3 Connects
    Click on Create Button
    RFC Destination Name should be same as partner's logical system name and case sensitive
    to create the ports automatically while generating the partner profiles
    give the information for required fields
    RFC Destination : ERP800
    Connection type: 3
    Description
    Target Host : ERP000
    System No:000
    lan : EN
    Client : 800
    User : Login User Name
    Password:
    save this & Test it & RemortLogin
    STEP 3) Goto Tcode BD64 -- click on Change mode button
    click on create moduleview
    short text : xxxxxxxxxxxxxx
    Technical Neme : MODEL_ALV
    save this & Press ok
    select your just created modelview Name :'MODEL_ALV'.
    goto add message type
    Model Name : MODEL_ALV
    sender : ERP000
    Receiver : ERP800
    Message type :MATMAS
    save & Press Enter
    STEP 4) Goto Tcode BD82
    Give Model View : MODEL_ALV
    Partner system : ERP800
    execute this by press F8 Button
    it will gives you sending system port No :A000000015(Like)
    STEP 5) Goto Tcode BD64
    select the modelview
    goto >edit>modelview-->distribute
    press ok & Press enter
    STEP 6) goto Tcode : BD10 for Material sending
    Material : mat_001
    Message Type : MATMAS
    Logical System : ERP800
    and Execute
    STEP 7)goto Tcode : BD11 for Material Receiving
    Material : 100-300
    Message Type : MATMAS
    and Execute --> 1 request idoc created for message type Matmas
    press enter
    Here Master Idoc set for Messge type MATMAS-->press Enter
    1 Communication Idoc generated for Message Type
    this is your IDOC
    Change Pointers
    how to change the description of a material using ALE Change Pointers.
    I will give the following few steps
    1) Tcode BD61---> check the change pointers activated check box
    save and goback.
    2) Tcode BD50---> check the MATMAS check box save and comeback.
    3) Tcode BD51---> goto IDOC_INPUT_MATMAS01 select the checkbox save and comeback.
    4) Tcode BD52---> give message type : matmas press ok button.
    select all what ever you want and delete remaining fields.
    save & come back.
    5) 5) go to Tcode MM02 select one material and try to change the description and save it
    it will effects the target systems material desciption will also changes
    6) goto Tcode SE38 give program Name is : RBDMIDOC and Execute
    give Message type : MATMAS and Executte
    ALE/IDOC Status Codes/Messages
    01 Error --> Idoc Added
    30 Error --> Idoc ready for dispatch(ALE Service)
    then goto SE38 --> Execute the Program RBDMIDOC
    29 Error --> ALE Service Layer
    then goto SE38 --> Execute the Program RSEOUT00
    03 Error --> Data Passed to Port ok
    then goto SE38 --> Execute the Program RBDMOIND
    12 Error --> Dispatch ok
    Inbound Status Codes
    50 Error --> It will go for ALE Service Layer
    56 Error --> Idoc with Errors added
    51 Error --> Application Document not posted
    65 Error --> Error in ALE Service Layer
    for 51 or 56 Errors do the following steps
    goto WE19 > give the IDOC Number and Execute>
    Press on Inbound function Module
    for 65 Error --> goto SE38 --> Execute the Program RBDAPP01 then your getting 51 Error
    Regards
    vasu

  • Ale/idocs in hr

    HI,
    will any body tell the procedure for the ALE/DIOCS in HR,how to handle the custom idocs,extended IDOCS,standard idocs.
    if any body have docs send it.it will really help full to me.

    Hi,
    The ALE/IDOC process is same in HR as in other modules. Search SCN, you ll find mant threads regarding how to configure the ALE/IDOC.
    For HR the message type is HRMD_A for HR to HR
    HRMD_ABA for HR to non-HR.
    The basic type available for HRMD_A is (HRMD_A01-HRMD_A07).
    http://www.easymarketplace.de/online-pdfs.php
    check the document "Timesheet and HR in Distribution Models" its useful.
    Br/Manas

  • Reg:ALE/IDOCS

    Hi Experts,
    I have one doubt in ale/idocs that is , some idocs are accidently posted, how to solve this issue. at the same time how to avoid duplication of idocs. please send the answers.
    Thanks & Regards,
    N.Narasimha Rao.

    I understand what you mean by "Duplicates", but the question that I have to ask is what do you mean by "accidentily posted".
    The key thing to the ALE framework is the proper use of DB transactions.  The updateing of the ALE status and message tables are combined in the same DB transaction as the actual buisness logic updates that are happening in your IDoc processing function.  So what does this mean to you you're asking?  It means that the implimentation of your update logic can sometimes cause the possibility of duplicates.
    Certain types of updates are ones that cause issues, and these would be updates that are beyond your control when it comes to the DB transaction:
    - BDC/Call Transaction - On these they have their own seperate DB transaction, so it is possible that the BDC can sucsesfully post a transaction and then when the logic returns to the IDoc processing function if something causes it to terminate before completing then it is possible that the buisness transaction is complete and your IDoc status has never been updated.  Because the IDoc status has never been updated the same IDoc will get picked up for processing again.
    - Calls to API functions where they contain a commit inside them or an option to include a commit and you don't supress it - Similiar to Call Transaction issues on this one that the buisness transaction can be commited before the framework commits its final status.
    - Multiple transactions - Sometimes it is nesasary to call multiple APIs inside your processing function but they require commits in between them in order to work properly.  An example of this could be first creating a customer master record and then creating a sales order for that customer.  In this case a commit is required inbetween the two calls.  In a case like this it is possible that half of your buisness logic has been executed and commited, the second part hasn't been commited and the framework hasn't commited the status.  The requriment for the commit would be that the customer master API doing the update uses an update task and therefore the actual updates to the DB aren't executed until an explicit commit statement is executed (note also that the ALE framework sets update tasks to local mode so that it doesn't require the use of asynch update processes).
    So, with these above things being issues when it comes to the DB transactions for ALE processing, what can you do to prevent them:
    - For Call transaction issues there isn't much that you can do, becuase the DB transactions is out of your hands.  The only solution I would recommend here is to not use Call Transactions.  It is an old technology anyways and there are much better ways to do it usually by calling APIs.
    - If the API you are calling contains a commit, you should look to see if there is an option for you to turn it off via an input parameter.  If not then you will end up with some of the same issues as Call transaction but there is a technique that you can use to supress duplicates from posting since the DB transaction (unlike in Call Transaction) is actaully the same transaction that was started by the ALE framework, the technique is what I refer to as ALE Stages.
    - If you require multiple API calls which require commits in between them then the solution that I have used many times is what I refer to as ALE Stages.
    So how do you do ALE stages?  The following is an overview of what you'll need to do:
    - Create a new custom table as a copy of the INDX table (data cluster table).  This table is going to be used for two purposes, one is to store information about what has been processed so far and secondly is to handle the passing of transient data if processing is restarted.
    - In your processing function consider it as a number of stages (one for each transaction) and perform the following logic for each stage:
    1) Use the import statement to read in data from the cluster table (Keyed off of the IDoc number).  This contains information about what stages have been completed and also any transient data that has been generated by one stage and needs to be passed to another.  You can use a complex data structre to store all of this information.
    2) If the current stage has already been executed then skip this section of your processing logic.  Otherwise execute it:
    2a) Execute the API call
    2b) Used an export statement to write an updated status to the data cluster table including any transient data that will be required for the next stage.
    2c) Execute a commit
    - After all stages are complete, do a delete on the record in the data cluster table.  Important point though is to not do a commit.  The reason that you don't do a commit is if there is a failure prior to commit inside the ALE framework that update the final IDoc status then you will have lost your stage status information and the entire IDoc would be duplicated again.
    - By doing stages of this type you are creating sub-transactions that if the IDoc fails at any point then when it is reexecuted it will skip the parts that have already been done.
    - The secret to this is that each stage is it's own DB transaction and includes the API call and the update to the stage status table together.  The final deleting of the stage status is linked in with the overall DB transaction done by the ALE framework.
    - In the case where you are using an API that has a commit embbeded inside it that you don't have control over, you can still use stages.  The secret is that you need to update the stage status table prior to the API call.  Even though it is done first it isn't commited until the API executes it's embeded commit.  The only issue with this is that you can't depend on return values from the API as transient data to support the next stage becuase you have no way of writing it to the stage status table as part of the same transaction as the API update.
    This is a failry high-level description of some of the things to look out for and how to handle them.  The use of stages is something I've done a lot and is nice because if implimented properly it will provide a bullet-proof way to ensure that no part of your transaction will be updated twice.  The main issue I find when I see developers try to implimnet this though is that they don't understand completly how DB transactions work and they end up with holes in their logic.
    Hope this helps.  If I've got some time at some point I'll post some specific pieces of code as an example of stages.
    ~Ian
    Edited by: Ian Maxwell on Aug 3, 2008 5:43 PM

  • Question on ALE/IDOC

    Hi to all,
    I have some doubts regarding ALE/IDOC can any one tell me answers to those question.
    1. what is a process code? what is the purpose of process code?
    2. what is a stand alone program?
    3.How to handle to errors in ale/idoc?
    4. ALE processes in asynchronous why?
    5. How to run idocs in parallel?
    6.What is a posting program
    7. Can any one can send me one complete ALE/IDOC scenario with documentation ?
    Please send me the answers to this mail id [email protected]

    Hi guys,
    I must thank every one of you for sending such quick and helpful responses. I bought the book "ALE, EDI and IDOC" from Aravind Nagpal and its a great book for beginner as well as for an expert. I have started practising ALE my PC by logging into 2 clients and it is working fine. I was able to send and receive the IDOC.
    Thank you again.
    This is a great forum,
    Cheers,
    Mahesh.
    Edited by: Mahesh Kumar on Jan 21, 2009 3:32 PM

  • ALEAUD - ALE -IDOC

    Hi,
    I have doubt in ALE-IDOC. I would like to modify message that would get send from ALEAUD for which i am looking
    for function module or available user exits.
    Please let me know if u have any idea about it.
    Thanks
    Parag

    Hi All,
    We have the internal table u2013
    This has to be as below
    Hard code the Table lines till the end ( say 10 items ) u2013 end of the page = footer                                                                               
    The table lines are static  10 rows u2013 if table has 2 items only 2 items are displayed and the 8 rows will be displayed but blank and end of the page = footer.
    In case 12  items are there u2013 display 10 items in first page and DO NOT DISPLAY FOOTER IN FIRST PAGE IN CASE line items are spreading to next page u2013
    Second page will have rest two items and few more static lines as above and then FOOTER at last.
    Over all the footer must appear in the LAST PAGE ONLY
    Please send the details as soon as possible.
    Thanks,
    raghava

Maybe you are looking for

  • How to print out a date from the past

    I am trying to print out a date from the past but I cant seem to get It, Lets use for example Independece Day, How would you write the code in order to print out that exact date?

  • How do you get your dock to appear on the Thunderbolt display?

    When I connect my MacBook Air to the Thunderbolt, the dock remains on my laptop. My husband's MacBook Pro automatically puts the dock at the bottom of the Thunderbolt screen. Also, when I open any application or a new window in an open application, t

  • Plz help me out I am a newbie

    import java.io.DataInputStream; class CalculateAccnDist      public static void main(String args[]) DataInputStream in = new DataInputStream(System.in); float a=0.0f; float u=0.0f; try                     System.out.println("Enter the initial speed i

  • Applet tag

    Hi guys i'm having a bit of a problem with an applet. I have an applet i am trying to run which imports one of my own classes from a different package. When i run this applet i get a NoClassDefFoundError on this imported class. I dont understand what

  • Create domain from the console?

    Is the any way to create a new domain from the console? Any on-line documents? Thanks. Cheers - Wei