Inbound idoc MATMAS - find userexit to map extension

Hi !
I have an inbound IDOC MATMAS04 with a specific extension. I need to map the fields of the extension : some of them into an append of MARA, some others into characteristics.
<b>I can't find the user exits I need.</b>
I guess there are 2 of them. The first one for mara append BEFORE the creation of the material, and the second one for the characteristics AFTER the creation of the material.
Does anyone know where I can find such user exits (even HOW to find them would be so much appreciated) ?
Kind regards,
Yann

Hi..
This is the Enhancement <b>MGV00001</b>
and The FM exit is <b>EXIT_SAPLMV02_002</b> To Enhance IDOC for MARA segment in Inbound.
<b>Reward if Helpful</b>

Similar Messages

  • Inbound Idoc Data mapping sheet

    Hi experts,
    I need a data mapping sheet of Inbound Idoc that will help me for mapping the segments (header, Item) both for creating material, vendor, customer etc.
    That sheet will help for mapping tables and fields that are mandatory for that segments.
    Thanks & Regards.
    Ankur Garg.

    The process code you assigned to the inbound IDoc, has to be assigned to a function module which processes this IDoc, right? Now, if you use a function module of your own (CUSTOM FM!), you can do all the 'printing' you want.
    So there is no option for printing by default (standard), but you will have to do it your self.
    Another option would be to use a User exit. It seems there is a standard User exit (SIDOC001), or even a  BAdI which you can use. I haven't used it myself, so can't help you there.
    Edited by: Micky Oestreich on Mar 9, 2009 8:43 AM

  • Inbound IDOC extension

    Hi,
    iam working on an inbound IDOC TPSSHT01, i need to add an extrta field and segment , so i create an data element and  Z segment and add the field in the segment
    i have to copy the TPSSHT01 to a ZTPSSHT01 and do the IDoc extension ,
    i have to copy the function module IDOC_INPUT_SHIPPL to Z_IDOC_INPUT_SHIPPL
    Can any body let me know what are the steps that i have to follow to process the inbound idoc with the above requirment
    Cheers,
    Sai

    Hi ,
          Follow this procedure .
    In bound Idoc…
    Step 1: Create segment
    a.     T.code WE31
    b.     Enter a new segment type and press create button
    c.     Give a short text
    d.     Enter the field names say FIELD NAME : MATNR ;; DATA ELEMENT: CHAR(18)
    e.     Save the segment   (zkrishseg)
    Step 2: Create IDOC type
    a.     T.code WE30
    b.     Enter a new IDOC type name
    c.     Choose the basic type and press the create button.
    d.     Choose the create new option button and enter a description and press enter
    e.     Place the cursor on the type name and then press create button.
    f.     Enter the segment name created in step 1 and check the mandatory segment check box
    g.     Enter minimum number and maximum number as 1 and press enter.
    h.     Then save the IDOC type.   (zkrishtyp)
    Step 3: Create message type
    a.     T.code WE81
    b.     Press change button.
    c.     Press new entries button.
    d.     Enter a message type and short text and press save button. (zkrishmsg)
    Step 4: Assign message type to IDOC type.
    a.     T.code WE82
    b.     Press change button
    c.     Press new entries button.
    d.     Enter the created message type, IDOC type and version release (46B or 46C)
    Step 5:  Create a function module for inbound. (Z_IDOC_KRISH_INBOUND)
    Step 5A: Create characteristics of inbound FM.
    a.     T.code BD51
    b.     Click ‘New entries’
    c.     Enter the IDOC function module name and 1(individual type) in ‘input t.’.
    d.     Save it.
    Step 6: Assignment of FM to log, message and type.
    a.     T.code WE57
    b.     Go for change mode and click ‘new entries’.
    c.     In processing by…enter FM name and enter ‘F’ as type.
    d.     Enter basic type (idoc type-zkrishtyp) and message type (zkrishmsg) in the respective text boxes.
    e.     Choose the direction as 2 – Inbound.
    f.     Save the data.
    Step 7. : Creation of inbound process code.
    a.     T.code WE42
    b.     Go to change mode and click ‘create entries’.
    c.     Enter a new process code and description (zidockrish)
    d.     Enter the FM name in the identification text box
    e.     Choose processing with ALE service
    f.     Choose processing by FM and click Save button
    g.     In the next screen, select the FM name and click save button
    Step 7a : Creation of inbound process code.
    h.     T.code SM59
    i.     Select ‘R/3 connection’  and click ‘create’.
    j.     Enter all system related things(for Eg. Connection type as ‘3’, Target host as ‘SAP04’,
    Description , and Logon  details and save.
    Step 8:  Define a port
    a.     T.code WE21
    b.     Click on Transactional RFC and press the ‘Create’ button
    c.     Enter a port name and description. (ztestkrish)
    d.     Choose the release type.
    e.     Choose the RFC destination.
    f.     To create RFC destination…go to SPRO and search RFC destination…and create.
    g.     Save the data.
    Step 9. Define logical system
    a.     T.code SALE
    b.     Click down the sending and receiving systems
    c.     Click down the logical systems
    d.     Choose Define logical system.
    e.     Go for new entries.
    f.     Enter a new name and description and save it. (zkrishlog)
    Step 10. Create partner profile
    a.     T.code  WE20
    b.     Choose partner type LS and click create.
    c.     Enter the logical system name in partner number
    d.     Then Save …. Here Type is ‘US’.
    e.     click + icon(create inbound parameter) in the bottom. Note: Two table control subscreens will appear.  One for inbound and the other for outbound.  Click + icon in inbound area.
    f.     Enter the message type, process code and save the data.
    Step 11. Checking the Idoc
    a.     T.code WE19,
    b.     Choose radio Basic type , enter the type name(zkrishtyp) and press execute button.
    c.     Click on EDIDC Number.
    d.     Enter partner Number, Partner type, Port Number for sender and recipient ( data remains same here for sender and recipient)
    e.     Enter Message type and press ENTER.
    f.     Click on empty space corresponding to SEGMENT name and enter Paarameters like MATNR, WERKS and CHARG etc….
    g.     Click standard inbound properties here…  and press enter… see the result….
    h.     T.code WE02
    i.     Enter IDOC number press ENTER see the status.
    Function Module in Inbound
         Import Parameters
         INPUT_METHOD           LIKE BDWFAP_PAR-INPU              Inbound method for the IDoc inb 
    MASS_PROCESSING     LIKE BDWFAP_PAR-MASS            Flag: Mass processing 
    Export Parameters        
    WORKFLOW_RESULT     LIKE      BDWF_PARAM-RESULT          Final value of method          
    APPLICATION_VARIABLELIKE      BDWF_PARAM-APPL_VAR  Variable to be used by 
    IN_UPDATE_TASK      LIKE      BDWFAP_PAR-UPDATETASK       Flag: Application has 
    CALL_TRANSACTION_DONLIKE      BDWFAP_PAR-CALLTRANS        Flag: Application 
    tables
         IDOC_CONTRL         LIKE      EDIDC                       Control record (IDoc)       
    IDOC_DATA              LIKE      EDIDD                       Data record (IDoc)          
    IDOC_STATUS          LIKE      BDIDOCSTAT           ALE IDoc status (subset of al
    RETURN_VARIABLES    LIKE      BDWFRETVAR    Assignment of IDoc or documen
    SERIALIZATION_INFO  LIKE      BDI_SER                Serialization objects for one
         Source code
    FUNCTION ZASHOKMODULE.
    ""Local interface:
    *"  IMPORTING
    *"     VALUE(INPUT_METHOD) LIKE  BDWFAP_PAR-INPUTMETHD
    *"     VALUE(MASS_PROCESSING) LIKE  BDWFAP_PAR-MASS_PROC
    *"  EXPORTING
    *"     VALUE(WORKFLOW_RESULT) LIKE  BDWF_PARAM-RESULT
    *"     VALUE(APPLICATION_VARIABLE) LIKE  BDWF_PARAM-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
    data: begin of w_data occurs 0.
           include structure edidd.
    data: end of w_data.
    data: wa_data like ZASH1.
    data : i_data like standard table of wa_data initial size 0.
    *tables : zhemal1.
    data : begin of wa_zhemal1.
            include structure zhemal1.
    data : end of wa_zhemal1.
    data : i_ZHEMal1 like standard table of wa_ZHEMal1 initial size  0.
    read table idoc_data with key SEGNAM = 'ZASH1'.
    loop at  IDOC_DATA into  W_DATA where segnam = 'ZASH1'.
      WA_DATA = W_DATA-SDATA.
      wa_data  = w_data-sdata.
      append wa_data to i_data.
    endloop.
    MOVE IDOC_DATA-DOCNUM TO IDOC_STATUS-DOCNUM.
        IDOC_STATUS-MSGID = 'ZABC'.
        IDOC_STATUS-STATUS = 53.
        IDOC_STATUS-MSGTY = 'S'.
        IDOC_STATUS-MSGNO = '001'.
        APPEND IDOC_STATUS.
    LOOP AT i_data into wa_data.
    wa_ZHEMal1-VBELN = wa_data-VBELN.
    wa_ZHEMal1-POSNR = wa_data-POSNR.
    wa_ZHEMal1-MATNR = wa_data-MATNR.
    wa_ZHEMal1-MATWA = wa_data-MATWA.
    wa_ZHEMal1-MATKL = wa_data-MATKL.
    append wa_ZHEMal1 to i_ZHEMal1.
    insert ZHEMal1 from table  i_ZHEMal1 accepting duplicate keys .
    ENDLOOP.
    ENDFUNCTION.
    For Out bond  Steps are
    1.     Create segment
    2.     Create Type
    3.     Create Message Type
    4.     Assign message Type to Idoc Type.
    5.     Create Port
    6.     Define Logical systems.
    7.     Define Partner profile.
    8.     Create a Report program.
    Report program Out bond
    REPORT ZASH1 .
                  Outbound standalone idoc creation                      *
    Program Name : Y_VENMAST_OUTBOUND_STANDALONE                         *
    Description  : Outbound standalone idoc creation for training        *
                   to Unilever offshore team members                     *
    Created by   : Satyam Computer Services Ltd.                         *
    Created on   : 04.01.2002                                            *
                           Modification Log                              *
    Developer           Date            Transport #   Details            *
    Subramony         04.01.2002                                         *
    Tables Declaration                                                   *
    TABLES : zhemal1.
    Internal table declaration                                           *
    data : i_zhem1 Like standard table of zhem1 with header line.
    data : control_record_out like edidc.
    *data: p type p decimals 2,
         c(10) type c.
    start-of-selection.
        p = '3.14'.
        c = p.
        overlay c with '0000000000000'.
      write c.
    DATA : BEGIN OF I_EDIDD OCCURS 0.
            INCLUDE STRUCTURE EDIDD.
    DATA : END OF I_EDIDD.
    DATA : BEGIN OF I_EDIDC OCCURS 0.
            INCLUDE STRUCTURE EDIDC.
    DATA : END OF I_EDIDC.
    DATA : BEGIN OF I_zhemal1 OCCURS 0,
                VBELN LIKE zhemal1-VBELN,
                POSNR LIKE zhemal1-POSNR,
                MATNR LIKE zhemal1-MATNR,
                MATWA LIKE zhemal1-MATWA,
                MATKL LIKE zhemal1-MATKL,
           END OF I_zhemal1.
    SELECT-OPTIONS : S_vbeln FOR zhemal1-vbeln .
    START-OF-SELECTION.
      PERFORM F_GET_zhemal1.
    END-OF-SELECTION.
    Building Control record
    CONTROL_RECORD_OUT-MESTYP = 'ZASH1'.
    CONTROL_RECORD_OUT-IDOCTP = 'ZASH1'.
    CONTROL_RECORD_OUT-RCVPRT = 'LS'.
    CONTROL_RECORD_OUT-RCVPRN = 'ZASH1'.
    CONTROL_RECORD_OUT-sndPRT = 'LS'.
    CONTROL_RECORD_OUT-sndPRN = 'ZASH1'.
    PERFORM F_PROCESS_OUTPUT.
    *PERFORM F_FILL_EDIDD.
    PERFORM F_CREATE_IDOC.
    Form  F_GET_Y1COTU110                                                *
    FORM F_GET_zhemal1.
      SELECT VBELN  POSNR MATNR MATWA MATKL
             FROM ZHEMAL1
             INTO TABLE I_ZHEMAL1
             WHERE VBELN IN S_VBELN.
    ENDFORM.                    " F_GET_zhemal1
    Form f_process_output                                                *
    FORM F_PROCESS_OUTPUT.
      LOOP AT I_zhemal1.
      I_zhem1-VBELN = I_zhemal1-VBELN.
      I_zhem1-POSNR = I_zhemal1-POSNR.
      I_zhem1-MATNR = I_zhemal1-MATNR.
      I_zhem1-MATWA = I_zhemal1-MATWA.
      I_zhem1-MATKL = I_zhemal1-MATKL.
      i_edidd-segnam = 'ZASH1'.
        i_edidd-sdata  = I_zhem1.
        append i_edidd.
        clear i_edidd.
      ENDLOOP.
    ENDFORM.                    " f_process_output
    Form  f_create_edidc                                                 *
    FORM F_CREATE_IDOC.
      CALL FUNCTION 'MASTER_IDOC_DISTRIBUTE'
           EXPORTING
                MASTER_IDOC_CONTROL            = CONTROL_RECORD_OUT
           TABLES
                COMMUNICATION_IDOC_CONTROL     = I_EDIDC
                MASTER_IDOC_DATA               = I_EDIDD
           EXCEPTIONS
                ERROR_IN_IDOC_CONTROL          = 1
                ERROR_WRITING_IDOC_STATUS      = 2
                ERROR_IN_IDOC_DATA             = 3
                SENDING_LOGICAL_SYSTEM_UNKNOWN = 4
                OTHERS                         = 5.
      IF SY-SUBRC <> 0.
        MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ELSE.
        LOOP AT I_EDIDC.
          WRITE :/ 'IDoc Generated  :' , I_EDIDC-DOCNUM.
        ENDLOOP.
        COMMIT WORK.
      ENDIF.
    ENDFORM.                               " f_create_idoc
    Please reward if useful.

  • How to find Outbound Idoc number from inbound Idoc number.

    Hi,
    I have one inbound Idoc in my system, then
    How to find the  idoc number from the system which sends that idoc(Outbound Idoc number).

    Hello
    You can use fm SREL_GET_NEXT_NEIGHBORS for this purpose.
    Scenario: An EDI purchase order is received by SAP-XI and forwarded as Inbound ORDERS IDoc to R/3. SAP-XI generates an (outbound) IDoc number which differs from the (inbound) ORDERS05 IDoc in the R/3 system.
    Calling fm SREL_GET_NEXT_NEIGHBORS with the following parameters:
    OBJECT-OBJKEY = <IDoc number, 16-digits>
    OBJECT-OBJTYPE = 'IDOC'
    MAX_HOPS = '99'            " <<< get all links
    I get the following result:
    0000000000133906                                   IDOC       CUSTOMER   OUTIDOC
    0000000000407402                                   IDOC                  INIDOC
    000000370383                                       BUS2012    CUSTOMER   OUTBELEG
    0010057944                                         BUS2032               INBELEG
    Outbound IDoc number
    Inbound IDoc number (ORDERS05)
    PO number
    Sales order (created from inbound ORDERS IDoc)
    Regards
      Uwe

  • Find the Inbound IDOC

    Hi Experts,
    I have a requirement to get the Inbound IDOC for particular PO. I have used the following method:
    http://forums.sdn.sap.com/thread.jspa?threadID=1082790
    That means using tables:
    A) SRRELROLES
    B) IDOCREL
    This is working for most of the cases except if the inbound IDOC is amended by the sender ( ex:- requested quantity changed ).
    1. If inbound IDOC received without any changes, it will be there in SRRELROLES as roletype = 'INBELEG'.
    2. If inbound IDOC received with changes it is not there in SRRELROLES.
    Could you please help me to resolve this issue?
    Thanks,
    Chaminda

    Hi,
    Thanks for your help.
    anyway, finally i had to use the time consuming way as there is no any other way.
    1. Get all the ORDRSP Idocs from EDIDC based on the selected date range
    select docnum status
          into table lt_edidc
          from edidc
         where credat in p_date1 and
               mestyp = 'ORDRSP'.
        if sy-subrc eq 0.
          sort lt_edidc.
    2. Get all segment data records for the control records
          select mandt docnum counter segnum segnam psgnum hlevel dtint2 sdata
            from edid4
            into table lt_edid4
             for all entries in lt_edidc
           where docnum = lt_edidc-docnum and
                 segnam = 'E1EDK02'.
    3. to imporve the performance, i have used BINARY SEARCH when search back the IDOC from PO.
    Thanks,
    Chaminda
    Edited by: chamindakrat on Feb 17, 2012 12:07 AM

  • How to create the INBOUND Function Module for INBOUND IDOCs

    Hi Friends,
    Can any Suggest me How to proceed to Create an INBOUND Function Module for Processing the INBOUND IDOCS
    which are recieved from XI Server ?
    I am working in SAP-ISU
    Here i will recieve the INBOUND IDOCs for the Meter Reading Orders.
    We have a Standard INBOUND FUNCTION MODULE
    IDOC_INPUT_ISU_MR_UPLOAD
    which Uploads the Meter Reading Results.
    I copied the Same function Module into ZIDOC_INPUT_
    and working on it.
    Can any one suggest me, whether i am going in correct way or not.
    In IDOC_INPUT_ISU_MR_UPLOAD Inbound fun module,
    BAPI_MTRREADDOC_UPLOAD is used to Update or Insert the Meter Reading Results,
    My requirment is to Insert and Update the Meter Reading Orders which are Inbounded from XI.
    Can I Use the Same BAPI
    BAPI_MTRREADDOC_UPLOAD
    to Update the below fields,
    EABL-SERNR
    EABL-ZWNUMMER
    EABLG-ABLESGR
    EABL-V_ZWSTAND
    EABL-N_ZWSTAND
    EABL-ABLHINW
    EABL-ZSKIPC
    EABL-ADAT
    EABL-ATIMTATS
    EABL-ADATTATS
    EABL-ATIM
    EABL-ZMESSAGE
    EABL-ABLESER(Meter reader number)
    Kindly Suggest me,
    Thanks in Advance,
    Ganesh

    Hello Ganesh
    I think you are going completely astray with you z-function module for IDoc processing.
    If you look at TABLES parameter METERREADINGRESULTS (type BAPIEABLU ) of BAPI_MTRREADDOC_UPLOAD you will find many of the requested fields already:
    EABL-SERNR => BAPIEABLU-SERIALNO
    EABL-ZWNUMMER =>REGISTER
    EABLG-ABLESGR
    EABL-V_ZWSTAND
    EABL-N_ZWSTAND
    EABL-ABLHINW
    EABL-ZSKIPC
    EABL-ADAT
    EABL-ATIMTATS => ACTUALMRTIME
    EABL-ADATTATS => ACTUALMRDATE
    EABL-ATIM
    EABL-ZMESSAGE
    EABL-ABLESER(Meter reader number)
    Field EABL-ZMESSAGE appears to be custom field (at least I cannot find it on ECC 6.0). If this field was added using include CI_EABL then you probably can get these values into the BAPI using the EXTENSIONIN parameter.
    Check routine CHECK_UPLOADRECORDS in the BAPI which allows two extension structures:
    - BAPI_TE_EABL
    - BAPI_TE_EOSB
    Not surprisingly BAPI_TE_EABL contains the include CI_EABL.
    Regards
      Uwe

  • In Idoc bundling ...message mapping not found

    Hi XI Friends..
    In my File to Idoc scenario..i want to send multiple IDOCs from the XI without a BPM .
    I am following blog by Michal.
    <a href="///people/michal.krawczyk2/blog/2005/12/04/xi-idoc-bundling--the-trick-with-the-occurance-change:///people/michal.krawczyk2/blog/2005/12/04/xi-idoc-bundling--the-trick-with-the-occurance-change
    I have xsd for source ..so i created one external definition .and message interface for outbound.
    following the above blog by michal..
    i imported  idoc ..and i exported that idoc into xsd and i changed the occurance of idoc to unbounded and again imported as external definition.
    i created  the message mapping between these two external definitions.and tested ..
    As in michal 's blog..
    In Interface mapping..i given source and target interface as standard idoc.and clicked on Read interface then i am not finding  the message mapping created in previous step..
    i refreshed cache also..
    please guide me.....
    regards
    ram

    Hi bavesh...
    thank you so much for very your quick responses..
    i got xsd as source..based on xsd i created external definition for source xsd  and  i created outbound interface based on source external deifinition <b>MI_OUT_WearUnits</b>.
    and i imported Idoc and exported as xsd and changed occurance to unbounded and again imported as external definition.
    i did mapping between these two external definitions.
    and i selected standard idoc for source and target interface for interface mapping  and given message mapping of previous step.
    In ID
    sender agreement :
                    sender service :BS_external
                    sender interface :<b>MI_OUT_WearUnits</b>
    receiver agreement:
                  receiver service :R/3
                  receiver interface :  standard Idoc
    Interface determination:
    sender service :BS_external
    sender interface :<b>MI_OUT_WearUnits</b>
    reciever service :R/3
    and clicked create
    inbound interface : Standard IDOc
    i am not getting Interface mapping which i created in IR.
    i tried Enhance interface determination also..
    please guide me....
    waiting for your help.
    regards
    ram

  • Inbound Idoc processing issues - Partner Profiles - error status 56

    Hello All,
    I'm having a little difficulty posting an idoc coming from MDM.  It's a CREMDM04 xml coming from an MDM system.  It is getting mapped through PI and is being split into ADRMAS02 and CREMAS04 Idocs.  The message is being passed through XI and being posted to the ECC system, but certain fields in the EDI_DC40 header table are not being populated correctly (i believe).  I'm using nothing but standard mapping/material from the SAP Business Content for XI.  After looking through the standard XSLTs i cannot find the field-to-field mapping where the fields below are being populated.
    The RCVPOR value (SAP[SID]) is correct when i view it in SOAP Header, but does not appear in the remote system under the receiver port for the inbound idoc.
    The RCVPRN value ([String Value]) is incorrect in the SOAP Header and does appear in the remote system under the receiver partner number for the inbound idoc.  How is the RCVPRN value being populated? 
    SOAP Header in IDocOutbound tag
      <SAP:RCVPOR>SAP[SID]</SAP:RCVPOR>
      <SAP:RCVPRN>[String Value]</SAP:RCVPRN>
      <SAP:RCVPRT>LS</SAP:RCVPRT>
    I've been trying to trace down the string value for the RCVPRN, but i cannot find it anywhere.  Perhaps i'm just overlooking it?
    When i set the proper values (port = SAP<SIDofECC> and partner number = <LSnameof ECC>) using WE19 in the remote system then the partner profile is found and i'm left with different error to please specify an address group.
    Any help is very much appreciated! :-D

    Hi Jason ,
    Just check out if you have done the following steps most of us make minor mistake here ....... I think this would solve your problem
    To Configure the IDOC SCENARIOS ,PROCEED AS FOLLOWS
    STEP 1:ALE SETTINGS TO POST IDOC INTO SAP R/3
    We need to do the following settings in XI
    1) Create an RFC Destination to the Receiving System in transaction code (SM59)
    a) Choose create
    b) Specify the name of the RFC destination
    c) Select connection type as 3 and save
    d) In the technical settings tab enter the details SAP SID/URL and system number#
    e) Enter the Gateway host as same details above SID/URL
    f) Gateway service is 3300+system number#
    g) In the Logon /Security tab, enter the client, user & Password details of Destination system
    h) Test the connection and remote logon.Both should be succesful
    2) Create Port Using Transaction Code IDX1
    a) Select Create New button
    b) Enter the port name as SAP+SID (The starting char should be SAP)
    c) Enter the destination client
    d) Enter the RFC Destination created in XI towards R/3
    e) Save
    3) Load Meta Data for IDOC Using transaction Using Transaction (IDX2)
    a) Create new
    b) IDOC Message Type
    c) Enter port created in IDX1
    SETTINGS IN SAP R/3
    We need to do the following settings in R/3
    Logon to Sap R/3 System
    1) Create an RFC Destination to XI in transaction code (SM59)
    a) Choose create
    b) Specify the name of the RFC destination
    c) Select connection type as 3 and save
    d) In the technical settings tab enter the details SAP SID/URL and system number#
    e) Enter the Gateway host as same details above SID/URL
    f) Gateway service is 3300+system number#
    g) In the Logon /Security tab, enter the client, user & Password details of Destination system
    h) Test the connection and remote logon.Both must be succesful
    2) Create communication Port for Idoc processing Using Transaction(We21)
    a) First Select Transactional RFC and then click create button
    b) Enter the destination port name as SAP+SID (The starting char should be SAP)
    d) Enter the RFC Destination created in SAP R/3 towards other system.
    e) Save
    3) Create Partner Profile with Inbound Parameters (WE20)
    a) Create New
    b) Create the Partner no. name as same the logical system name of the destination system
    c) Select Partner type LS
    d) Enter details for Type: US/USER, Agent, and Lang
    Then Save
    e) Select Partner no. and LS which were create above
    f) Now we have to give some Inbound Parameters.So click on ADD TO Create Inbound Parameter
    g) Select Message type
    h) Double click on Message Type and Then Enter the details for Message Type and Process Code.
    I) save
    4) In Transaction SALE, Create Logical System
    a). Go to Basic Settings-> First Define logical systems
    and then assign logical systems
    b) Double click on Define the logical systems
    c) Give data for your Logicaal System and Name
    d) Now click on Save.Here one window may appear just click on Continue.Now the Logical System name is ready
    e) Assign the logical system name to the client
    do let me know if it helped
    Edited by: Tom  Jose on Feb 21, 2008 9:04 AM

  • Some Data Missing in the inbound Idoc received from Gentran

    Hi,
    We are receing one custom message type with the basic type ORDER05 in SAP from Gentran. When we checked the destination file generated in Gentran, its showing data for all the segments. However in SAP when we checked the corresponding idoc we find the segment E1EDP05 is missing. The Gentran team says they are placing the destination file in the unix server of SAP. However we dont find these files in the SAP Unix server. Could anybody advise what could be the problem and where we need to check further ?

    Gentran will never be able to create an IDOC within SAP. Here is what happens:
    > Gentran creates a flatfile/XML which is in the IDOC format (the one which you can see in WE60).
    > Gentran then places this flat file/XML in a folder on Application server. This can be UNIX, Windows NT, etc..
    > Gentran then triggers the Startrfc.exe which will trigger EDI_DATA_INCOMING function module.
    > This FM will parse the data, check it for consistency of the defined standards, then write the control record into EDIDC and corresponding data records into EDID4 and updates the relevant statuses (i.e. 01 - added, etc). It'll then look into the partner profile setup, look for process code and moves the status to 64 and calls the inbound FM which will post the application document.
    In you case, you need to find out what file is coming in and where E1EDP05 has missed. The data will only be sent by Gentran. The inbound function modules will never update IDOC data records (unless there is a customization). The status records are updated.
    If E1EDP05 is not mapped and sent by Gentran and you still used to see it, then there should have been a customization in place to add values to IDOC segment fields. Try to get the final file that is mapped from either X12/EDIFACT and then see if E1EDP05 segment is present in there. If it is present then upload the same file into AL11 using CG3Z and call EDI_DATA_INCOMING or WE19 to process it. Once processed, you'll can observe if E1EDP05 is being created or not.

  • Custom inbound Idoc error handling/ Workflow

    Dear Experts,
            I have a requirement where in I created a custom inbound idoc, but now i need to handle the errors in the workflow and notify the users thru workflow on an error.
    Can some one please provide me a step by step guide on how to create a organizational unit, position and assign users to the position... and any other steps that need to be configured to notify the user on the error.
    I'm pretty new to all these organizational uints and workflow related stuff. Any step by step would really be helpful.
    Thanks for your time.
    -Amit.
    Moderator message: sorry, these forums cannot replace proper training, if there is step by step guides out there, then please use the search functions.
    Edited by: Thomas Zloch on Oct 31, 2010 11:50 AM

    Vittal,
    1. If your requirement is for a SAP Standard Basic Message type and a Z extension: Then you simply have to find out the 'Standard Task' associated with basic type. You shouldn't worry about extensions. The standard task will be triggered at input error.
    2. If your requirement is for a Z basic type i.e. you have created a customer IDOC for a custom processing: There are many dependencies on how you can achieve this. Firstly, you need to know how you're are processing this Z_IDOC. Are you using a standard FM or custom workflow or custom FM? There should be some triggering event within the processing of this Z_IDOC which will raise a certain flag when the error you want to capture happens (or when there is a generic error). You can configure this event in binding objects to trigger a workflow task. If you take a look at any standard tasks, you'll get an idea how the triggering event happens.
    Once the workflow task (you can use custom task or use a standard task i.e. by triggering a standard event within the IDOC processing program) is triggered, you can either send it to SAP inbox, e-mail, trigger another processing etc. This is altogether another story.
    So bottomline: For custom IDOC processing, you need to trigger an event when error happens. This can be a custom event or a standard event. This event should be linked to a task (custom/standard - check in SWETYPV). Bind all of these in PFTC. Once the task is triggered, you can do whatever you want to do with it.

  • Inbound idoc with error status 52 messege type hrmd_a07

    i have an inbound idoc with status 52
    error messege : Object 01 ,P ,00056786 does not exist: infotype 0302 cannot be created
                             Object 01 ,P ,00056786 does not exist: infotype 0006 cannot be created
    i debugged but i haven't find out the reason
    am updating 0000,0001,0002,0003,0006 infotypes

    Hi rahul,
    Need to check the address filed (0006) for BP mapped to postion (00056786)
    Infotype 0302 (Additional Actions) :
    Infotype 0302 is not maintained directly and is automatically updated by Infotype 0000 .
    The additional actions Infotype (0302) is of time constraint 3 (gaps and overlaps).
    Specifically in some cases if we want to have a non status-changing Action on the same day where already a personnel action is existing at that time we can activate the Infotype 302 by executing Report RPUEVSUP.
    please check and let me know . I think it will be helpfull
    Thanks and Regards,
    Krishna

  • Inbound IDoc Usetr-Exit

    Hi All,
    I am trying to find an userexit for the Inbound Idoc.
    <b>Basic type : COPAGN01.</b>
    If anyone has used any user exit for the COPAGN01 kindly let me know.
    Best Regards,
    Manish

    Hi,
    Go to SPRO and find enhancements idoc, it will show u both exit available for idoc.
    Or goto se84-> enhancements find the idoc keyword search. It will give u the desired result.
    Hope this will work for u.

  • Query abt Inbound IDOC.

    Hi,
         I am creating a custom FM for processing Inbound IDOC.
    I have configured my Inbound IDOC in cutomer profile and the Process code, which is pointing to the custom FM. 
    In tables section of my FM, I am receiving EDIDC n EDIDD type tables.
    Now If I fire my IDOC, Does the IDOC information is transfered automatically to my FM.
    Cheers,
    Sam

    It depends on the Idoc mapping in the partner profiles of WE20.
    //where I have to select the inbound FM, But I don't find the entry for my FM.
    Do you have an entry on that particular Fm and message type in tocde We57?
    if yes then proceed as
    Final check once this is over in Tcode WE57
    Open tcode WE19 and give the message type of ur idoc in same and execute .
    This will open your idoc . Populate it with control record details and data details .
    and now click inbound function module .
    this will pop up a window asking for Function module and then process the same in Debugging  mode and execute it .
    This is a replica of how the Fm is called manually.
    Since in WE57 the mapping is done for the Message type and Fm it will pick the  Fm .
    regards,
    vijay.

  • Creation of Sales Order and Service Contract from Inbound IDOC

    Hi Experts,
    My requirement is to create a Sales Order as well as a Service Contract from one Inbound IDOC. I am getting the Inbound IDOC from a third Party. The message type is ORDERS and Basic Type is ORDERS02. How ever i am using an extension type IDOC which carries all the required data for Sales Order and Service Contract. My requirement is like, to create a Sales Order first.
    I have created a Z FM which is attached to the Process Code and subsequently to the message type. Inside the FM i an calling FM 'IDOC_INPUT_ORDERS' for creation of Sales Order. After that i am changing the IDOC data for the Document Type. I am changing the document type which is responsible for Contract Creation.
    Then I am again calling the FM 'IDOC_INPUT_ORDERS' for creation of Contract with the help of IDOC data. But here the Contract is not getting created. It's getting failed during the Batch input session.
    I need to solve this problem as soon as possible. Please help me. If there are any other options also please share.
    Thanks in Advance.
    Regards,
    Priyabrata

    Actually there is problem with BDCDATA. Inside the FM it's calling transaction with help of BDCDATA. If i am creating a Sales order or contract alone its creating successfully. But when i am trying to create both, it's retuning sy-subrc '1001' after calling the transaction on the second attempt. Is there any problem with BDCDATA like we can't handle with less time gap? Please help and give your inputs.
    Regards,
    Priyabrata

  • How to block the status mail for an inbound Idoc to a specific user

    Hi,
    I have to stop sending the error status mail to a specific user depenidng on Partner Type. This will trigger when an inbound Idoc contains status error(message type INVOIC &ORDRSP).This user needs other mails which are getting triggered with the same Idoc for the same partner. Basically, the requirement is to block only the status mail for that user. The statndard task for this is TS70008125 and it uses the agent determination rule 30000001 (Idoc Administrator).in WE46, this task is assigned to process code EDIR. I have copied the task to a custom task and changed the agent determination rule. I would like to know how will I configure this task so that this custom task will trigger for the status error, without altering other workflows for the same message type & the partner type. Or is there any other way to block the mail?
    Thanks,
    Santosh

    Hi,
    I have done the required coding to exclude the specific agent from the rule,copied the task and its ready. My question is how do I map this custom task to a particular partner type, for the message type INVOIC in WE20? (The message type used for the inbound Idoc is INVOIC). I checked the Partner profile in WE20. Most of the process code is using function module as the processing type.
    Thanks,
    Santosh

Maybe you are looking for