Populating Idoc number in Idoc header data

Hello everybody,
I want to know that is there any way exists by which we can fill the Idoc number generated in the IDOC itself i.e. we are generating IDOC from EDIDD and EDIDC tables and I have a requirement to populate IDOC number(which will be generated after the IDOC will be created) in one of the IDOC's segment. From my end I have no clue on this because we are trying to use the value (IDOC number) before it is being generated and hence help needed on this.
Regards,
Harsh.

Hi Harsh,
you can get your idoc number from the master_idoc_data table genretated by FM 'MASTER_IDOC_DISTRIBUTE'.
edidc-docnum is your desired thing. you can pass this field in other segment.
Regards,
Pranay

Similar Messages

  • IDoc number based upon sales data.

    Hi Experts,
    How to get the IDoc number in case I have sales document number or any other data which is being send in IDoc, any way we can get the IDoc number?
    Also help me know the program to process the IDocs in background, I know the t.code bd87 is used to process the idocs, but how to process in background via a batch job.
    thanx
    Garima

    Hi,
    You may use t.code we09 to get the Idoc number based upon data,
    you need to provide the information like Idoc basic type, date range etc to filter the data,
    and under "Creteria for search in data records",  provide the segment name, search in field and value against you are looking for a Idoc number.
    Use following programs to process the IDocs in background:-
    RSEOUT00 u2013 Process all selected IDocs (EDI) 
    RBDAPP01 u2013 Inbound Processing of IDocs Ready for Transfer
    Some use full t.code for IDoc processing:-
    WE60 u2013 IDoc documentation 
    BD87 u2013 Inbound IDoc reprocessing 
    BD88 u2013 Outbound IDoc reprocessing 
    BDM2 u2013 IDoc Trace 
    WE19- Testing IDoc.
    regards
    Vivek.

  • Get IDoc number for IDoc generated through RBDMIDOC

    Hi All,
    I have a requirement where in I need to send Vendor master information through CREMAS to PI system. I am using change pointer and batch job to trigger RBDMIDOC and send IDocs.
    In case the IDoc fails a mail needs to be triggered to concerned person giving vendor number, Idoc number and date. Can anyone suggest any user exit/BADI where this can be done ??
    Note: system is 4.7C.

    Hi Chinmay
    I didn't knew you were in 4.7. Since you mentioned about the details of the workflow getting triggered, here are the options i can think of.
    In case of error it is triggering the standard task 00007989 which you can check in PFTC. This task calls the method ERRORPROCESS from Business Object IDOCAPPL. My suggestion here would be to create a subtype of BO IDOCAPPL in SWO1 transaction and add additional logic in method ERROR_PROCESS to send the mail. The details of the IDOC number and other things are available in the task container of TS00007989. But make sure you do it specific for your message type, as this will be triggered for all message types. And then change the BO and method reference in task 00007989 to point to your new BO method.
    Other options would be to delegate the BO IDOCAPPL to a new Z BO, and then modify the method IDOCAPPL. This way you don't have to change the task BO assignment, as it will implicitly use the Z BO method. May be you can get in touch with your Workflow consultant who can help you more on this.
    Regards
    Ranganath

  • Idoc number with other fields

    hii
    How i can get the in single table Idoc number with BELNR feild data .
    I need get the data like this in single transaction code . can some body help in this ??
    Thanks

    hii
    I have approximately 10,000 IDOCs .. Its not possible to open individually the and get the field data for IDOCS.
    So how i can acheive this in single shot or there is any table ..
    Thanks

  • IDoc looks fine, but "Processing (data packet)" : No Data

    Hi dear all:
    we trying to loading data from R3 ECC 5.0 into BI 7.0. During the loading process, the status keeps "yellow".
    When we checked the Details in the extractor monitor, the message shows in "Transfer (IDocs and TRFC) is "Request IDOC and Info IDoc 1 : Application document posted".
    But the "Processing (data packet): No Data. We have checked on R3 in tcodes BD87 with IDoc number."IDoc entries in tRFC queues" shows red light under section of "IDoc in outbound processing".
    In IDoc entries in tRFC queues, there is not revenant record for this IDoc. Also we used tcode SM37 to check job execution based on the request number of data loading. The job is shown released.
    Can anyone give us some idea about what happened and how can we fix it.
    Thank you very much
    SF

    Geeta,
    Try this...heard there needs to be a setting made in T-code..SMWQR ..
    U have to register the csa*  queue...try getting more inputs on this...this is what I know abt this..
    Hope this helps..
    Regards.
    Nick.

  • Get ECC idoc number from PI

    Hi All
    IS there a way to get the IDOC number created in the ecc system from PI? A FM or something you can call the get the ecc idoc number?

    IDoc acknowledgements is the way to go.
    Configure ALEAUD and it should respond back with the IDoc number and what happened to the IDoc in SAP
    http://help.sap.com/saphelp_nw04/helpdata/en/0b/2a6550507d11d18ee90000e8366fc2/frameset.htm

  • 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

  • Sales order header data change by using the ORDERS05 IDOC

    Hello Team
    I am getting sales order number and some code value from the legacy system. i need to check whether the sales order is avialable in SAP or not. if it is there, i need to update the CODE value (ie for example ABC100) in sales order header data> order data> your reference field.  For doing this i am using the IDOC type ORDERS05 and message type ORDCHG message type.
    Now i want to know what are the mandatory fields which i need to do the mapping for the IDOC ORDERS05, to change the sales order header data. please check and suggest me the required fields of the IDOC to be mapped, so that i can change the sales order header data.
    Please correct me if i am doing something wrong here.
    Regards
    Rj

    Hello chirag
    Thanks for your reply. My requirement is to change the sales order which is already avialable in SAP. Just i need to change the header data of the sales order, for example if i am getting the sales order as 1000 and CODE as ABC100. i need to change the Sales document number 1000 and put the code ABC100 in sales order header data>orders data>your reference field.
    So now i want to know the below points
    1. what are the mandatory fields for which i need to pass the values for the IDOC ORDERS05.
    2. what is the user-exit used for picking up those values from SAP because i am getting only sales order number and CODE values from legacy system.
    Please check and suggest me accordingly.
    Regards
    Rj

  • Idoc Receiver - Header Data does not update

    Hi there
    I have an Idoc receiver in a scenario where I send a Idoc from a file to the R/3 system. My config is all fine but the Idoc status in we19 shows red. My Header data for the idoc is incorrect. The idoc is WALREQ01. In my Message Mapping Im setting the SDNPOR, SDNPRT, SDNPRN, RCVPOR, RCVPRN to the correct values and the I activate the scenario but in we19 it still shows the incorrect idoc header. It does however change the idoc segment data, just not the header. Is there maybe some other place I have to set the Idoc header data?
    Thanx,
    Jan

    Hi Jan,
    From help.sap:
    Apply Control Record Values from Payload
    If you set the indicator, the conversion of communication parties to the IDoc partner is only possible for systems that are not logical systems.
    If you do not set the indicator, all combinations of communication parties and services are handled as services without party.
    If the IDoc XML structure contains a control record during outbound processing on the Integration Server, it is rejected and created again by the IDoc adapter. If you want to include additional values in the control record, set the indicator and provide an appropriate mapping for the values. See also: Fields of the IDoc Control Record
    http://help.sap.com/saphelp_nw04/helpdata/en/13/95244269625633e10000000a155106/content.htm
    Carlos

  • IDoc to File with different file name and data based on the IDoc header dat

    Hi,
    I got a requirement to implement IDOC to file senario.  In this the Converted file should have the file name and file content based on IDoc Header data.  Means If one of the IDoc header field value is
    'A'  - then the file name recieved by reciever system should be 'A.txt' and with the columns A  B  C  D  F.
    'B'  - then the file name recieved by reciever system should be 'B.txt' and with the columns C  D  F.
    In both the case IDoc message type is same.
    Please suggest me what i need to do to achieve this.
    Thanks in Advance. ...
    Regards
    Sri

    Hi,
    As per my requirement, we need to create one file for each IDoc based on IDoc header data. SAP program generates 10 IDocs for each run. All 10 IDoc's message type is same.  Each IDoc has one header record with the file name. Base on the  name in the IDoc header record, file needs to be created with different columns and file name. Means..
    IDoc 01- Header Description contains 'A' - than file will be generated should have name as 'A.txt' and columns 'parent'  'child' 'descripion'.
    IDoc 02- Header Description contains 'B' - than file will be generated should have name as 'B.txt' and columns 'Name' 'Department' 'Description'.
    IDoc 10- Header Description contains 'J' - than file will be generated should have name as 'J.txt' and columns 'Order No'  'Materail' 'Description'.
    Hope this will give more clarity on my requirement. Please let me if you are still not clear on requirement.
    Thanks for your all help..
    Thanks & Regards
    Sreeni

  • IDOC number is not in the list

    Hi,
    I am creating an inbound delivery using IDOC. The message type is DESADV and basic type is DELVRY01. After I have populated the control and data tables, I processed them using IDOC_WRITE_AND_START_INBOUND. I have generated the IDOC number after executing the program. The problem is, when I go to WE02, the idoc number is not the list. I am not sure if the IDOC I generated is successful or not. Does it have something to do with the FM that I used. I set a custom process code that will call the FM IDOC_INPUT_DESADV1. Please advise. Thanks in advance.
    Lalyn

    Hi Arun,
    Thanks for the reply. But the IDOC number is not in the list and I can't access it WE19. Do you have any other Function module that I can use to process the IDOC in ABAP? The Function module should be the one to call the FM IDOC_INPUT_DESADV1 to create an inbound delivery. That's what I think causes the error. Thanks.
    Lalyn

  • Problem in finding Idoc number from Delivery document number(VERY URGENT)

    Hi experts,
    I have a delivery document number.Now i have to find the Idoc number for thet delivery document and extract some necessary data from one of the segment of that Idoc.So I am not able to find a link through tables .
    So I exact query is 'what is the selection method i have to follow to get the idoc number given the delivery document number'.
    Regards,
    Praveen.
    Edited by: Praveen Jada on Mar 14, 2008 12:15 PM

    That's what I meant, do the following query:
    DATA: LT_DOCNUM TYPE TABLE OF EDI_DOCNUM.
    SELECT DOCNUM
      INTO TABLE LT_DOCNUM
      FROM EDID4
      WHERE SEGNAM EQ 'E1EDL20'
      AND SDATA EQ '0001234567%'.
    This will list you all the IDOC numbers in which delivery number 0001234567 appear in the delivery header segment.
    Depending on your process it's probably going to be one entry only.
    Hope that clarifies it,
    Michael

  • Saving IDOC Number from control_record_out before IDOC goes out.

    Hi,
    How would I save the IDOC number so that I can maintain a table with
    Idocnumber
    Document Number
    Date
    Etc
    The IDOC num is not populated until the system finally does save the idoc and send it? Right?
    Need that IDOC number via an exit or something.
    thanks.

    Use function SREL_GET_NEXT_RELATIONS to rather get the link after the IDOC has gone out.
    Any better/easier ways?
    regards

  • Finding an idoc number from a given sales document

    hi,
           please send me the code for the finding idoc number for a given sales document.
    it is urgent............
    thanks in advance..........

    I written the code to find the idoc number for given Purchase order number,so you can change the code depends on your requirement
    TYPE-POOLS: slis.
    tables : edid4 , edidc ,edids ,lfa1,teds2.
    DATA: t_fieldcatalog TYPE slis_t_fieldcat_alv.
    DATA: s_fieldcatalog TYPE slis_fieldcat_alv.
    DATA: s_layout TYPE slis_layout_alv.
    DATA: text11 LIKE E1EDP02.
    DATA: text111 LIKE E1MBXYI.
    DATA: s_keyinfo TYPE slis_keyinfo_alv.
    DATA: v_repid TYPE syrepid.
    DATA: V_MSGNO LIKE T100-MSGNR.
    *DATA: V_TEXT(90).
    DATA : WA_EDIDS TYPE EDIDS.
    data : begin of itab_edids occurs 0,
       user like edids-UNAME,
       date like edids-CREDAT,
       time like edids-cretim,
       idoc like edids-docnum,
      MESSAGETYPE like edidc-MESTYP,
      VENDOR LIKE EDIDC-SNDPRN,
      name like lfa1-name1,
      icon(1),
       EXPAND TYPE C,
    end of itab_edids.
    data : itab type edid4.
    data : begin of itab_edidc occurs 0,
         doc_num like edidc-docnum,
         MESSAGETYPE like edidc-MESTYP,
       IDOCTYPE like edidc-DOCTYP,
       PARTNERNUMBER like edidc-RCVPRN,
       PARTNERTYPE like edidc-RCVPRT,
      MESSAGECODE like edidc-MESCOD,
      VENDOR LIKE EDIDC-SNDPRN,
      data like edidc-credat,
    *include structure edidc.
      end of itab_edidc.
    data : begin of itab_status occurs 0,
    idoc like edids-docnum,
    date_stauus like edids-logdat,
    status_counter like edids-countr,
    staTus like edids-status,
    *descrp like teds2-descrp,
    DESCRP(70),
    ponumber like  ekpo-ebeln,
    MESS LIKE edidc-MESTYP,
    *appdoc like edids-stapa1,
    end of itab_status.
    data : text like edid4-sdata.
    DATA: text1 LIKE E1EDK01.
    data : begin of itab_teds1 occurs 0.
            include structure teds1.
    data end of itab_teds1.
    *selection-screen begin of block sb with frame title text-001.
    *select-options:
       s_rsdat for edidc-CREDAT.
    *selection-screen end of block sb.
    DATA: f_fieldcatalog TYPE slis_fieldcat_alv.
    selection-screen begin of block sb with frame title text-001.
    parameters:
           p_su radiobutton group gp1,
           p_re radiobutton group gp1,
           p_al radiobutton group gp1.
    select-options:
        s_rsdat for edids-creDAT,
        s_user for edids-uname.
    selection-screen end of block sb.
    initialization.
    PERFORM INITIALIZATION.
    start-of-selection.
    PERFORM DATA_RETRIVAL.
    PERFORM DATA_BASED_SELECTION.
    PERFORM PASSING_ALV.
    *select docnum mestyp doctyp rcvprn rcvprt mescod credat into
    *table itab_edidc from edidc
    *where credat in s_rsdat.
    *CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
    *EXPORTING
    *i_program_name = v_repid
    *I_INTERNAL_TABNAME = 'ITAB_STATUS'
    *CHANGING
    *ct_fieldcat = t_fieldcatalog.
    *CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
    *EXPORTING
    *i_program_name = v_repid
    *I_INTERNAL_TABNAME = 'ITAB_EDIDS'
    *CHANGING
    *ct_fieldcat = t_fieldcatalog.
    s_LAYOUT-ZEBRA = 'X'.
    *s_LAYOUT-SUBTOTALS_TEXT = 'SUBTOTAL'.
    *s_LAYOUT-TOTALS_TEXT = 'TOTAL'.
    *&      Form  INITIALIZATION
          text
    -->  p1        text
    <--  p2        text
    FORM INITIALIZATION.
    V_REPID = SY-REPID.
      s_keyinfo-header01 = 'IDOC'.
      s_keyinfo-item01 = 'IDOC'.
    *s_layout-subtotals_text = 'SUBTOTAL TEXT'.
    *s_layout-key_hotspot = 'X'.
    *s_layout-expand_fieldname = 'EXPAND'.
      CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
           EXPORTING
                i_program_name         = V_REPID
                I_INTERNAL_TABNAME     = 'ITAB_STATUS'
                I_INCLNAME = V_repid
           CHANGING
                ct_fieldcat            = T_fieldcatalog
           EXCEPTIONS
                INCONSISTENT_INTERFACE = 1
                PROGRAM_ERROR          = 2
                OTHERS                 = 3.
      CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
           EXPORTING
                i_program_name         = V_REPID
                I_INTERNAL_TABNAME     = 'ITAB_EDIDS'
                I_INCLNAME = V_repid
           CHANGING
                ct_fieldcat            = T_fieldcatalog
           EXCEPTIONS
                INCONSISTENT_INTERFACE = 1
                PROGRAM_ERROR          = 2
                OTHERS                 = 3.
    f_fieldcatalog-just = 'L'.
    MODIFY t_fieldcatalog FROM f_fieldcatalog
    TRANSPORTING just
    WHERE  ( fieldname = 'IDOC' OR FIELDNAME = 'STATUS_COUNTER' ).
    f_fieldcatalog-SELTEXT_L = 'Status Message'.
    MODIFY t_fieldcatalog FROM f_fieldcatalog
    TRANSPORTING SELTEXT_L
    WHERE  fieldname = 'DESCRP'.
    f_fieldcatalog-TECH = 'X'.
    MODIFY t_fieldcatalog FROM f_fieldcatalog
    TRANSPORTING TECH
    WHERE  fieldname = 'EXPAND'.
    f_fieldcatalog-REPTEXT_DDIC = 'Vendor Name'.
    MODIFY t_fieldcatalog FROM f_fieldcatalog
    TRANSPORTING REPTEXT_DDIC
    WHERE  fieldname = 'NAME'.
    *f_fieldcatalog-REPTEXT_DDIC = 'V Code 32122'.
    *MODIFY t_fieldcatalog FROM f_fieldcatalog
    *TRANSPORTING REPTEXT_DDIC
    *WHERE  fieldname = 'VENDOR'.
    ENDFORM.                    " INITIALIZATION
    *&      Form  DATA_RETRIVAL
          text
    -->  p1        text
    <--  p2        text
    FORM DATA_RETRIVAL.
    select  uname credat cretim docnum into  table
    itab_edids from edids
                   where credat in s_rsdat and
                          uname in s_user and
                          countr = ' '.
    select  uname credat cretim docnum from edids
    *APPENDING CORRESPONDING FIELDS OF TABLE itab_edids
                  where logdat in s_rsdat and
                         uname in s_user.
                         SELECT budat hkont belnr shkzg wrbtr FROM bsas
    *APPENDING CORRESPONDING FIELDS OF TABLE it_temp WHERE hkont = w_glacct
    *"wa_cb-gl_account
    *AND bukrs IN (so_bukrs-low)
    *AND budat < so_date-low.
      delete  adjacent duplicates from itab_edids.
      if not itab_edids[]  is initial.
         select docnum mestyp doctyp rcvprn rcvprt mescod SNDPRN credat into
        table itab_edidc from edidc for all entries in itab_edids
        where docnum = itab_edids-idoc.
      endif.
    LOOP AT ITAB_edids.
       READ TABLE ITAB_EDIDC WITH KEY  DOC_NUM = ITAB_EDIDS-IDOC.
       itab_edids-messagetype = ITAB_EDIDC-MESSAGETYPE.
       itab_edids-VENDOR = ITAB_EDIDC-VENDOR.
       MODIFY ITAB_EDIDS.
       CLEAR ITAB_EDIDS.
       ENDLOOP.
    DELETE ITAB_EDIDC WHERE MESSAGETYPE = 'ORDERS'.
    loop at itab_edids.
    read table itab_edidc with key doc_num  = itab_edids-idoc.
    if sy-subrc ne 0.
    delete itab_edids.
    endif.
    endloop.
    select docnum logdat countr status into table itab_status from edids for
       all entries in itab_edidc where docnum = itab_edidc-doc_num.
       LOOP AT ITAB_STATUS.
       READ TABLE ITAB_EDIDC WITH KEY  DOC_NUM = ITAB_STATUS-IDOC.
       ITAB_STATUS-MESS = ITAB_EDIDC-MESSAGETYPE.
       MODIFY ITAB_STATUS.
       CLEAR ITAB_STATUS.
       ENDLOOP.
      loop at itab_status.
        clear : text ,text1 , text11, text111, itab.
       select single descrp from teds2 into itab_status-descrp
                              where status = itab_status-STATUS AND
                                   LANGUA = 'E'.
       select single sdata into text from edid4 where
         DOCNUM =  itab_status-idoc and
         segnam = 'E1EDK01'.
    *MOVE: text        TO text1,
         text1-BELNR TO itab_status-ponumber.
          itab_status-ponumber = text1-belnr.
       move text+83(30) to itab_status-ponumber.
       MODIFY ITAB_STATUS.
       clear itab_status.
    IF itab_status-MESS = 'WMMBXY'.
       select single * from edid4  INTO ITAB where segnam = 'E1MBXYI' AND
                     HLEVEL = '02' AND DOCNUM = itab_status-idoc.
    MOVE  : ITAB-SDATA  TO TEXT111 ,
    text111-EBELN TO itab_status-ponumber.
    **text1-BELNR TO ponumber.
    ELSE.
    select single * from edid4  INTO ITAB where segnam = 'E1EDP02' AND
                     HLEVEL = '03' AND DOCNUM = itab_status-idoc.
    MOVE  : ITAB-SDATA  TO TEXT11 ,
    *text1-EBELN TO ponumber.
    text11-BELNR TO itab_status-ponumber.
    endif.
        MODIFY ITAB_STATUS.
        clear itab_status.
      endloop.
    ENDFORM.                    " DATA_RETRIVAL
    *&      Form  PASSING_ALV
          text
    -->  p1        text
    <--  p2        text
    FORM PASSING_ALV.
    s_LAYOUT-EXPAND_FIELDNAME = 'EXPAND'.
    DATA: t_events TYPE slis_t_event.
    DATA: s_events LIKE LINE OF t_events.
    s_events-form = 'TOP_OF_PAGE'.
    s_events-name = 'TOP_OF_PAGE'.
    APPEND s_events TO t_events.
    s_layout-lights_fieldname = 'ICON'.
    sort itab_status by status_counter descending. " -
    mod3
      CALL FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'
           EXPORTING
                i_callback_program = v_repid
                is_layout          = s_layout
                it_fieldcat        = t_fieldcatalog
                i_callback_user_command = 'USER_COMMAND'
                i_tabname_header   = 'ITAB_EDIDS'
                i_tabname_item     = 'ITAB_STATUS'
                IT_EVENTS          = t_events
                is_keyinfo         = s_keyinfo
           TABLES
                t_outtab_header    = itab_EDIDS
                t_outtab_item      = itab_STATUS
           EXCEPTIONS
                program_error      = 1
                OTHERS             = 2.
      IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    ENDFORM.                    " PASSING_ALV
    *&      Form  DATA_BASED_SELECTION
          text
    -->  p1        text
    <--  p2        text
    FORM DATA_BASED_SELECTION.
    if p_su eq 'X'.
    *loop at itab_status where status = '53'.
    *select single stapa1 from edids into itab_status-appdoc
    where  docnum = itab_status-idoc and status = '53'.
    *delete itab_status where status ne '53'.
    *modify itab_status.
    *endloop.
    delete itab_status where status ne '53'.
    loop at itab_edids.
    read table itab_status with key idoc = itab_edids-idoc binary search.
    if sy-subrc ne 0.
    delete itab_edids.
    ELSE.
    *SHIFT ITAB_EDIDS-IDOC LEFT  DELETING LEADING '0'.
    MODIFY ITAB_EDIDS.
    endif.
    endloop.
    LOOP AT ITAB_STATUS WHERE MESS NE 'WMMBXY'.
    SELECT SINGLE * FROM EDIDS INTO WA_EDIDS WHERE DOCNUM = ITAB_STATUS-IDOC
    AND COUNTR = ITAB_STATUS-STATUS_COUNTER.
    IF  WA_EDIDS-STATXT CA '&'.
    V_MSGNO = WA_EDIDS-STAMNO.
    IF V_MSGNO NE '000'. "----mod3
    CALL FUNCTION 'MESSAGE_PREPARE'
    EXPORTING
    msg_id = WA_EDIDS-STAMID
    msg_no = V_MSGNO
    MSG_VAR1 = wa_edids-stapa1
    MSG_VAR2 = WA_EDIDS-STAPA2
    MSG_VAR3 = WA_EDIDS-STAPA3
    MSG_VAR4 = WA_EDIDS-STAPA4
    IMPORTING
    MSG_TEXT = itab_status-descrp.
    CONDENSE ITAB_STATUS-DESCRP.
    ENDIF."---- mod3
    ELSE .
    ITAB_STATUS-DESCRP = WA_EDIDS-STATXT.
    ENDIF.
    *SHIFT ITAB_STATUS-IDOC LEFT  DELETING LEADING '0'.
    *SHIFT ITAB_STATUS-STATUS_COUNTER LEFT  DELETING LEADING '0'.
    MODIFY ITAB_STATUS.
    ENDLOOP.
    LOOP AT ITAB_STATUS WHERE MESS EQ 'WMMBXY'.
    SHIFT ITAB_STATUS-IDOC LEFT  DELETING LEADING '0'.
    SHIFT ITAB_STATUS-STATUS_COUNTER LEFT  DELETING LEADING '0'.
    ITAB_STATUS-DESCRP = 'APPLICATION DOCUMENT POSTED'.
    MODIFY ITAB_STATUS.
    ENDLOOP.
    delete adjacent duplicates from  itab_edids comparing idoc.
    elseif p_re eq 'X'.
    loop at itab_status where status = '53'.
    delete itab_edids where idoc = itab_status-idoc.
    endloop.
    loop at itab_status.
    read table itab_edids with key idoc = itab_status-idoc binary search.
    if sy-subrc ne 0.
    delete itab_status.
    endif.
    endloop.
    LOOP AT ITAB_STATUS.
    SELECT SINGLE * FROM EDIDS INTO WA_EDIDS WHERE DOCNUM = ITAB_STATUS-IDOC
    AND COUNTR = ITAB_STATUS-STATUS_COUNTER.
    IF  WA_EDIDS-STATXT CA '&'.
    V_MSGNO = WA_EDIDS-STAMNO.
    IF V_MSGNO NE '000'. "----mod3
    CALL FUNCTION 'MESSAGE_PREPARE'
    EXPORTING
    msg_id = WA_EDIDS-STAMID
    msg_no = V_MSGNO
    MSG_VAR1 = WA_EDIDS-STAPA1
    MSG_VAR2 = WA_EDIDS-STAPA2
    MSG_VAR3 = WA_EDIDS-STAPA3
    MSG_VAR4 = WA_EDIDS-STAPA4
    IMPORTING
    MSG_TEXT = itab_status-descrp.
    CONDENSE ITAB_STATUS-DESCRP.
    endif. "-----mod3
    ELSE .
    ITAB_STATUS-DESCRP = WA_EDIDS-STATXT.
    ENDIF.
    SHIFT ITAB_STATUS-IDOC LEFT  DELETING LEADING '0'.
    SHIFT ITAB_STATUS-STATUS_COUNTER LEFT  DELETING LEADING '0'.
    MODIFY ITAB_STATUS.
    ENDLOOP.
    LOOP AT ITAB_EDIDS.
    SHIFT ITAB_EDIDS-IDOC LEFT  DELETING LEADING '0'.
    MODIFY ITAB_EDIDS.
    ENDLOOP.
    delete adjacent duplicates from  itab_edids comparing idoc.
    elseif p_al eq 'X'.
    delete adjacent duplicates from  itab_edids comparing idoc.
    LOOP AT ITAB_STATUS." WHERE MESS NE 'WMMBXY'.
    SELECT SINGLE * FROM EDIDS INTO WA_EDIDS WHERE DOCNUM = ITAB_STATUS-IDOC
    AND COUNTR = ITAB_STATUS-STATUS_COUNTER.
    IF  WA_EDIDS-STATXT CA '&'.
    V_MSGNO = WA_EDIDS-STAMNO.
    IF V_MSGNO NE '000'. "----mod3
    CALL FUNCTION 'MESSAGE_PREPARE'
    EXPORTING
    msg_id = WA_EDIDS-STAMID
    msg_no = V_MSGNO
    MSG_VAR1 = WA_EDIDS-STAPA1
    MSG_VAR2 = WA_EDIDS-STAPA2
    MSG_VAR3 = WA_EDIDS-STAPA3
    MSG_VAR4 = WA_EDIDS-STAPA4
    IMPORTING
    MSG_TEXT = itab_status-descrp.
    CONDENSE ITAB_STATUS-DESCRP.
    endif. "----mod3
    ELSE .
    ITAB_STATUS-DESCRP = WA_EDIDS-STATXT.
    ENDIF.
    *SHIFT ITAB_STATUS-IDOC LEFT  DELETING LEADING '0'.
    *SHIFT ITAB_STATUS-STATUS_COUNTER LEFT  DELETING LEADING '0'.
    MODIFY ITAB_STATUS.
    ENDLOOP.
    endif.
    LOOP AT ITAB_EDIDS.
      if p_su EQ 'X'.
      itab_edids-icon = '3'.
      elseif p_re eq 'X'.
       itab_edids-icon = '1'.
       ELSE.
       read table itab_sTATUS with  key idoc = itab_EDIDS-idoc
                                   STATUS  = '53' ."binary search.
       IF SY-SUBRC EQ 0.
        itab_edids-icon = '3'.
       ELSE.
       itab_edids-icon = '1'.
       ENDIF.
       ENDIF.
    select single name1 from lfa1 into itab_edids-name where
                lifnr = itab_edids-vendor.
    SHIFT ITAB_EDIDS-IDOC LEFT  DELETING LEADING '0'.
    MODIFY ITAB_EDIDS.
    clear itab_edids.
    ENDLOOP.
    loop at itab_status.
    SHIFT ITAB_STATUS-IDOC LEFT  DELETING LEADING '0'.
    SHIFT ITAB_STATUS-STATUS_COUNTER LEFT  DELETING LEADING '0'.
    if itab_status-descrp is initial.
    select single descrp from teds2 into itab_status-descrp
                               where status = itab_status-STATUS AND
                                    LANGUA = 'E'.
    endif.
    MODIFY ITAB_STATUS.
    clear itab_status.
    endloop.
    sort itab_status by idoc.
    sort itab_edids by idoc.
    ENDFORM.                    " DATA_BASED_SELECTION
    *& Form TOP_OF_PAGE
    text
    FORM TOP_OF_PAGE.
    SKIP.
    ULINE.
    IF P_SU EQ 'X'.
    WRITE : / 'TITLE : SUCCESSFULLY POSTED IDOC', 50 'DATE :', SY-DATUM..
    ELSEIF P_RE EQ 'X'.
    WRITE : / 'TITLE : REJECTED IDOCS'  ,50 'DATE :', SY-DATUM.
    ELSEIF P_AL EQ 'X'.
    WRITE : / 'TITLE : ALL IDOCS' ,50 'DATE :', SY-DATUM.
    ENDIF.
    WRITE  :/9 'Successful-Green light  Unsuccessful-Red Light'.
    format color COL_TOTAL intensified on.
    WRITE : / 'NOTE  : DOUBLE CLICK TO SEE CORREPONDING IDOC AND PO'.
    WRITE :/9 'DOUBLE CLICK IDOC NO ON HEADER LIST'.
    WRITE :  'AND PO NUMBER ON DETAIL LIST'.
    format color off.
    ULINE.
    SKIP.
    ENDFORM. "TOP_OF_PAGE
    FORM user_command *
    --> UCOMM *
    --> SELFIELD *
    FORM user_command USING ucomm LIKE sy-ucomm
    selfield TYPE slis_selfield.
    DATA: WA_IDOC9 LIKE EDIDC-DOCNUM.
    DATA: SELTAB     TYPE TABLE OF RSPARAMS,
          SELTAB_WA  LIKE LINE OF SELTAB.
    RANGES : R_DATE FOR EDIDC-CREDAT." SY-DATUM.
    IF ucomm = '&IC1'.
    if SELFIELD-SEL_TAB_FIELD = 'ITAB_EDIDS-IDOC'.
    READ TABLE itab_edids INDEX selfield-tabindex.
    IF sy-subrc = 0.
    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
    EXPORTING
    INPUT = ITAB_edids-IDOC
    IMPORTING
    OUTPUT = WA_IDOC9.
    *r_date-low = itab_edids-date.
    *r_date-high = itab_edids-date.
    *r_date-SIGN = 'I'.
    *r_date-OPTION = 'BT'.
    *append r_date.
    SUBMIT RSEIDOC2  WITH DOCNUM = wa_idoc9
    WITH CREDAT in R_DATE[]  AND RETURN.
    ENDIF.
    ELSEIF SELFIELD-SEL_TAB_FIELD = 'ITAB_STATUS-PONUMBER'.
    READ TABLE itab_STATUS INDEX selfield-tabindex.
    IF sy-subrc = 0.
    SET PARAMETER ID 'BES' FIELD itab_sTATUS-PONUMBER.
    CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.
    ENDIF.
    ENDIF.
    ENDIF.
    ENDFORM..
    Thanks
    Seshu

  • Inbound idoc number

    Hi,
    Is there any way to get the inbound idoc number which created the sales order in the system.
    I have the sales order no. form that i want know the inbound idoc number which created this sales order.
    I am looking for any FM or Tables.
    Thanks,
    Patil

    Hi..
    Table EDID4 stores the Data records of an IDOC.
    You can search for SDATA field to get the Sales doc no.
    Try this Sample code
    report ztest1.
    tablEs edid4.
    data : it_data type table of edid4 with header line.
    PARAMETERS : P_MATNR TYPE MARA-MATNR DEFAULT '100-100'.
    DATA : V_pattern type string.
    CONCATENATE '%' P_MATNR '%' INTO V_PATTERN.
    SELECT   * FROM EDID4 into  table it_data
      WHERE  
      segnam = 'E1EDK01'  "To check the Segment name
      and  SDATA LIKE V_PATTERN
    LOOP AT IT_DATA. 
      WRITE: IT_dATA-DOCNUM.
    ENDLOOP.
    <b>Reward if Helpful</b>

