<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic interface code required........................IDOC in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/interface-code-required-idoc/m-p/2548026#M579780</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I need some sample code so as how to update data using IDOC for inbound interface.&lt;/P&gt;&lt;P&gt;Step by step procedure willl be very helpful starting from very basic...........................................AS I AM VERY NEW TO IT.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 20 Jul 2007 11:41:03 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-07-20T11:41:03Z</dc:date>
    <item>
      <title>interface code required........................IDOC</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/interface-code-required-idoc/m-p/2548026#M579780</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I need some sample code so as how to update data using IDOC for inbound interface.&lt;/P&gt;&lt;P&gt;Step by step procedure willl be very helpful starting from very basic...........................................AS I AM VERY NEW TO IT.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 20 Jul 2007 11:41:03 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/interface-code-required-idoc/m-p/2548026#M579780</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-20T11:41:03Z</dc:date>
    </item>
    <item>
      <title>Re: interface code required........................IDOC</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/interface-code-required-idoc/m-p/2548027#M579781</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;    &amp;#149; populates a BDC table with the IDoc info;&lt;/P&gt;&lt;P&gt;&amp;#149; calls the transaction via a BDC call; and&lt;/P&gt;&lt;P&gt;&amp;#149; updates the IDoc status according to the BDC error status.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;EXTRACT FROM: Z_IDOC_INPUT_ZINVRV&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--- Declaration of local variables&lt;/P&gt;&lt;P&gt;DATA: C_SEGNAM(10) TYPE C VALUE 'Z1INVRV'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-Loop through the IDOCs&lt;/P&gt;&lt;P&gt;LOOP AT IDOC_CONTRL.&lt;/P&gt;&lt;P&gt;*---Loop through the data for the IDOC&lt;/P&gt;&lt;P&gt;LOOP AT IDOC_DATA WHERE DOCNUM = IDOC_CONTRL-DOCNUM.&lt;/P&gt;&lt;P&gt;CASE IDOC_DATA-SEGNAM.&lt;/P&gt;&lt;P&gt;WHEN C_SEGNAM.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Here we get the info from the idoc table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;IT_Z1INVRV = IDOC_DATA-SDATA.&lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;PERFORM REV_INV.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;PERFORM UPDATE_IDOC_STATUS.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM REV_INV "Reverse invoice form&lt;/P&gt;&lt;P&gt;*--- Local variables &amp;amp; constants&lt;/P&gt;&lt;P&gt;DATA: C_TCODE LIKE BKPF-TCODE VALUE 'VF11'. "BDC transaction code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--- Now we can build the bdc table to call the reversal transaction start of screen 109&lt;/P&gt;&lt;P&gt;CLEAR BDC_TAB.&lt;/P&gt;&lt;P&gt;BDC_TAB-PROGRAM = 'SAPMV60A'.&lt;/P&gt;&lt;P&gt;BDC_TAB-DYNPRO = '109'.&lt;/P&gt;&lt;P&gt;BDC_TAB-DYNBEGIN = 'X'.&lt;/P&gt;&lt;P&gt;APPEND BDC_TAB.&lt;/P&gt;&lt;P&gt;*--- Document number&lt;/P&gt;&lt;P&gt;CLEAR BDC_TAB.&lt;/P&gt;&lt;P&gt;BDC_TAB-FNAM = 'KOMFK-VBELN(01)'.&lt;/P&gt;&lt;P&gt;BDC_TAB-FVAL = IT_Z1INVRV-XBLNR. "Billing document number&lt;/P&gt;&lt;P&gt;APPEND BDC_TAB.&lt;/P&gt;&lt;P&gt;*--- OK Code for screen 109&lt;/P&gt;&lt;P&gt;CLEAR BDC_TAB.&lt;/P&gt;&lt;P&gt;BDC_TAB-FNAM = 'BDC_OKCODE'.&lt;/P&gt;&lt;P&gt;BDC_TAB-FVAL = 'SICH'.&lt;/P&gt;&lt;P&gt;APPEND BDC_TAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--- Now we can call transaction 'VF11' with the populated bdc table. The transaction is called inside the idoc-contrl loop, so a transaction will be called for every idoc (journal). the transaction is called in no-display mode ('N') because this code runs in background as it is called by ale. The update is specified to be synchronous ('S') because we have to wait for the result to update the idoc status correctly.&lt;/P&gt;&lt;P&gt;CALL TRANSACTION C_TCODE USING BDC_TAB MODE 'N' UPDATE 'S'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--- Store the return code for use in another form (status update)&lt;/P&gt;&lt;P&gt;RETURN_CODE = SY-SUBRC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--- Here we check the return code, if there was an error, we put the transaction in a bdc session for the user to review and correct.&lt;/P&gt;&lt;P&gt;IF SY-SUBRC NE 0.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_OPEN_GROUP'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;CLIENT = SY-MANDT&lt;/P&gt;&lt;P&gt;GROUP = 'ZINVRV'&lt;/P&gt;&lt;P&gt;USER = C_ALE_USER&lt;/P&gt;&lt;P&gt;KEEP = 'X'.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;TCODE = C_TCODE&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;DYNPROTAB = BDC_TAB.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_CLOSE_GROUP'&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;NOT_OPEN = 1&lt;/P&gt;&lt;P&gt;QUEUE_ERROR = 2&lt;/P&gt;&lt;P&gt;OTHERS = 3.&lt;/P&gt;&lt;P&gt;ELSE. "No problems&lt;/P&gt;&lt;P&gt;C_EXISTS = 'N'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Select from the billing document table to get sales doc number&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECT * FROM VBRP WHERE VBELN = IT_Z1INVRV-XBLNR.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Select from the sales document table to get user status number&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECT SINGLE * FROM VBAP WHERE VBELN = VBRP-AUBEL AND&lt;/P&gt;&lt;P&gt;POSNR = VBRP-AUPOS.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Select from the status table to change the user status to pending&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECT * FROM JEST WHERE OBJNR = VBAP-OBJNR AND&lt;/P&gt;&lt;P&gt;STAT LIKE C_USER_STATUS.&lt;/P&gt;&lt;P&gt;IF JEST-STAT = C_US_PENDING. "User status is pending&lt;/P&gt;&lt;P&gt;JEST-INACT = C_UNCHECKED. "Make pending the active status&lt;/P&gt;&lt;P&gt;UPDATE JEST.&lt;/P&gt;&lt;P&gt;C_EXISTS = 'Y'. "I.E. An entry is already in table&lt;/P&gt;&lt;P&gt;ELSEIF JEST-INACT = C_UNCHECKED AND JEST-STAT NE C_US_PENDING.&lt;/P&gt;&lt;P&gt;JEST-INACT = C_CHECKED. "Make everything else inactive&lt;/P&gt;&lt;P&gt;UPDATE JEST.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDSELECT.&lt;/P&gt;&lt;P&gt;IF C_EXISTS = 'N'. "I.E. Pending has never been a status before&lt;/P&gt;&lt;P&gt;JEST-OBJNR = VBAP-OBJNR.&lt;/P&gt;&lt;P&gt;JEST-STAT = C_US_PENDING.&lt;/P&gt;&lt;P&gt;JEST-INACT = C_UNCHECKED. "Make pending the active status&lt;/P&gt;&lt;P&gt;INSERT JEST.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDSELECT. "Select from VBRP (Billing document table)&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM. " REV_INV&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM UPDATE_IDOC_STATUS. &lt;/P&gt;&lt;P&gt;*--- Now we check the CALL TRANSACTION return code and set IDOC status &lt;/P&gt;&lt;P&gt;CLEAR IDOC_STATUS. &lt;/P&gt;&lt;P&gt;IF RETURN_CODE = 0. &lt;/P&gt;&lt;P&gt;WORKFLOW_RESULT = '0'. &lt;/P&gt;&lt;P&gt;IDOC_STATUS-DOCNUM = IDOC_CONTRL-DOCNUM. &lt;/P&gt;&lt;P&gt;IDOC_STATUS-STATUS = '53'. &lt;/P&gt;&lt;P&gt;IDOC_STATUS-UNAME = SY-UNAME. &lt;/P&gt;&lt;P&gt;IDOC_STATUS-REPID = SY-REPID. &lt;/P&gt;&lt;P&gt;IDOC_STATUS-MSGTY = SY-MSGTY. &lt;/P&gt;&lt;P&gt;IDOC_STATUS-MSGID = SY-MSGID. &lt;/P&gt;&lt;P&gt;IDOC_STATUS-MSGNO = SY-MSGNO. &lt;/P&gt;&lt;P&gt;IDOC_STATUS-MSGV1 = SY-MSGV1. &lt;/P&gt;&lt;P&gt;IDOC_STATUS-MSGV2 = SY-MSGV2.&lt;/P&gt;&lt;P&gt;IDOC_STATUS-MSGV3 = SY-MSGV3. &lt;/P&gt;&lt;P&gt;IDOC_STATUS-MSGV4 = SY-MSGV4. &lt;/P&gt;&lt;P&gt;RETURN_VARIABLES-WF_PARAM = 'Processed_IDOCs'. &lt;/P&gt;&lt;P&gt;RETURN_VARIABLES-DOC_NUMBER = IDOC_CONTRL-DOCNUM. &lt;/P&gt;&lt;P&gt;APPEND RETURN_VARIABLES. &lt;/P&gt;&lt;P&gt;ELSE. &lt;/P&gt;&lt;P&gt;WORKFLOW_RESULT = '99999'. &lt;/P&gt;&lt;P&gt;IDOC_STATUS-DOCNUM = IDOC_CONTRL-DOCNUM. &lt;/P&gt;&lt;P&gt;IDOC_STATUS-STATUS = '51'. &lt;/P&gt;&lt;P&gt;IDOC_STATUS-UNAME = SY-UNAME. &lt;/P&gt;&lt;P&gt;IDOC_STATUS-REPID = SY-REPID. &lt;/P&gt;&lt;P&gt;IDOC_STATUS-MSGTY = SY-MSGTY. &lt;/P&gt;&lt;P&gt;IDOC_STATUS-MSGID = SY-MSGID. &lt;/P&gt;&lt;P&gt;IDOC_STATUS-MSGNO = SY-MSGNO. &lt;/P&gt;&lt;P&gt;IDOC_STATUS-MSGV1 = SY-MSGV1.&lt;/P&gt;&lt;P&gt;IDOC_STATUS-MSGV2 = SY-MSGV2. &lt;/P&gt;&lt;P&gt;IDOC_STATUS-MSGV3 = SY-MSGV3. &lt;/P&gt;&lt;P&gt;IDOC_STATUS-MSGV4 = SY-MSGV4. &lt;/P&gt;&lt;P&gt;RETURN_VARIABLES-WF_PARAM = 'ERROR_IDOCS'. &lt;/P&gt;&lt;P&gt;RETURN_VARIABLES-DOC_NUMBER = IDOC_CONTRL-DOCNUM. &lt;/P&gt;&lt;P&gt;APPEND RETURN_VARIABLES. &lt;/P&gt;&lt;P&gt;ENDIF. &lt;/P&gt;&lt;P&gt;APPEND IDOC_STATUS. &lt;/P&gt;&lt;P&gt;ENDFORM. " UPDATE_IDOC_STATUS &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 20 Jul 2007 11:47:33 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/interface-code-required-idoc/m-p/2548027#M579781</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-20T11:47:33Z</dc:date>
    </item>
    <item>
      <title>Re: interface code required........................IDOC</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/interface-code-required-idoc/m-p/2548028#M579782</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please check this link for sample codes on how to update IDoc segment.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.erpgenie.com/sapedi/idoc_abap.htm" target="test_blank"&gt;http://www.erpgenie.com/sapedi/idoc_abap.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Ferry Lianto&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please reward points if helpful.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 20 Jul 2007 13:46:49 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/interface-code-required-idoc/m-p/2548028#M579782</guid>
      <dc:creator>ferry_lianto</dc:creator>
      <dc:date>2007-07-20T13:46:49Z</dc:date>
    </item>
    <item>
      <title>Re: interface code required........................IDOC</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/interface-code-required-idoc/m-p/2548029#M579783</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Inbound IDOC Status Report for Sales Orders  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-------------------------------------------------------------------------------" /&gt;&lt;P&gt;Requirement: &lt;/P&gt;&lt;P&gt;Sales Orders are being created through inbound IDocs using FM 'EDI_DATA_INCOMING'. Now a Report is required to check the status of these Inbound IDocs along with Sales Orders generated against customer Purchase Orders. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-------------------------------------------------------------------------------" /&gt;&lt;P&gt;Processing: &lt;/P&gt;&lt;P&gt;The report selects, 'ORDERS' IDoc numbers &amp;amp; status, generated between given time range, from table EDIDC. Further, it calls Function Module 'IDOC_READ_COMPLETELY' to get the IDoc details. Then required information is extracted by reading relevant field data of IDoc segments. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  Z_EDI_FILE_LOAD_STATUS_REPORT           .&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Staus Report for Inbound IDOCs ( Sales Orders ) &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Program        : Z_EDI_FILE_LOAD_STATUS_REPORT&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Presented By   : &lt;A href="https://community.sap.com/www.rmtiwari.com" target="test_blank"&gt;www.rmtiwari.com&lt;/A&gt; &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;TABLES : EDIDC.&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ALV stuff&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TYPE-POOLS: SLIS.&lt;/P&gt;&lt;P&gt;DATA: GT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,&lt;/P&gt;&lt;P&gt;      GS_LAYOUT   TYPE SLIS_LAYOUT_ALV,&lt;/P&gt;&lt;P&gt;      GT_SORT     TYPE SLIS_T_SORTINFO_ALV,&lt;/P&gt;&lt;P&gt;      GT_LIST_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF T_REPORT OCCURS 0,&lt;/P&gt;&lt;P&gt;         IDOC_NO       TYPE EDI_DOCNUM,&lt;/P&gt;&lt;P&gt;         IDOC_DATE     TYPE SY-DATUM,&lt;/P&gt;&lt;P&gt;         IDOC_TIME     TYPE SY-UZEIT,&lt;/P&gt;&lt;P&gt;         SORDER_NO     TYPE VBELN,&lt;/P&gt;&lt;P&gt;         STP_NO        TYPE KNA1-KUNNR,&lt;/P&gt;&lt;P&gt;         STP_NAME(35)  TYPE C,&lt;/P&gt;&lt;P&gt;         STP_PHONE(12) TYPE C,&lt;/P&gt;&lt;P&gt;         PO_NO(15)     TYPE C,&lt;/P&gt;&lt;P&gt;         STATUS        TYPE C,&lt;/P&gt;&lt;P&gt;         S_TEXT(70)    TYPE C,&lt;/P&gt;&lt;P&gt;         ERROR(70)     TYPE C,&lt;/P&gt;&lt;P&gt;       END OF T_REPORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="-------------" /&gt;PARAMETER--&lt;HR originaltext="-------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;selection-screen begin of block date with frame title TEXT-S01.&lt;/P&gt;&lt;P&gt;select-options: UDATE for  EDIDC-UPDDAT&lt;/P&gt;&lt;P&gt;                      default SY-datum obligatory,    "Changed On&lt;/P&gt;&lt;P&gt;                UTIME for  EDIDC-UPDTIM .             "Changed Time&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;selection-screen end   of block date.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INITIALIZATION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;PERFORM SHOW_STATUS_REPORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  alv_grid&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;   p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt; --  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM ALV_GRID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF GT_FIELDCAT[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    PERFORM FIELDCAT_INIT.&lt;/P&gt;&lt;P&gt;    PERFORM LAYOUT_INIT.&lt;/P&gt;&lt;P&gt;    PERFORM SORT_INIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM GRID_DISPLAY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "alv_grid&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  layout_init&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;FORM LAYOUT_INIT.&lt;/P&gt;&lt;P&gt;  GS_LAYOUT-ZEBRA             = 'X'.&lt;/P&gt;&lt;P&gt;  GS_LAYOUT-CELL_MERGE        = 'X'.&lt;/P&gt;&lt;P&gt;  GS_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.&lt;/P&gt;&lt;P&gt;  GS_LAYOUT-NO_VLINE          = ' '.&lt;/P&gt;&lt;P&gt;  GS_LAYOUT-TOTALS_BEFORE_ITEMS = ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " layout_init&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fieldcat_init&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;FORM FIELDCAT_INIT.&lt;/P&gt;&lt;P&gt;  DATA: LS_FIELDCAT TYPE SLIS_FIELDCAT_ALV.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   CLEAR LS_FIELDCAT.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-FIELDNAME    = 'IDOC_NO'.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-KEY          = 'X'.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-REPTEXT_DDIC = 'IDOC'.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-OUTPUTLEN    = 10.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Fix for ALV print bug, which puts 'N/A' over last digit&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Set inttype to 'N' to stop corruption of printed ALV cell.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  LS_FIELDCAT-INTTYPE = 'N'.&lt;/P&gt;&lt;P&gt;  APPEND LS_FIELDCAT TO GT_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR LS_FIELDCAT.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-FIELDNAME    = 'IDOC_DATE'.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-REPTEXT_DDIC = 'Creation Date'.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-OUTPUTLEN    = 10.&lt;/P&gt;&lt;P&gt;  APPEND LS_FIELDCAT TO GT_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR LS_FIELDCAT.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-FIELDNAME    = 'IDOC_TIME'.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-REPTEXT_DDIC = 'Creation Time'.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-OUTPUTLEN    = 8.&lt;/P&gt;&lt;P&gt;  APPEND LS_FIELDCAT TO GT_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR LS_FIELDCAT.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-FIELDNAME    = 'STATUS'.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-REPTEXT_DDIC = 'St'.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-OUTPUTLEN    = 2.&lt;/P&gt;&lt;P&gt;  APPEND LS_FIELDCAT TO GT_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR LS_FIELDCAT.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-FIELDNAME    = 'ERROR'.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-REPTEXT_DDIC = 'Message'.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-OUTPUTLEN    = 70.&lt;/P&gt;&lt;P&gt;  APPEND LS_FIELDCAT TO GT_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR LS_FIELDCAT.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-FIELDNAME    = 'STP_NO'.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-REPTEXT_DDIC = 'S.T.Party No'.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-OUTPUTLEN    = 10.&lt;/P&gt;&lt;P&gt;  APPEND LS_FIELDCAT TO GT_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR LS_FIELDCAT.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-FIELDNAME    = 'STP_NAME'.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-REPTEXT_DDIC = 'Sold to Party Name'.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-OUTPUTLEN    = 35.&lt;/P&gt;&lt;P&gt;  APPEND LS_FIELDCAT TO GT_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR LS_FIELDCAT.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-FIELDNAME    = 'PO_NO'.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-REPTEXT_DDIC = 'Purch Order'.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-OUTPUTLEN    = 15.&lt;/P&gt;&lt;P&gt;  APPEND LS_FIELDCAT TO GT_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR LS_FIELDCAT.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-FIELDNAME    = 'STP_PHONE'.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-REPTEXT_DDIC = 'S.T.Party Phone'.&lt;/P&gt;&lt;P&gt;  LS_FIELDCAT-OUTPUTLEN    = 15.&lt;/P&gt;&lt;P&gt;  APPEND LS_FIELDCAT TO GT_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "fieldcat_init&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  sort_init&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;FORM SORT_INIT.&lt;/P&gt;&lt;P&gt;  DATA: LS_SORT TYPE SLIS_SORTINFO_ALV.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  CLEAR LS_SORT.&lt;/P&gt;&lt;P&gt;  LS_SORT-FIELDNAME = 'IDOC_DATE'.&lt;/P&gt;&lt;P&gt;  LS_SORT-SPOS      = 1.&lt;/P&gt;&lt;P&gt;  LS_SORT-UP        = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND LS_SORT TO GT_SORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR LS_SORT.&lt;/P&gt;&lt;P&gt;  LS_SORT-FIELDNAME = 'IDOC_TIME'.&lt;/P&gt;&lt;P&gt;  LS_SORT-SPOS      = 2.&lt;/P&gt;&lt;P&gt;  LS_SORT-UP        = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND LS_SORT TO GT_SORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR LS_SORT.&lt;/P&gt;&lt;P&gt;  LS_SORT-FIELDNAME = 'STATUS'.&lt;/P&gt;&lt;P&gt;  LS_SORT-SPOS      = 3.&lt;/P&gt;&lt;P&gt;  LS_SORT-UP        = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND LS_SORT TO GT_SORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR LS_SORT.&lt;/P&gt;&lt;P&gt;  LS_SORT-FIELDNAME = 'IDOC_NO'.&lt;/P&gt;&lt;P&gt;  LS_SORT-SPOS      = 4.&lt;/P&gt;&lt;P&gt;  LS_SORT-UP        = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND LS_SORT TO GT_SORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "sort_init&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  grid_display&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;FORM GRID_DISPLAY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      IS_LAYOUT     = GS_LAYOUT&lt;/P&gt;&lt;P&gt;      IT_FIELDCAT   = GT_FIELDCAT&lt;/P&gt;&lt;P&gt;      IT_SORT       = GT_SORT&lt;/P&gt;&lt;P&gt;      i_callback_program      = SY-REPID&lt;/P&gt;&lt;P&gt;      I_CALLBACK_TOP_OF_PAGE = 'TOP_OF_PAGE'&lt;/P&gt;&lt;P&gt;      I_DEFAULT     = ' '&lt;/P&gt;&lt;P&gt;      I_SAVE        = 'X'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      T_OUTTAB      = T_REPORT&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      PROGRAM_ERROR = 1&lt;/P&gt;&lt;P&gt;      OTHERS        = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "grid_display&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  COMMENT_BUILD&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Processing of listheader&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM COMMENT_BUILD USING P_FK_LIST_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: LS_LINE TYPE SLIS_LISTHEADER.&lt;/P&gt;&lt;P&gt;  REFRESH P_FK_LIST_TOP_OF_PAGE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;List Heading : Typ H&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR LS_LINE.&lt;/P&gt;&lt;P&gt;  LS_LINE-TYP  = 'H'.&lt;/P&gt;&lt;P&gt;  LS_LINE-INFO  = 'Sales Order Interface: Z_EDI_FILE_LOAD'.&lt;/P&gt;&lt;P&gt;  APPEND LS_LINE TO P_FK_LIST_TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;List : Typ S&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  clear LS_LINE.&lt;/P&gt;&lt;P&gt;  LS_LINE-typ  = 'S'.&lt;/P&gt;&lt;P&gt;  LS_LINE-key  = 'Date Range:'.&lt;/P&gt;&lt;P&gt;  LS_LINE-info  = UDATE-low.&lt;/P&gt;&lt;P&gt;  if not UDATE-high is initial.&lt;/P&gt;&lt;P&gt;    write ' To ' to  LS_LINE-info+30.&lt;/P&gt;&lt;P&gt;    LS_LINE-info+36 = UDATE-high.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND LS_LINE TO P_FK_LIST_TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " COMMENT_BUILD&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      FORM TOP_OF_PAGE                                              *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Ereigniss TOP_OF_PAGE                                       *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      event     TOP_OF_PAGE&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM COMMENT_BUILD  USING gt_LIST_TOP_OF_PAGE[].&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      IT_LIST_COMMENTARY = GT_LIST_TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "TOP_OF_PAGE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  show_status_report&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;FORM SHOW_STATUS_REPORT .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Report to show status.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: BEGIN OF T_TEDS2 OCCURS 0.&lt;/P&gt;&lt;P&gt;          INCLUDE STRUCTURE TEDS2.&lt;/P&gt;&lt;P&gt;  DATA: END OF T_TEDS2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: BEGIN OF T_IDOC_CONTROL_TMP OCCURS 0.&lt;/P&gt;&lt;P&gt;          INCLUDE STRUCTURE EDIDC.&lt;/P&gt;&lt;P&gt;  DATA: END OF T_IDOC_CONTROL_TMP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CONSTANTS: C_STATUS_IN_IDOC_POSTED       LIKE EDIDC-STATUS VALUE '53'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : T_EDIDS TYPE STANDARD TABLE OF EDIDS WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;  DATA : T_EDIDD TYPE STANDARD TABLE OF EDIDD WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : GV_PARTNER_SEG TYPE E1EDKA1,&lt;/P&gt;&lt;P&gt;         GV_PO_REF_SEG  TYPE E2EDK02.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get text for status values&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT * FROM TEDS2 INTO TABLE T_TEDS2 WHERE LANGUA = SY-LANGU.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Read the IDoc's status after processing&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT * FROM EDIDC&lt;/P&gt;&lt;P&gt;    INTO TABLE T_IDOC_CONTROL_TMP&lt;/P&gt;&lt;P&gt;   WHERE UPDDAT IN UDATE&lt;/P&gt;&lt;P&gt;     AND UPDTIM IN UTIME&lt;/P&gt;&lt;P&gt;     AND MESTYP = 'ORDERS'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT T_IDOC_CONTROL_TMP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IDoc has been processed, since control record changed.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    READ TABLE T_TEDS2 WITH KEY STATUS = T_IDOC_CONTROL_TMP-STATUS.&lt;/P&gt;&lt;P&gt;    T_REPORT-IDOC_NO = T_IDOC_CONTROL_TMP-DOCNUM.&lt;/P&gt;&lt;P&gt;    T_REPORT-IDOC_DATE = T_IDOC_CONTROL_TMP-CREDAT.&lt;/P&gt;&lt;P&gt;    T_REPORT-IDOC_TIME = T_IDOC_CONTROL_TMP-CRETIM.&lt;/P&gt;&lt;P&gt;    T_REPORT-S_TEXT = T_TEDS2-DESCRP.&lt;/P&gt;&lt;P&gt;    IF T_IDOC_CONTROL_TMP-STATUS = C_STATUS_IN_IDOC_POSTED.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    ok status&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      T_REPORT-STATUS = 'S'.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    error status&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      T_REPORT-STATUS = 'E'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Get IDoc details.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'IDOC_READ_COMPLETELY'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        DOCUMENT_NUMBER         = T_REPORT-IDOC_NO&lt;/P&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;        INT_EDIDS               = T_EDIDS&lt;/P&gt;&lt;P&gt;        INT_EDIDD               = T_EDIDD&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        DOCUMENT_NOT_EXIST      = 1&lt;/P&gt;&lt;P&gt;        DOCUMENT_NUMBER_INVALID = 2&lt;/P&gt;&lt;P&gt;        OTHERS                  = 3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Get Error status&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    READ TABLE T_EDIDS WITH KEY STATUS = T_IDOC_CONTROL_TMP-STATUS.&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;      REPLACE FIRST OCCURRENCE OF '&amp;amp;1' IN T_EDIDS-STATXT&lt;/P&gt;&lt;P&gt;                            WITH T_EDIDS-STAPA1.&lt;/P&gt;&lt;P&gt;      REPLACE FIRST OCCURRENCE OF '&amp;amp;2' IN T_EDIDS-STATXT&lt;/P&gt;&lt;P&gt;                            WITH T_EDIDS-STAPA2.&lt;/P&gt;&lt;P&gt;      REPLACE FIRST OCCURRENCE OF '&amp;amp;3' IN T_EDIDS-STATXT&lt;/P&gt;&lt;P&gt;                            WITH T_EDIDS-STAPA3.&lt;/P&gt;&lt;P&gt;      REPLACE FIRST OCCURRENCE OF '&amp;amp;4' IN T_EDIDS-STATXT&lt;/P&gt;&lt;P&gt;                            WITH T_EDIDS-STAPA4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      REPLACE FIRST OCCURRENCE OF '&amp;amp;' IN T_EDIDS-STATXT&lt;/P&gt;&lt;P&gt;                            WITH T_EDIDS-STAPA1.&lt;/P&gt;&lt;P&gt;      REPLACE FIRST OCCURRENCE OF '&amp;amp;' IN T_EDIDS-STATXT&lt;/P&gt;&lt;P&gt;                            WITH T_EDIDS-STAPA2.&lt;/P&gt;&lt;P&gt;      REPLACE FIRST OCCURRENCE OF '&amp;amp;' IN T_EDIDS-STATXT&lt;/P&gt;&lt;P&gt;                            WITH T_EDIDS-STAPA3.&lt;/P&gt;&lt;P&gt;      REPLACE FIRST OCCURRENCE OF '&amp;amp;' IN T_EDIDS-STATXT&lt;/P&gt;&lt;P&gt;                            WITH T_EDIDS-STAPA4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      T_REPORT-ERROR = T_EDIDS-STATXT.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    LOOP AT T_EDIDD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CASE T_EDIDD-SEGNAM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WHEN 'E1EDKA1'.&lt;/P&gt;&lt;P&gt;          GV_PARTNER_SEG = T_EDIDD-SDATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          CLEAR : T_REPORT-STP_NAME.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;            EXPORTING&lt;/P&gt;&lt;P&gt;              INPUT  = GV_PARTNER_SEG-PARTN&lt;/P&gt;&lt;P&gt;            IMPORTING&lt;/P&gt;&lt;P&gt;              OUTPUT = T_REPORT-STP_NO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          SELECT SINGLE NAME1 TELF1&lt;/P&gt;&lt;P&gt;            INTO (T_REPORT-STP_NAME,T_REPORT-STP_PHONE)&lt;/P&gt;&lt;P&gt;            FROM KNA1&lt;/P&gt;&lt;P&gt;           WHERE KUNNR = T_REPORT-STP_NO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WHEN 'E1EDK02'.&lt;/P&gt;&lt;P&gt;          GV_PO_REF_SEG = T_EDIDD-SDATA.&lt;/P&gt;&lt;P&gt;          T_REPORT-PO_NO = GV_PO_REF_SEG-BELNR.&lt;/P&gt;&lt;P&gt;      ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    APPEND T_REPORT.&lt;/P&gt;&lt;P&gt;  ENDLOOP .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT T_REPORT BY STATUS IDOC_NO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Show Report&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM ALV_GRID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " show_status_report&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Pls reward all helpful points.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Ameet&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 20 Jul 2007 14:00:01 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/interface-code-required-idoc/m-p/2548029#M579783</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-20T14:00:01Z</dc:date>
    </item>
  </channel>
</rss>