Maybe you are looking for

  • Mail wont let me open new message window

    Hello, So lately I have noticed a bug, I believe, in mail. At random times when I click on the new message icon nothing happens. However, if I close mail completely and reopen it, the new message window shows up. Any idea why this is happening? Thank

  • Program monitor activates automatically when sequenz starts to play

    Hey, This really slows down my personal workflow, whenever I hit spacebar the "program monitor" gets active, but I have my "projekct monitor" in the same spot and I want to browse my footage as the sequenz is playing  and since I have a second monito

  • Blackberry Enterprise Activation for Nokia devices

    Hello, My company's policy for the activation of BlackBerry devices is to go through wireless Enterprise Activation. This option does not seem to be available in the BlackBerry setup screens of the Nokia E70. 1. Does anyone know if Enterprise Activat

  • I can't figure this out for some reason.

    I want to use a template in DVD studio pro and have the button text fade in at a certain point and have it be highlitghed when it is selected. It seems like it should be a simple thing but I can't figure out how to do it. Thank You Vincent LeGrow

  • [SOLVED] fglrx(0): [drm] failed to remove DRM signal handler

    Hello! I'm new to Arch so please forgive me if I'm asking about something obvious. After spending many hours on reading and comprehension of Arch philosophy I finally dared to install Arch 2007.08-02 (Don't Panic) on my computer Fortunately I was pre