<?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 Re: Report in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/report/m-p/3653730#M880091</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Below is the classcal report.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  z_sd_rep5_assign2&lt;/P&gt;&lt;P&gt;             NO STANDARD PAGE HEADING&lt;/P&gt;&lt;P&gt;             LINE-SIZE 158&lt;/P&gt;&lt;P&gt;             LINE-COUNT 31(2)&lt;/P&gt;&lt;P&gt;             MESSAGE-ID ysd.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INCLUDE &amp;lt;list&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;*G L O B A L   D A T A   D E C L E R A T I O N                *&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;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;*T Y P E S                                                    *&lt;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF t_vbak,&lt;/P&gt;&lt;P&gt;        vbeln   TYPE vbeln_va,  "Sales Document&lt;/P&gt;&lt;P&gt;        erdat   TYPE erdat,     "Date on which the record was created&lt;/P&gt;&lt;P&gt;        erzet   TYPE erzet,     "Entry time&lt;/P&gt;&lt;P&gt;        ernam   TYPE ernam,     "Name of Person who Created the Object&lt;/P&gt;&lt;P&gt;        audat   TYPE audat,     "Document date (date received/sent)&lt;/P&gt;&lt;P&gt;        vbtyp   TYPE vbtyp,     "SD document category&lt;/P&gt;&lt;P&gt;       END OF t_vbak,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       BEGIN OF t_vbap,&lt;/P&gt;&lt;P&gt;         vbeln  TYPE vbeln_va,  "Sales Document&lt;/P&gt;&lt;P&gt;         posnr  TYPE posnr_va,  "Sales Document Item&lt;/P&gt;&lt;P&gt;         matnr  TYPE matnr,     "Material Number&lt;/P&gt;&lt;P&gt;         matkl  TYPE matkl,     "Material Group&lt;/P&gt;&lt;P&gt;         netwr  TYPE netwr_ap,  "Net value of the order item in document currency&lt;/P&gt;&lt;P&gt;         prodh  TYPE prodh_d,   "Product hierarchy&lt;/P&gt;&lt;P&gt;         aufnr  TYPE aufnr,     "Order Number&lt;/P&gt;&lt;P&gt;       END OF t_vbap,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      BEGIN OF t_vbep ,&lt;/P&gt;&lt;P&gt;        vbeln  TYPE vbeln_va,  "Sales Document&lt;/P&gt;&lt;P&gt;        posnr  TYPE posnr_va,  "Sales Document Item&lt;/P&gt;&lt;P&gt;        etenr  TYPE etenr,     "Delivery Schedule Line Counter&lt;/P&gt;&lt;P&gt;        wmeng  TYPE wmeng,     "Order quantity in sales units&lt;/P&gt;&lt;P&gt;        bmeng  TYPE bmeng,     "Confirmed quantity&lt;/P&gt;&lt;P&gt;        edatu  TYPE edatu,     "Schedule line date&lt;/P&gt;&lt;P&gt;       END OF t_vbep,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       BEGIN OF t_final,&lt;/P&gt;&lt;P&gt;         vbeln  TYPE vbeln_va,  "Sales Document&lt;/P&gt;&lt;P&gt;         erdat  TYPE erdat,     "Date on which the record was created&lt;/P&gt;&lt;P&gt;         erzet  TYPE erzet,     "Entry time&lt;/P&gt;&lt;P&gt;         ernam  TYPE ernam,     "Name of Person who Created the Object&lt;/P&gt;&lt;P&gt;         audat  TYPE audat,     "Document date (date received/sent)&lt;/P&gt;&lt;P&gt;         vbtyp  TYPE vbtyp,     "SD document category&lt;/P&gt;&lt;P&gt;         posnr  TYPE posnr_va,  "Sales Document Item&lt;/P&gt;&lt;P&gt;         matnr  TYPE matnr,     "Material Number&lt;/P&gt;&lt;P&gt;         matkl  TYPE matkl,     "Material Group&lt;/P&gt;&lt;P&gt;         netwr  TYPE netwr_ap,  "Net value of the order item in document currency&lt;/P&gt;&lt;P&gt;         prodh  TYPE prodh_d,   "Product hierarchy&lt;/P&gt;&lt;P&gt;         aufnr  TYPE aufnr,     "Order Number&lt;/P&gt;&lt;P&gt;       END OF t_final,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       BEGIN OF t_makt,&lt;/P&gt;&lt;P&gt;         matnr TYPE matnr,&lt;/P&gt;&lt;P&gt;         maktx TYPE maktx,&lt;/P&gt;&lt;P&gt;      END OF t_makt,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      BEGIN OF t_mara1,&lt;/P&gt;&lt;P&gt;         matnr TYPE matnr,      "Material Number&lt;/P&gt;&lt;P&gt;         ersda TYPE ersda,      "Creation date&lt;/P&gt;&lt;P&gt;         ernam TYPE ernam,      "Name of Person who Created the Object&lt;/P&gt;&lt;P&gt;         mtart TYPE mtart,      "Material type&lt;/P&gt;&lt;P&gt;         mbrsh TYPE mbrsh,      "Material type&lt;/P&gt;&lt;P&gt;         matkl TYPE matkl,      "Material group&lt;/P&gt;&lt;P&gt;         meins TYPE meins,      "Base Unit of Measure&lt;/P&gt;&lt;P&gt;         brgew TYPE brgew,      "Gross weight&lt;/P&gt;&lt;P&gt;         volum TYPE volum,      "Volume&lt;/P&gt;&lt;P&gt;         kunnr TYPE wettb,      "Competitor&lt;/P&gt;&lt;P&gt;      END OF t_mara1,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       BEGIN OF t_mara,&lt;/P&gt;&lt;P&gt;         matnr TYPE matnr,      "Material Number&lt;/P&gt;&lt;P&gt;         maktx TYPE maktx,      "Material Descriptiopn&lt;/P&gt;&lt;P&gt;         ersda TYPE ersda,      "Creation date&lt;/P&gt;&lt;P&gt;         ernam TYPE ernam,      "Name of Person who Created the Object&lt;/P&gt;&lt;P&gt;         mtart TYPE mtart,      "Material type&lt;/P&gt;&lt;P&gt;         mbrsh TYPE mbrsh,      "Material type&lt;/P&gt;&lt;P&gt;         matkl TYPE matkl,      "Material group&lt;/P&gt;&lt;P&gt;         meins TYPE meins,      "Base Unit of Measure&lt;/P&gt;&lt;P&gt;         brgew TYPE brgew,      "Gross weight&lt;/P&gt;&lt;P&gt;         volum TYPE volum,      "Volume&lt;/P&gt;&lt;P&gt;         kunnr TYPE wettb,      "Competitor&lt;/P&gt;&lt;P&gt;      END OF t_mara.&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;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;*T A B L E S  T Y P E S                                       *&lt;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES: vbak, mara, makt.&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;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;*INTERNAL TABLES, WORK AREAS &amp;amp; VARIABLES                      *&lt;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   Internal Tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     i_vbak   TYPE STANDARD TABLE OF t_vbak,&lt;/P&gt;&lt;P&gt;     i_vbap   TYPE STANDARD TABLE OF t_vbap,&lt;/P&gt;&lt;P&gt;     i_vbep   TYPE STANDARD TABLE OF t_vbep,&lt;/P&gt;&lt;P&gt;     i_final  TYPE STANDARD TABLE OF t_final,&lt;/P&gt;&lt;P&gt;     i_final2 TYPE STANDARD TABLE OF t_final,&lt;/P&gt;&lt;P&gt;     i_mara   TYPE STANDARD TABLE OF t_mara,&lt;/P&gt;&lt;P&gt;     i_mara1   TYPE STANDARD TABLE OF t_mara1,&lt;/P&gt;&lt;P&gt;     i_makt   TYPE STANDARD TABLE OF t_makt,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   Work areas&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     wa_vbak  TYPE t_vbak,&lt;/P&gt;&lt;P&gt;     wa_vbap  TYPE t_vbap,&lt;/P&gt;&lt;P&gt;     wa_vbep  TYPE t_vbep,&lt;/P&gt;&lt;P&gt;     wa_final TYPE t_final,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     wa_mara1 TYPE t_mara1,&lt;/P&gt;&lt;P&gt;     wa_makt TYPE t_makt,&lt;/P&gt;&lt;P&gt;     wa_mara TYPE t_mara,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   Variables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     v_vbeln LIKE vbak-vbeln,        "Sales document&lt;/P&gt;&lt;P&gt;     v_matnr LIKE mara-matnr,        "Material&lt;/P&gt;&lt;P&gt;     v_kunnr LIKE mara-kunnr,        "Competitor&lt;/P&gt;&lt;P&gt;     v_chk   TYPE c,                 "For checkbox&lt;/P&gt;&lt;P&gt;     fname(30) TYPE c.&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;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;*S E L E C T I O N - S C R E E N   D E F I N I T I O N        *&lt;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;INITIALIZATION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECTION-SCREEN: BEGIN OF BLOCK blk1 WITH FRAME TITLE text-004.&lt;/P&gt;&lt;P&gt;  SELECT-OPTIONS: so_vbeln FOR v_vbeln MODIF ID md1,&lt;/P&gt;&lt;P&gt;                  so_matnr FOR v_matnr MODIF ID md2.&lt;/P&gt;&lt;P&gt;  SELECTION-SCREEN: END OF BLOCK blk1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECTION-SCREEN: BEGIN OF BLOCK blk2 WITH FRAME TITLE text-005.&lt;/P&gt;&lt;P&gt;  PARAMETERS: p_vbeln RADIOBUTTON GROUP rd1&lt;/P&gt;&lt;P&gt;                      DEFAULT 'X'&lt;/P&gt;&lt;P&gt;                      USER-COMMAND ucom,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;              p_matnr RADIOBUTTON GROUP rd1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECTION-SCREEN: END OF BLOCK blk2.&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;/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;           M A I N     P R O G R A M                        *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&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;P&gt;AT SELECTION-SCREEN.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Validating the user inputs&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM validate_sales_order.&lt;/P&gt;&lt;P&gt;  PERFORM validate_material.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN OUTPUT.&lt;/P&gt;&lt;P&gt;  PERFORM change_display_behaviour.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TOP-OF-PAGE.&lt;/P&gt;&lt;P&gt;  PERFORM display_header.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;  SET PF-STATUS 'ZGUI'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Processing step by step in order to implement logic&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;* IF ELSE COND.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF p_vbeln = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM get_vbak_data.&lt;/P&gt;&lt;P&gt;    PERFORM get_vbap_data.&lt;/P&gt;&lt;P&gt;    PERFORM populate_final_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSEIF p_matnr = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM get_vbap_data_3.&lt;/P&gt;&lt;P&gt;    PERFORM get_vbak_data_3.&lt;/P&gt;&lt;P&gt;    PERFORM populate_final_data.&lt;/P&gt;&lt;P&gt;    SORT i_final BY matnr.&lt;/P&gt;&lt;P&gt;&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;&lt;/P&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_vbeln = 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM display_report.&lt;/P&gt;&lt;P&gt;  ELSEIF p_matnr = 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM display_report_3.&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;&lt;/P&gt;&lt;P&gt;END-OF-PAGE.&lt;/P&gt;&lt;P&gt;  PERFORM display_footer.&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;   Event for user-command for both at line-selection and at user-command&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT USER-COMMAND.&lt;/P&gt;&lt;P&gt;  CLEAR: v_chk,&lt;/P&gt;&lt;P&gt;         wa_final.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_vbeln = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CASE sy-ucomm.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN 'DIS'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        DO.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            In order to get the selected records&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          READ LINE sy-index FIELD VALUE v_chk&lt;/P&gt;&lt;P&gt;                                       wa_final-vbeln&lt;/P&gt;&lt;P&gt;                                       wa_final-posnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;            EXIT.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;          IF NOT v_chk IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            READ TABLE i_final INTO wa_final WITH KEY&lt;/P&gt;&lt;P&gt;                                             vbeln = wa_final-vbeln&lt;/P&gt;&lt;P&gt;                                             posnr = wa_final-posnr&lt;/P&gt;&lt;P&gt;                                             BINARY SEARCH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            APPEND wa_final TO i_final2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        Disabling the recheckbox so that next time user cannot select&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            MODIFY LINE sy-index FIELD VALUE v_chk&lt;/P&gt;&lt;P&gt;                                 FROM space&lt;/P&gt;&lt;P&gt;                                 FIELD FORMAT v_chk INPUT OFF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;          CLEAR: wa_final.&lt;/P&gt;&lt;P&gt;        ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF NOT i_final2 IS INITIAL.&lt;/P&gt;&lt;P&gt;          SORT i_final2 BY vbeln posnr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          Fetching Schedule line data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          PERFORM get_schedule_data.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          Displaying Schedule line data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          PERFORM display_schedule_data.&lt;/P&gt;&lt;P&gt;          REFRESH: i_final2,&lt;/P&gt;&lt;P&gt;                   i_vbep.&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;&lt;/P&gt;&lt;P&gt;      WHEN 'BACK' OR 'CANC' OR 'EXIT'.&lt;/P&gt;&lt;P&gt;        LEAVE LIST-PROCESSING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSEIF p_matnr = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CASE sy-ucomm.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN 'DISPLAY'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        DO.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF NOT i_final2 IS INITIAL.&lt;/P&gt;&lt;P&gt;          SORT i_final2 BY vbeln posnr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          Fetching Schedule line data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          PERFORM get_schedule_data.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          Displaying Schedule line data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          PERFORM display_schedule_data.&lt;/P&gt;&lt;P&gt;          REFRESH: i_final2,&lt;/P&gt;&lt;P&gt;                   i_vbep.&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;&lt;/P&gt;&lt;P&gt;      WHEN 'BACK' OR 'CANC' OR 'EXIT'.&lt;/P&gt;&lt;P&gt;        LEAVE LIST-PROCESSING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;&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;  CASE sy-lsind .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      GET CURSOR FIELD  fname VALUE v_matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF  fname = 'WA_FINAL-MATNR'.&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  = v_matnr&lt;/P&gt;&lt;P&gt;          IMPORTING&lt;/P&gt;&lt;P&gt;            output = v_matnr.&lt;/P&gt;&lt;P&gt;        PERFORM get_material_details USING v_matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        PERFORM display_mara.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      GET CURSOR FIELD  fname VALUE v_kunnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF fname = 'KUNNR'.&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  = v_kunnr&lt;/P&gt;&lt;P&gt;          IMPORTING&lt;/P&gt;&lt;P&gt;            output = v_kunnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        SET PARAMETER ID 'KUN' FIELD v_kunnr.&lt;/P&gt;&lt;P&gt;        CALL TRANSACTION 'XD03' AND&lt;/P&gt;&lt;P&gt;        SKIP FIRST SCREEN.&lt;/P&gt;&lt;P&gt;&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;  ENDCASE.&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;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           S U B   R O U T I N E S                          *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&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;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  change_display_behaviour&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;      Change the display behviour of screen elements&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 change_display_behaviour .&lt;/P&gt;&lt;P&gt;  LOOP AT SCREEN.&lt;/P&gt;&lt;P&gt;    IF p_vbeln = 'X'.&lt;/P&gt;&lt;P&gt;      IF screen-group1 = 'MD1'.&lt;/P&gt;&lt;P&gt;        screen-input = 1.&lt;/P&gt;&lt;P&gt;        MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;      ELSEIF screen-group1 = 'MD2'.&lt;/P&gt;&lt;P&gt;        screen-input = 0.&lt;/P&gt;&lt;P&gt;        MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ELSEIF p_matnr = 'X'.&lt;/P&gt;&lt;P&gt;      IF screen-group1 = 'MD1'.&lt;/P&gt;&lt;P&gt;        screen-input = 0.&lt;/P&gt;&lt;P&gt;        MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;      ELSEIF screen-group1 = 'MD2'.&lt;/P&gt;&lt;P&gt;        screen-input = 1.&lt;/P&gt;&lt;P&gt;        MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " change_display_behaviour&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  validate_sales_order&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;      For validating sales document no&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 validate_sales_order .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local declearations&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA: lv_vbeln TYPE vbeln_va.  "Sales Document&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT vbeln&lt;/P&gt;&lt;P&gt;    INTO (lv_vbeln)&lt;/P&gt;&lt;P&gt;    UP TO 1 ROWS&lt;/P&gt;&lt;P&gt;    FROM vbak&lt;/P&gt;&lt;P&gt;    WHERE vbeln IN so_vbeln.&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE e000 with so_vbeln-LOW so_vbeln-HIGH .  "Invalid Sales Order&lt;/P&gt;&lt;P&gt;                                                    " Passing arguments to message.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " validate_sales_order&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  validate_material&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;      For validating sales document no&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 validate_material .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local declearations&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA: lv_matnr TYPE vbeln_va.  "Material&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT matnr&lt;/P&gt;&lt;P&gt;    INTO (lv_matnr)&lt;/P&gt;&lt;P&gt;    UP TO 1 ROWS&lt;/P&gt;&lt;P&gt;    FROM mara&lt;/P&gt;&lt;P&gt;    WHERE matnr IN so_matnr.&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE e001.  "Invalid Material&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " validate_material&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  get_vbak_data&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;      Foor fetching the vbak data&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 get_vbak_data .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT vbeln&lt;/P&gt;&lt;P&gt;         erdat&lt;/P&gt;&lt;P&gt;         erzet&lt;/P&gt;&lt;P&gt;         ernam&lt;/P&gt;&lt;P&gt;         audat&lt;/P&gt;&lt;P&gt;         vbtyp&lt;/P&gt;&lt;P&gt;    INTO TABLE i_vbak&lt;/P&gt;&lt;P&gt;    FROM vbak&lt;/P&gt;&lt;P&gt;    WHERE vbeln IN so_vbeln.&lt;/P&gt;&lt;P&gt;  IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;    SORT i_vbak BY vbeln.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    MESSAGE i002. "No Data Exists for the selection&lt;/P&gt;&lt;P&gt;    LEAVE LIST-PROCESSING.&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;ENDFORM.                    " get_vbak_data&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  get_vbap_data&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;      For fetching the vbap data&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 get_vbap_data .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT i_vbak[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    SELECT vbeln&lt;/P&gt;&lt;P&gt;           posnr&lt;/P&gt;&lt;P&gt;           matnr&lt;/P&gt;&lt;P&gt;           matkl&lt;/P&gt;&lt;P&gt;           netwr&lt;/P&gt;&lt;P&gt;           prodh&lt;/P&gt;&lt;P&gt;           aufnr&lt;/P&gt;&lt;P&gt;       INTO TABLE i_vbap&lt;/P&gt;&lt;P&gt;       FROM vbap&lt;/P&gt;&lt;P&gt;       FOR ALL ENTRIES IN i_vbak&lt;/P&gt;&lt;P&gt;       WHERE vbeln EQ i_vbak-vbeln.&lt;/P&gt;&lt;P&gt;    IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;      SORT i_vbap BY vbeln posnr.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      MESSAGE i002. "No Data Exists for the selection&lt;/P&gt;&lt;P&gt;      LEAVE LIST-PROCESSING.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_vbap_data&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  populate_final_data&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;      For populating final data&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 populate_final_data .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA: lv_index TYPE sytabix.  "To preserve the index pos&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Implementing the parallel cursor technique&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  LOOP AT i_vbak INTO wa_vbak.&lt;/P&gt;&lt;P&gt;    LOOP AT i_vbap INTO wa_vbap FROM lv_index.&lt;/P&gt;&lt;P&gt;      IF wa_vbak-vbeln &amp;lt;&amp;gt; wa_vbap-vbeln.&lt;/P&gt;&lt;P&gt;        lv_index = sy-tabix.&lt;/P&gt;&lt;P&gt;        EXIT.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Assignment from vbak &amp;amp; vbap work area to final&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      wa_final-vbeln = wa_vbak-vbeln.&lt;/P&gt;&lt;P&gt;      wa_final-erdat = wa_vbak-erdat.&lt;/P&gt;&lt;P&gt;      wa_final-erzet = wa_vbak-erzet.&lt;/P&gt;&lt;P&gt;      wa_final-ernam = wa_vbak-ernam.&lt;/P&gt;&lt;P&gt;      wa_final-audat = wa_vbak-audat.&lt;/P&gt;&lt;P&gt;      wa_final-vbtyp = wa_vbak-vbtyp.&lt;/P&gt;&lt;P&gt;      wa_final-posnr = wa_vbap-posnr.&lt;/P&gt;&lt;P&gt;      wa_final-matnr = wa_vbap-matnr.&lt;/P&gt;&lt;P&gt;      wa_final-matkl = wa_vbap-matkl.&lt;/P&gt;&lt;P&gt;      wa_final-netwr = wa_vbap-netwr.&lt;/P&gt;&lt;P&gt;      wa_final-prodh = wa_vbap-prodh.&lt;/P&gt;&lt;P&gt;      wa_final-aufnr = wa_vbap-aufnr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Populating a record in final&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      APPEND wa_final TO i_final.&lt;/P&gt;&lt;P&gt;      CLEAR: wa_final,&lt;/P&gt;&lt;P&gt;             wa_vbap.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    CLEAR: wa_vbap,&lt;/P&gt;&lt;P&gt;           wa_vbak.&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;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " populate_final_data&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  display_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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   For displaying the reports&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 display_report .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT i_final[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    LOOP AT i_final INTO wa_final.&lt;/P&gt;&lt;P&gt;      AT NEW vbeln.&lt;/P&gt;&lt;P&gt;        WRITE: /1(15) sy-uline, 15 line_top_right_corner AS LINE,&lt;/P&gt;&lt;P&gt;               /1 sy-vline, sym_documents AS SYMBOL,&lt;/P&gt;&lt;P&gt;                wa_final-vbeln COLOR COL_GROUP,15 sy-vline,&lt;/P&gt;&lt;P&gt;               /1(158) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WRITE: /1      sy-vline,&lt;/P&gt;&lt;P&gt;            2      v_chk AS CHECKBOX,&lt;/P&gt;&lt;P&gt;            4(6)   wa_final-posnr COLOR COL_KEY,&lt;/P&gt;&lt;P&gt;            11     sy-vline,&lt;/P&gt;&lt;P&gt;            12(10) wa_final-erdat COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            23     sy-vline,&lt;/P&gt;&lt;P&gt;            24(8)  wa_final-erzet COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            33     sy-vline,&lt;/P&gt;&lt;P&gt;            34(12) wa_final-ernam COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            47     sy-vline,&lt;/P&gt;&lt;P&gt;            48(10) wa_final-audat COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            59     sy-vline,&lt;/P&gt;&lt;P&gt;            60(10) wa_final-vbtyp COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            71     sy-vline,&lt;/P&gt;&lt;P&gt;            72(18) wa_final-matnr HOTSPOT ON  COLOR COL_POSITIVE,&lt;/P&gt;&lt;P&gt;            91     sy-vline,&lt;/P&gt;&lt;P&gt;            92(9)  wa_final-matkl COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            102     sy-vline,&lt;/P&gt;&lt;P&gt;            103(20) wa_final-netwr COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            124     sy-vline,&lt;/P&gt;&lt;P&gt;            125(18) wa_final-prodh  COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            144     sy-vline,&lt;/P&gt;&lt;P&gt;            145(12) wa_final-aufnr COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            158     sy-vline,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;           /1(158) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      HIDE: wa_final-vbeln,&lt;/P&gt;&lt;P&gt;            wa_final-posnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      AT END OF vbeln.&lt;/P&gt;&lt;P&gt;        SUM.&lt;/P&gt;&lt;P&gt;        WRITE: /101(20) wa_final-netwr COLOR COL_GROUP.&lt;/P&gt;&lt;P&gt;      ENDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " display_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;*&amp;amp;      Form  display_header&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;      For displaying Header&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 display_header .&lt;/P&gt;&lt;P&gt;  WRITE: /1(11)  sy-uline,&lt;/P&gt;&lt;P&gt;         /1      sy-vline,&lt;/P&gt;&lt;P&gt;          2      text-006 COLOR COL_KEY INTENSIFIED ON,&lt;/P&gt;&lt;P&gt;          11     sy-vline,&lt;/P&gt;&lt;P&gt;         /1(158) sy-uline,&lt;/P&gt;&lt;P&gt;         /1      sy-vline,&lt;/P&gt;&lt;P&gt;         4(6)    text-007 COLOR COL_KEY ,&lt;/P&gt;&lt;P&gt;         11      sy-vline,&lt;/P&gt;&lt;P&gt;         12(10)  text-008 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;         23      sy-vline,&lt;/P&gt;&lt;P&gt;         24(8)   text-009 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;         33      sy-vline,&lt;/P&gt;&lt;P&gt;         34(12)  text-010 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;         47      sy-vline,&lt;/P&gt;&lt;P&gt;         48(10)  text-011 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;         59      sy-vline,&lt;/P&gt;&lt;P&gt;         60(10)  text-012 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;         71      sy-vline,&lt;/P&gt;&lt;P&gt;         72(18)  text-013 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;         91      sy-vline,&lt;/P&gt;&lt;P&gt;         92(9)   text-014 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;         102    sy-vline,&lt;/P&gt;&lt;P&gt;         103(20) text-015 COLOR COL_TOTAL,&lt;/P&gt;&lt;P&gt;         124     sy-vline,&lt;/P&gt;&lt;P&gt;         125(18) text-016  COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;         144     sy-vline,&lt;/P&gt;&lt;P&gt;         145(12) text-017 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;         158     sy-vline,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        /1(158) sy-uline.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " display_header&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  display_footer&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;      For Displaying footer&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 display_footer .&lt;/P&gt;&lt;P&gt;  WRITE:/1 text-018, sy-uname,&lt;/P&gt;&lt;P&gt;        /1 text-019, sy-pagno.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " display_footer&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  get_schedule_data&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 get_schedule_data .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT i_final2[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    SELECT  vbeln&lt;/P&gt;&lt;P&gt;            posnr&lt;/P&gt;&lt;P&gt;            etenr&lt;/P&gt;&lt;P&gt;            wmeng&lt;/P&gt;&lt;P&gt;            bmeng&lt;/P&gt;&lt;P&gt;            edatu&lt;/P&gt;&lt;P&gt;    INTO TABLE i_vbep&lt;/P&gt;&lt;P&gt;    FROM vbep&lt;/P&gt;&lt;P&gt;    FOR ALL ENTRIES IN i_final2&lt;/P&gt;&lt;P&gt;    WHERE vbeln EQ i_final2-vbeln AND&lt;/P&gt;&lt;P&gt;          posnr EQ i_final2-posnr.&lt;/P&gt;&lt;P&gt;    IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;      MESSAGE i001.&lt;/P&gt;&lt;P&gt;      LEAVE LIST-PROCESSING.  "No Data exists for the selection&lt;/P&gt;&lt;P&gt;    ELSEIF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;      SORT i_vbep BY vbeln posnr etenr.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_schedule_data&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  display_schedule_data&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 display_schedule_data .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local Declerations&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   Work Areas&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     lwa_vbep TYPE t_vbep.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT i_vbep[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    LOOP AT i_vbep INTO lwa_vbep.&lt;/P&gt;&lt;P&gt;      AT NEW vbeln.&lt;/P&gt;&lt;P&gt;        WRITE: /1(15) sy-uline, 15 line_top_right_corner AS LINE,&lt;/P&gt;&lt;P&gt;               /1 sy-vline, sym_documents AS SYMBOL,&lt;/P&gt;&lt;P&gt;                lwa_vbep-vbeln COLOR COL_GROUP,15 sy-vline,&lt;/P&gt;&lt;P&gt;               /1(65) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WRITE: /1    sy-vline,&lt;/P&gt;&lt;P&gt;            2(6)   lwa_vbep-posnr COLOR COL_KEY HOTSPOT ON,&lt;/P&gt;&lt;P&gt;            9      sy-vline,&lt;/P&gt;&lt;P&gt;            10(4)  lwa_vbep-etenr COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            15     sy-vline,&lt;/P&gt;&lt;P&gt;            16(17) lwa_vbep-wmeng COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            34     sy-vline,&lt;/P&gt;&lt;P&gt;            35(17) lwa_vbep-bmeng COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            53     sy-vline,&lt;/P&gt;&lt;P&gt;            54(10) lwa_vbep-edatu COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            65     sy-vline,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;           /1(65) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      AT END OF vbeln.&lt;/P&gt;&lt;P&gt;        SUM.&lt;/P&gt;&lt;P&gt;        WRITE: /16(17) lwa_vbep-wmeng COLOR COL_GROUP,&lt;/P&gt;&lt;P&gt;                35(17) lwa_vbep-bmeng COLOR COL_GROUP.&lt;/P&gt;&lt;P&gt;      ENDAT.&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;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " display_schedule_data&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  get_vbap_data_3&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 get_vbap_data_3 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT vbeln&lt;/P&gt;&lt;P&gt;         posnr&lt;/P&gt;&lt;P&gt;         matnr&lt;/P&gt;&lt;P&gt;         matkl&lt;/P&gt;&lt;P&gt;         netwr&lt;/P&gt;&lt;P&gt;         prodh&lt;/P&gt;&lt;P&gt;         aufnr&lt;/P&gt;&lt;P&gt;     INTO TABLE i_vbap&lt;/P&gt;&lt;P&gt;     FROM vbap&lt;/P&gt;&lt;P&gt;     WHERE matnr IN so_matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;    SORT i_vbap BY vbeln posnr.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    MESSAGE i002. "No Data Exists for the selection&lt;/P&gt;&lt;P&gt;    LEAVE LIST-PROCESSING.&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;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_vbap_data_3&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  get_vbak_data_3&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 get_vbak_data_3 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT i_vbap[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    SELECT   vbeln&lt;/P&gt;&lt;P&gt;             erdat&lt;/P&gt;&lt;P&gt;             erzet&lt;/P&gt;&lt;P&gt;             ernam&lt;/P&gt;&lt;P&gt;             audat&lt;/P&gt;&lt;P&gt;             vbtyp&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        INTO TABLE i_vbak&lt;/P&gt;&lt;P&gt;           FROM vbak&lt;/P&gt;&lt;P&gt;           FOR ALL ENTRIES IN i_vbap&lt;/P&gt;&lt;P&gt;           WHERE vbeln EQ i_vbap-vbeln.&lt;/P&gt;&lt;P&gt;    IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;      SORT i_vbap BY vbeln posnr.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      MESSAGE i002. "No Data Exists for the selection&lt;/P&gt;&lt;P&gt;      LEAVE LIST-PROCESSING.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&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;ENDFORM.                    " get_vbak_data_3&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  display_report_3&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 display_report_3 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT i_final[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    LOOP AT i_final INTO wa_final.&lt;/P&gt;&lt;P&gt;      AT NEW vbeln.&lt;/P&gt;&lt;P&gt;        WRITE: /1(15) sy-uline, 15 line_top_right_corner AS LINE,&lt;/P&gt;&lt;P&gt;               /1 sy-vline, sym_documents AS SYMBOL,&lt;/P&gt;&lt;P&gt;                wa_final-vbeln COLOR COL_GROUP,15 sy-vline,&lt;/P&gt;&lt;P&gt;               /1(158) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WRITE: /1      sy-vline,&lt;/P&gt;&lt;P&gt;            2      v_chk AS CHECKBOX,&lt;/P&gt;&lt;P&gt;            4(6)   wa_final-posnr COLOR COL_KEY,&lt;/P&gt;&lt;P&gt;            11     sy-vline,&lt;/P&gt;&lt;P&gt;            12(10) wa_final-erdat COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            23     sy-vline,&lt;/P&gt;&lt;P&gt;            24(8)  wa_final-erzet COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            33     sy-vline,&lt;/P&gt;&lt;P&gt;            34(12) wa_final-ernam COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            47     sy-vline,&lt;/P&gt;&lt;P&gt;            48(10) wa_final-audat COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            59     sy-vline,&lt;/P&gt;&lt;P&gt;            60(10) wa_final-vbtyp COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            71     sy-vline,&lt;/P&gt;&lt;P&gt;            72(18) wa_final-matnr HOTSPOT ON COLOR COL_POSITIVE,&lt;/P&gt;&lt;P&gt;            91     sy-vline,&lt;/P&gt;&lt;P&gt;            92(9)  wa_final-matkl COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            102     sy-vline,&lt;/P&gt;&lt;P&gt;            103(20) wa_final-netwr COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            124     sy-vline,&lt;/P&gt;&lt;P&gt;            125(18) wa_final-prodh  COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            144     sy-vline,&lt;/P&gt;&lt;P&gt;            145(12) wa_final-aufnr COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            158     sy-vline,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;           /1(158) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      HIDE: wa_final-vbeln,&lt;/P&gt;&lt;P&gt;            wa_final-posnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      AT END OF vbeln.&lt;/P&gt;&lt;P&gt;        SUM.&lt;/P&gt;&lt;P&gt;        WRITE: /101(20) wa_final-netwr COLOR COL_GROUP.&lt;/P&gt;&lt;P&gt;      ENDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDLOOP.&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;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " display_report_3&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;/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  get_material_details&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;P_V_MATNR  text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     &amp;lt;--P_I_MARA  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 get_material_details  USING    p_v_matnr.&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;  Local data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA: lv_index TYPE sytabix.  "To preserve the index pos&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; SELECT matnr,ersda, ernam, mtart, mbrsh, matkl, meins, brgew, volum, kunnr from mara into i_mara1  where matnr = p_v_matnr.  " Getting data for mara table&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   SELECT matnr,maktx into i_makt from maktx where matnr = p_v_matnr.                                                           " Getting data for makt table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Implementing the parallel cursor technique&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT i_mara1 INTO wa_mara1.&lt;/P&gt;&lt;P&gt;    LOOP AT i_makt INTO wa_makt FROM lv_index.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF wa_mara1-matnr &amp;lt;&amp;gt; wa_makt-matnr.&lt;/P&gt;&lt;P&gt;        lv_index = sy-tabix.&lt;/P&gt;&lt;P&gt;        EXIT.&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;        Assignment from mara &amp;amp; makt work area to i_mara&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      wa_mara-matnr = wa_mara1-matnr.&lt;/P&gt;&lt;P&gt;      wa_mara-maktx = wa_makt-maktx.&lt;/P&gt;&lt;P&gt;      wa_mara-ersda = wa_mara1-ersda.&lt;/P&gt;&lt;P&gt;      wa_mara-ernam = wa_mara1-ernam.&lt;/P&gt;&lt;P&gt;      wa_mara-mtart = wa_mara1-mtart.&lt;/P&gt;&lt;P&gt;      wa_mara-mbrsh = wa_mara1-mbrsh.&lt;/P&gt;&lt;P&gt;      wa_mara-matkl = wa_mara1-matkl.&lt;/P&gt;&lt;P&gt;      wa_mara-meins = wa_mara1-meins .&lt;/P&gt;&lt;P&gt;      wa_mara-brgew = wa_mara1-brgew.&lt;/P&gt;&lt;P&gt;      wa_mara-volum = wa_mara1-volum.&lt;/P&gt;&lt;P&gt;      wa_mara-kunnr = wa_mara1-kunnr.&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;    Populating a record in final i_mara table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      APPEND wa_mara TO i_mara.&lt;/P&gt;&lt;P&gt;      CLEAR: wa_mara,&lt;/P&gt;&lt;P&gt;             wa_makt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    CLEAR: wa_mara,&lt;/P&gt;&lt;P&gt;           wa_makt.&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;  SORT i_mara BY matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_material_details&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;/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  display_mara&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 display_mara .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM display_header_mara.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT i_mara INTO wa_mara.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    FORMAT COLOR 5.&lt;/P&gt;&lt;P&gt;    WRITE &lt;span class="lia-unicode-emoji" title=":confused_face:"&gt;😕&lt;/span&gt; sy-uline,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       wa_mara-matnr,sy-vline,&lt;/P&gt;&lt;P&gt;       wa_mara-maktx,sy-vline,&lt;/P&gt;&lt;P&gt;       wa_mara-ersda,sy-vline,&lt;/P&gt;&lt;P&gt;       wa_mara-ernam,sy-vline,&lt;/P&gt;&lt;P&gt;       wa_mara-mtart,sy-vline,&lt;/P&gt;&lt;P&gt;       wa_mara-mbrsh,sy-vline,&lt;/P&gt;&lt;P&gt;       wa_mara-matkl,sy-vline,&lt;/P&gt;&lt;P&gt;       wa_mara-meins,sy-vline,&lt;/P&gt;&lt;P&gt;       wa_mara-brgew,sy-vline,&lt;/P&gt;&lt;P&gt;       wa_mara-volum,sy-vline,&lt;/P&gt;&lt;P&gt;       wa_mara-kunnr,sy-vline.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " display_mara&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  display_header_mara&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 display_header_mara .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE: /2        text-013 COLOR COL_KEY INTENSIFIED ON,&lt;/P&gt;&lt;P&gt;             11     sy-vline,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            /1      sy-vline,&lt;/P&gt;&lt;P&gt;            9(10)    text-017 COLOR COL_KEY ,&lt;/P&gt;&lt;P&gt;            20      sy-vline,&lt;/P&gt;&lt;P&gt;            21(14) text-018 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;            36      sy-vline,&lt;/P&gt;&lt;P&gt;            37(8) text-019 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;            46      sy-vline,&lt;/P&gt;&lt;P&gt;            47(12)   text-020 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;            59      sy-vline,&lt;/P&gt;&lt;P&gt;            60(10) text-021 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;            71      sy-vline,&lt;/P&gt;&lt;P&gt;            72(10) text-022 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;            83      sy-vline,&lt;/P&gt;&lt;P&gt;            84(18)   text-023 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;            103      sy-vline,&lt;/P&gt;&lt;P&gt;            104(9)   text-024 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;            114     sy-vline,&lt;/P&gt;&lt;P&gt;            115(20) text-025 COLOR COL_TOTAL,&lt;/P&gt;&lt;P&gt;            136     sy-vline,&lt;/P&gt;&lt;P&gt;           137(18) text-026  COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;            156     sy-vline,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;           /1(156) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " display_header_mara&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please reward points if useful.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 16 Apr 2008 12:07:43 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-04-16T12:07:43Z</dc:date>
    <item>
      <title>Report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/report/m-p/3653729#M880090</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;HI Guys,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am new to Abap kam someone send one sample report.please its urgent&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 16 Apr 2008 12:04:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/report/m-p/3653729#M880090</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-16T12:04:55Z</dc:date>
    </item>
    <item>
      <title>Re: Report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/report/m-p/3653730#M880091</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Below is the classcal report.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  z_sd_rep5_assign2&lt;/P&gt;&lt;P&gt;             NO STANDARD PAGE HEADING&lt;/P&gt;&lt;P&gt;             LINE-SIZE 158&lt;/P&gt;&lt;P&gt;             LINE-COUNT 31(2)&lt;/P&gt;&lt;P&gt;             MESSAGE-ID ysd.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INCLUDE &amp;lt;list&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;*G L O B A L   D A T A   D E C L E R A T I O N                *&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;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;*T Y P E S                                                    *&lt;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF t_vbak,&lt;/P&gt;&lt;P&gt;        vbeln   TYPE vbeln_va,  "Sales Document&lt;/P&gt;&lt;P&gt;        erdat   TYPE erdat,     "Date on which the record was created&lt;/P&gt;&lt;P&gt;        erzet   TYPE erzet,     "Entry time&lt;/P&gt;&lt;P&gt;        ernam   TYPE ernam,     "Name of Person who Created the Object&lt;/P&gt;&lt;P&gt;        audat   TYPE audat,     "Document date (date received/sent)&lt;/P&gt;&lt;P&gt;        vbtyp   TYPE vbtyp,     "SD document category&lt;/P&gt;&lt;P&gt;       END OF t_vbak,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       BEGIN OF t_vbap,&lt;/P&gt;&lt;P&gt;         vbeln  TYPE vbeln_va,  "Sales Document&lt;/P&gt;&lt;P&gt;         posnr  TYPE posnr_va,  "Sales Document Item&lt;/P&gt;&lt;P&gt;         matnr  TYPE matnr,     "Material Number&lt;/P&gt;&lt;P&gt;         matkl  TYPE matkl,     "Material Group&lt;/P&gt;&lt;P&gt;         netwr  TYPE netwr_ap,  "Net value of the order item in document currency&lt;/P&gt;&lt;P&gt;         prodh  TYPE prodh_d,   "Product hierarchy&lt;/P&gt;&lt;P&gt;         aufnr  TYPE aufnr,     "Order Number&lt;/P&gt;&lt;P&gt;       END OF t_vbap,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      BEGIN OF t_vbep ,&lt;/P&gt;&lt;P&gt;        vbeln  TYPE vbeln_va,  "Sales Document&lt;/P&gt;&lt;P&gt;        posnr  TYPE posnr_va,  "Sales Document Item&lt;/P&gt;&lt;P&gt;        etenr  TYPE etenr,     "Delivery Schedule Line Counter&lt;/P&gt;&lt;P&gt;        wmeng  TYPE wmeng,     "Order quantity in sales units&lt;/P&gt;&lt;P&gt;        bmeng  TYPE bmeng,     "Confirmed quantity&lt;/P&gt;&lt;P&gt;        edatu  TYPE edatu,     "Schedule line date&lt;/P&gt;&lt;P&gt;       END OF t_vbep,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       BEGIN OF t_final,&lt;/P&gt;&lt;P&gt;         vbeln  TYPE vbeln_va,  "Sales Document&lt;/P&gt;&lt;P&gt;         erdat  TYPE erdat,     "Date on which the record was created&lt;/P&gt;&lt;P&gt;         erzet  TYPE erzet,     "Entry time&lt;/P&gt;&lt;P&gt;         ernam  TYPE ernam,     "Name of Person who Created the Object&lt;/P&gt;&lt;P&gt;         audat  TYPE audat,     "Document date (date received/sent)&lt;/P&gt;&lt;P&gt;         vbtyp  TYPE vbtyp,     "SD document category&lt;/P&gt;&lt;P&gt;         posnr  TYPE posnr_va,  "Sales Document Item&lt;/P&gt;&lt;P&gt;         matnr  TYPE matnr,     "Material Number&lt;/P&gt;&lt;P&gt;         matkl  TYPE matkl,     "Material Group&lt;/P&gt;&lt;P&gt;         netwr  TYPE netwr_ap,  "Net value of the order item in document currency&lt;/P&gt;&lt;P&gt;         prodh  TYPE prodh_d,   "Product hierarchy&lt;/P&gt;&lt;P&gt;         aufnr  TYPE aufnr,     "Order Number&lt;/P&gt;&lt;P&gt;       END OF t_final,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       BEGIN OF t_makt,&lt;/P&gt;&lt;P&gt;         matnr TYPE matnr,&lt;/P&gt;&lt;P&gt;         maktx TYPE maktx,&lt;/P&gt;&lt;P&gt;      END OF t_makt,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      BEGIN OF t_mara1,&lt;/P&gt;&lt;P&gt;         matnr TYPE matnr,      "Material Number&lt;/P&gt;&lt;P&gt;         ersda TYPE ersda,      "Creation date&lt;/P&gt;&lt;P&gt;         ernam TYPE ernam,      "Name of Person who Created the Object&lt;/P&gt;&lt;P&gt;         mtart TYPE mtart,      "Material type&lt;/P&gt;&lt;P&gt;         mbrsh TYPE mbrsh,      "Material type&lt;/P&gt;&lt;P&gt;         matkl TYPE matkl,      "Material group&lt;/P&gt;&lt;P&gt;         meins TYPE meins,      "Base Unit of Measure&lt;/P&gt;&lt;P&gt;         brgew TYPE brgew,      "Gross weight&lt;/P&gt;&lt;P&gt;         volum TYPE volum,      "Volume&lt;/P&gt;&lt;P&gt;         kunnr TYPE wettb,      "Competitor&lt;/P&gt;&lt;P&gt;      END OF t_mara1,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       BEGIN OF t_mara,&lt;/P&gt;&lt;P&gt;         matnr TYPE matnr,      "Material Number&lt;/P&gt;&lt;P&gt;         maktx TYPE maktx,      "Material Descriptiopn&lt;/P&gt;&lt;P&gt;         ersda TYPE ersda,      "Creation date&lt;/P&gt;&lt;P&gt;         ernam TYPE ernam,      "Name of Person who Created the Object&lt;/P&gt;&lt;P&gt;         mtart TYPE mtart,      "Material type&lt;/P&gt;&lt;P&gt;         mbrsh TYPE mbrsh,      "Material type&lt;/P&gt;&lt;P&gt;         matkl TYPE matkl,      "Material group&lt;/P&gt;&lt;P&gt;         meins TYPE meins,      "Base Unit of Measure&lt;/P&gt;&lt;P&gt;         brgew TYPE brgew,      "Gross weight&lt;/P&gt;&lt;P&gt;         volum TYPE volum,      "Volume&lt;/P&gt;&lt;P&gt;         kunnr TYPE wettb,      "Competitor&lt;/P&gt;&lt;P&gt;      END OF t_mara.&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;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;*T A B L E S  T Y P E S                                       *&lt;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES: vbak, mara, makt.&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;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;*INTERNAL TABLES, WORK AREAS &amp;amp; VARIABLES                      *&lt;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   Internal Tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     i_vbak   TYPE STANDARD TABLE OF t_vbak,&lt;/P&gt;&lt;P&gt;     i_vbap   TYPE STANDARD TABLE OF t_vbap,&lt;/P&gt;&lt;P&gt;     i_vbep   TYPE STANDARD TABLE OF t_vbep,&lt;/P&gt;&lt;P&gt;     i_final  TYPE STANDARD TABLE OF t_final,&lt;/P&gt;&lt;P&gt;     i_final2 TYPE STANDARD TABLE OF t_final,&lt;/P&gt;&lt;P&gt;     i_mara   TYPE STANDARD TABLE OF t_mara,&lt;/P&gt;&lt;P&gt;     i_mara1   TYPE STANDARD TABLE OF t_mara1,&lt;/P&gt;&lt;P&gt;     i_makt   TYPE STANDARD TABLE OF t_makt,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   Work areas&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     wa_vbak  TYPE t_vbak,&lt;/P&gt;&lt;P&gt;     wa_vbap  TYPE t_vbap,&lt;/P&gt;&lt;P&gt;     wa_vbep  TYPE t_vbep,&lt;/P&gt;&lt;P&gt;     wa_final TYPE t_final,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     wa_mara1 TYPE t_mara1,&lt;/P&gt;&lt;P&gt;     wa_makt TYPE t_makt,&lt;/P&gt;&lt;P&gt;     wa_mara TYPE t_mara,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   Variables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     v_vbeln LIKE vbak-vbeln,        "Sales document&lt;/P&gt;&lt;P&gt;     v_matnr LIKE mara-matnr,        "Material&lt;/P&gt;&lt;P&gt;     v_kunnr LIKE mara-kunnr,        "Competitor&lt;/P&gt;&lt;P&gt;     v_chk   TYPE c,                 "For checkbox&lt;/P&gt;&lt;P&gt;     fname(30) TYPE c.&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;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;*S E L E C T I O N - S C R E E N   D E F I N I T I O N        *&lt;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;***************************************************************&lt;/P&gt;&lt;P&gt;INITIALIZATION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECTION-SCREEN: BEGIN OF BLOCK blk1 WITH FRAME TITLE text-004.&lt;/P&gt;&lt;P&gt;  SELECT-OPTIONS: so_vbeln FOR v_vbeln MODIF ID md1,&lt;/P&gt;&lt;P&gt;                  so_matnr FOR v_matnr MODIF ID md2.&lt;/P&gt;&lt;P&gt;  SELECTION-SCREEN: END OF BLOCK blk1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECTION-SCREEN: BEGIN OF BLOCK blk2 WITH FRAME TITLE text-005.&lt;/P&gt;&lt;P&gt;  PARAMETERS: p_vbeln RADIOBUTTON GROUP rd1&lt;/P&gt;&lt;P&gt;                      DEFAULT 'X'&lt;/P&gt;&lt;P&gt;                      USER-COMMAND ucom,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;              p_matnr RADIOBUTTON GROUP rd1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECTION-SCREEN: END OF BLOCK blk2.&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;/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;           M A I N     P R O G R A M                        *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&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;P&gt;AT SELECTION-SCREEN.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Validating the user inputs&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM validate_sales_order.&lt;/P&gt;&lt;P&gt;  PERFORM validate_material.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN OUTPUT.&lt;/P&gt;&lt;P&gt;  PERFORM change_display_behaviour.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TOP-OF-PAGE.&lt;/P&gt;&lt;P&gt;  PERFORM display_header.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;  SET PF-STATUS 'ZGUI'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Processing step by step in order to implement logic&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;* IF ELSE COND.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF p_vbeln = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM get_vbak_data.&lt;/P&gt;&lt;P&gt;    PERFORM get_vbap_data.&lt;/P&gt;&lt;P&gt;    PERFORM populate_final_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSEIF p_matnr = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM get_vbap_data_3.&lt;/P&gt;&lt;P&gt;    PERFORM get_vbak_data_3.&lt;/P&gt;&lt;P&gt;    PERFORM populate_final_data.&lt;/P&gt;&lt;P&gt;    SORT i_final BY matnr.&lt;/P&gt;&lt;P&gt;&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;&lt;/P&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_vbeln = 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM display_report.&lt;/P&gt;&lt;P&gt;  ELSEIF p_matnr = 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM display_report_3.&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;&lt;/P&gt;&lt;P&gt;END-OF-PAGE.&lt;/P&gt;&lt;P&gt;  PERFORM display_footer.&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;   Event for user-command for both at line-selection and at user-command&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT USER-COMMAND.&lt;/P&gt;&lt;P&gt;  CLEAR: v_chk,&lt;/P&gt;&lt;P&gt;         wa_final.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_vbeln = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CASE sy-ucomm.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN 'DIS'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        DO.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            In order to get the selected records&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          READ LINE sy-index FIELD VALUE v_chk&lt;/P&gt;&lt;P&gt;                                       wa_final-vbeln&lt;/P&gt;&lt;P&gt;                                       wa_final-posnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;            EXIT.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;          IF NOT v_chk IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            READ TABLE i_final INTO wa_final WITH KEY&lt;/P&gt;&lt;P&gt;                                             vbeln = wa_final-vbeln&lt;/P&gt;&lt;P&gt;                                             posnr = wa_final-posnr&lt;/P&gt;&lt;P&gt;                                             BINARY SEARCH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            APPEND wa_final TO i_final2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        Disabling the recheckbox so that next time user cannot select&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            MODIFY LINE sy-index FIELD VALUE v_chk&lt;/P&gt;&lt;P&gt;                                 FROM space&lt;/P&gt;&lt;P&gt;                                 FIELD FORMAT v_chk INPUT OFF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;          CLEAR: wa_final.&lt;/P&gt;&lt;P&gt;        ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF NOT i_final2 IS INITIAL.&lt;/P&gt;&lt;P&gt;          SORT i_final2 BY vbeln posnr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          Fetching Schedule line data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          PERFORM get_schedule_data.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          Displaying Schedule line data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          PERFORM display_schedule_data.&lt;/P&gt;&lt;P&gt;          REFRESH: i_final2,&lt;/P&gt;&lt;P&gt;                   i_vbep.&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;&lt;/P&gt;&lt;P&gt;      WHEN 'BACK' OR 'CANC' OR 'EXIT'.&lt;/P&gt;&lt;P&gt;        LEAVE LIST-PROCESSING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSEIF p_matnr = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CASE sy-ucomm.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN 'DISPLAY'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        DO.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF NOT i_final2 IS INITIAL.&lt;/P&gt;&lt;P&gt;          SORT i_final2 BY vbeln posnr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          Fetching Schedule line data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          PERFORM get_schedule_data.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          Displaying Schedule line data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          PERFORM display_schedule_data.&lt;/P&gt;&lt;P&gt;          REFRESH: i_final2,&lt;/P&gt;&lt;P&gt;                   i_vbep.&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;&lt;/P&gt;&lt;P&gt;      WHEN 'BACK' OR 'CANC' OR 'EXIT'.&lt;/P&gt;&lt;P&gt;        LEAVE LIST-PROCESSING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;&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;  CASE sy-lsind .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      GET CURSOR FIELD  fname VALUE v_matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF  fname = 'WA_FINAL-MATNR'.&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  = v_matnr&lt;/P&gt;&lt;P&gt;          IMPORTING&lt;/P&gt;&lt;P&gt;            output = v_matnr.&lt;/P&gt;&lt;P&gt;        PERFORM get_material_details USING v_matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        PERFORM display_mara.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      GET CURSOR FIELD  fname VALUE v_kunnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF fname = 'KUNNR'.&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  = v_kunnr&lt;/P&gt;&lt;P&gt;          IMPORTING&lt;/P&gt;&lt;P&gt;            output = v_kunnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        SET PARAMETER ID 'KUN' FIELD v_kunnr.&lt;/P&gt;&lt;P&gt;        CALL TRANSACTION 'XD03' AND&lt;/P&gt;&lt;P&gt;        SKIP FIRST SCREEN.&lt;/P&gt;&lt;P&gt;&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;  ENDCASE.&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;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           S U B   R O U T I N E S                          *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&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;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  change_display_behaviour&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;      Change the display behviour of screen elements&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 change_display_behaviour .&lt;/P&gt;&lt;P&gt;  LOOP AT SCREEN.&lt;/P&gt;&lt;P&gt;    IF p_vbeln = 'X'.&lt;/P&gt;&lt;P&gt;      IF screen-group1 = 'MD1'.&lt;/P&gt;&lt;P&gt;        screen-input = 1.&lt;/P&gt;&lt;P&gt;        MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;      ELSEIF screen-group1 = 'MD2'.&lt;/P&gt;&lt;P&gt;        screen-input = 0.&lt;/P&gt;&lt;P&gt;        MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ELSEIF p_matnr = 'X'.&lt;/P&gt;&lt;P&gt;      IF screen-group1 = 'MD1'.&lt;/P&gt;&lt;P&gt;        screen-input = 0.&lt;/P&gt;&lt;P&gt;        MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;      ELSEIF screen-group1 = 'MD2'.&lt;/P&gt;&lt;P&gt;        screen-input = 1.&lt;/P&gt;&lt;P&gt;        MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " change_display_behaviour&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  validate_sales_order&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;      For validating sales document no&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 validate_sales_order .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local declearations&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA: lv_vbeln TYPE vbeln_va.  "Sales Document&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT vbeln&lt;/P&gt;&lt;P&gt;    INTO (lv_vbeln)&lt;/P&gt;&lt;P&gt;    UP TO 1 ROWS&lt;/P&gt;&lt;P&gt;    FROM vbak&lt;/P&gt;&lt;P&gt;    WHERE vbeln IN so_vbeln.&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE e000 with so_vbeln-LOW so_vbeln-HIGH .  "Invalid Sales Order&lt;/P&gt;&lt;P&gt;                                                    " Passing arguments to message.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " validate_sales_order&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  validate_material&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;      For validating sales document no&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 validate_material .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local declearations&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA: lv_matnr TYPE vbeln_va.  "Material&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT matnr&lt;/P&gt;&lt;P&gt;    INTO (lv_matnr)&lt;/P&gt;&lt;P&gt;    UP TO 1 ROWS&lt;/P&gt;&lt;P&gt;    FROM mara&lt;/P&gt;&lt;P&gt;    WHERE matnr IN so_matnr.&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE e001.  "Invalid Material&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " validate_material&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  get_vbak_data&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;      Foor fetching the vbak data&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 get_vbak_data .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT vbeln&lt;/P&gt;&lt;P&gt;         erdat&lt;/P&gt;&lt;P&gt;         erzet&lt;/P&gt;&lt;P&gt;         ernam&lt;/P&gt;&lt;P&gt;         audat&lt;/P&gt;&lt;P&gt;         vbtyp&lt;/P&gt;&lt;P&gt;    INTO TABLE i_vbak&lt;/P&gt;&lt;P&gt;    FROM vbak&lt;/P&gt;&lt;P&gt;    WHERE vbeln IN so_vbeln.&lt;/P&gt;&lt;P&gt;  IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;    SORT i_vbak BY vbeln.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    MESSAGE i002. "No Data Exists for the selection&lt;/P&gt;&lt;P&gt;    LEAVE LIST-PROCESSING.&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;ENDFORM.                    " get_vbak_data&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  get_vbap_data&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;      For fetching the vbap data&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 get_vbap_data .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT i_vbak[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    SELECT vbeln&lt;/P&gt;&lt;P&gt;           posnr&lt;/P&gt;&lt;P&gt;           matnr&lt;/P&gt;&lt;P&gt;           matkl&lt;/P&gt;&lt;P&gt;           netwr&lt;/P&gt;&lt;P&gt;           prodh&lt;/P&gt;&lt;P&gt;           aufnr&lt;/P&gt;&lt;P&gt;       INTO TABLE i_vbap&lt;/P&gt;&lt;P&gt;       FROM vbap&lt;/P&gt;&lt;P&gt;       FOR ALL ENTRIES IN i_vbak&lt;/P&gt;&lt;P&gt;       WHERE vbeln EQ i_vbak-vbeln.&lt;/P&gt;&lt;P&gt;    IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;      SORT i_vbap BY vbeln posnr.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      MESSAGE i002. "No Data Exists for the selection&lt;/P&gt;&lt;P&gt;      LEAVE LIST-PROCESSING.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_vbap_data&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  populate_final_data&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;      For populating final data&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 populate_final_data .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA: lv_index TYPE sytabix.  "To preserve the index pos&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Implementing the parallel cursor technique&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  LOOP AT i_vbak INTO wa_vbak.&lt;/P&gt;&lt;P&gt;    LOOP AT i_vbap INTO wa_vbap FROM lv_index.&lt;/P&gt;&lt;P&gt;      IF wa_vbak-vbeln &amp;lt;&amp;gt; wa_vbap-vbeln.&lt;/P&gt;&lt;P&gt;        lv_index = sy-tabix.&lt;/P&gt;&lt;P&gt;        EXIT.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Assignment from vbak &amp;amp; vbap work area to final&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      wa_final-vbeln = wa_vbak-vbeln.&lt;/P&gt;&lt;P&gt;      wa_final-erdat = wa_vbak-erdat.&lt;/P&gt;&lt;P&gt;      wa_final-erzet = wa_vbak-erzet.&lt;/P&gt;&lt;P&gt;      wa_final-ernam = wa_vbak-ernam.&lt;/P&gt;&lt;P&gt;      wa_final-audat = wa_vbak-audat.&lt;/P&gt;&lt;P&gt;      wa_final-vbtyp = wa_vbak-vbtyp.&lt;/P&gt;&lt;P&gt;      wa_final-posnr = wa_vbap-posnr.&lt;/P&gt;&lt;P&gt;      wa_final-matnr = wa_vbap-matnr.&lt;/P&gt;&lt;P&gt;      wa_final-matkl = wa_vbap-matkl.&lt;/P&gt;&lt;P&gt;      wa_final-netwr = wa_vbap-netwr.&lt;/P&gt;&lt;P&gt;      wa_final-prodh = wa_vbap-prodh.&lt;/P&gt;&lt;P&gt;      wa_final-aufnr = wa_vbap-aufnr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Populating a record in final&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      APPEND wa_final TO i_final.&lt;/P&gt;&lt;P&gt;      CLEAR: wa_final,&lt;/P&gt;&lt;P&gt;             wa_vbap.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    CLEAR: wa_vbap,&lt;/P&gt;&lt;P&gt;           wa_vbak.&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;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " populate_final_data&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  display_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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   For displaying the reports&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 display_report .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT i_final[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    LOOP AT i_final INTO wa_final.&lt;/P&gt;&lt;P&gt;      AT NEW vbeln.&lt;/P&gt;&lt;P&gt;        WRITE: /1(15) sy-uline, 15 line_top_right_corner AS LINE,&lt;/P&gt;&lt;P&gt;               /1 sy-vline, sym_documents AS SYMBOL,&lt;/P&gt;&lt;P&gt;                wa_final-vbeln COLOR COL_GROUP,15 sy-vline,&lt;/P&gt;&lt;P&gt;               /1(158) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WRITE: /1      sy-vline,&lt;/P&gt;&lt;P&gt;            2      v_chk AS CHECKBOX,&lt;/P&gt;&lt;P&gt;            4(6)   wa_final-posnr COLOR COL_KEY,&lt;/P&gt;&lt;P&gt;            11     sy-vline,&lt;/P&gt;&lt;P&gt;            12(10) wa_final-erdat COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            23     sy-vline,&lt;/P&gt;&lt;P&gt;            24(8)  wa_final-erzet COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            33     sy-vline,&lt;/P&gt;&lt;P&gt;            34(12) wa_final-ernam COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            47     sy-vline,&lt;/P&gt;&lt;P&gt;            48(10) wa_final-audat COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            59     sy-vline,&lt;/P&gt;&lt;P&gt;            60(10) wa_final-vbtyp COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            71     sy-vline,&lt;/P&gt;&lt;P&gt;            72(18) wa_final-matnr HOTSPOT ON  COLOR COL_POSITIVE,&lt;/P&gt;&lt;P&gt;            91     sy-vline,&lt;/P&gt;&lt;P&gt;            92(9)  wa_final-matkl COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            102     sy-vline,&lt;/P&gt;&lt;P&gt;            103(20) wa_final-netwr COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            124     sy-vline,&lt;/P&gt;&lt;P&gt;            125(18) wa_final-prodh  COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            144     sy-vline,&lt;/P&gt;&lt;P&gt;            145(12) wa_final-aufnr COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            158     sy-vline,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;           /1(158) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      HIDE: wa_final-vbeln,&lt;/P&gt;&lt;P&gt;            wa_final-posnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      AT END OF vbeln.&lt;/P&gt;&lt;P&gt;        SUM.&lt;/P&gt;&lt;P&gt;        WRITE: /101(20) wa_final-netwr COLOR COL_GROUP.&lt;/P&gt;&lt;P&gt;      ENDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " display_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;*&amp;amp;      Form  display_header&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;      For displaying Header&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 display_header .&lt;/P&gt;&lt;P&gt;  WRITE: /1(11)  sy-uline,&lt;/P&gt;&lt;P&gt;         /1      sy-vline,&lt;/P&gt;&lt;P&gt;          2      text-006 COLOR COL_KEY INTENSIFIED ON,&lt;/P&gt;&lt;P&gt;          11     sy-vline,&lt;/P&gt;&lt;P&gt;         /1(158) sy-uline,&lt;/P&gt;&lt;P&gt;         /1      sy-vline,&lt;/P&gt;&lt;P&gt;         4(6)    text-007 COLOR COL_KEY ,&lt;/P&gt;&lt;P&gt;         11      sy-vline,&lt;/P&gt;&lt;P&gt;         12(10)  text-008 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;         23      sy-vline,&lt;/P&gt;&lt;P&gt;         24(8)   text-009 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;         33      sy-vline,&lt;/P&gt;&lt;P&gt;         34(12)  text-010 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;         47      sy-vline,&lt;/P&gt;&lt;P&gt;         48(10)  text-011 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;         59      sy-vline,&lt;/P&gt;&lt;P&gt;         60(10)  text-012 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;         71      sy-vline,&lt;/P&gt;&lt;P&gt;         72(18)  text-013 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;         91      sy-vline,&lt;/P&gt;&lt;P&gt;         92(9)   text-014 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;         102    sy-vline,&lt;/P&gt;&lt;P&gt;         103(20) text-015 COLOR COL_TOTAL,&lt;/P&gt;&lt;P&gt;         124     sy-vline,&lt;/P&gt;&lt;P&gt;         125(18) text-016  COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;         144     sy-vline,&lt;/P&gt;&lt;P&gt;         145(12) text-017 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;         158     sy-vline,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        /1(158) sy-uline.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " display_header&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  display_footer&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;      For Displaying footer&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 display_footer .&lt;/P&gt;&lt;P&gt;  WRITE:/1 text-018, sy-uname,&lt;/P&gt;&lt;P&gt;        /1 text-019, sy-pagno.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " display_footer&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  get_schedule_data&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 get_schedule_data .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT i_final2[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    SELECT  vbeln&lt;/P&gt;&lt;P&gt;            posnr&lt;/P&gt;&lt;P&gt;            etenr&lt;/P&gt;&lt;P&gt;            wmeng&lt;/P&gt;&lt;P&gt;            bmeng&lt;/P&gt;&lt;P&gt;            edatu&lt;/P&gt;&lt;P&gt;    INTO TABLE i_vbep&lt;/P&gt;&lt;P&gt;    FROM vbep&lt;/P&gt;&lt;P&gt;    FOR ALL ENTRIES IN i_final2&lt;/P&gt;&lt;P&gt;    WHERE vbeln EQ i_final2-vbeln AND&lt;/P&gt;&lt;P&gt;          posnr EQ i_final2-posnr.&lt;/P&gt;&lt;P&gt;    IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;      MESSAGE i001.&lt;/P&gt;&lt;P&gt;      LEAVE LIST-PROCESSING.  "No Data exists for the selection&lt;/P&gt;&lt;P&gt;    ELSEIF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;      SORT i_vbep BY vbeln posnr etenr.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_schedule_data&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  display_schedule_data&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 display_schedule_data .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local Declerations&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   Work Areas&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     lwa_vbep TYPE t_vbep.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT i_vbep[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    LOOP AT i_vbep INTO lwa_vbep.&lt;/P&gt;&lt;P&gt;      AT NEW vbeln.&lt;/P&gt;&lt;P&gt;        WRITE: /1(15) sy-uline, 15 line_top_right_corner AS LINE,&lt;/P&gt;&lt;P&gt;               /1 sy-vline, sym_documents AS SYMBOL,&lt;/P&gt;&lt;P&gt;                lwa_vbep-vbeln COLOR COL_GROUP,15 sy-vline,&lt;/P&gt;&lt;P&gt;               /1(65) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WRITE: /1    sy-vline,&lt;/P&gt;&lt;P&gt;            2(6)   lwa_vbep-posnr COLOR COL_KEY HOTSPOT ON,&lt;/P&gt;&lt;P&gt;            9      sy-vline,&lt;/P&gt;&lt;P&gt;            10(4)  lwa_vbep-etenr COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            15     sy-vline,&lt;/P&gt;&lt;P&gt;            16(17) lwa_vbep-wmeng COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            34     sy-vline,&lt;/P&gt;&lt;P&gt;            35(17) lwa_vbep-bmeng COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            53     sy-vline,&lt;/P&gt;&lt;P&gt;            54(10) lwa_vbep-edatu COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            65     sy-vline,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;           /1(65) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      AT END OF vbeln.&lt;/P&gt;&lt;P&gt;        SUM.&lt;/P&gt;&lt;P&gt;        WRITE: /16(17) lwa_vbep-wmeng COLOR COL_GROUP,&lt;/P&gt;&lt;P&gt;                35(17) lwa_vbep-bmeng COLOR COL_GROUP.&lt;/P&gt;&lt;P&gt;      ENDAT.&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;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " display_schedule_data&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  get_vbap_data_3&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 get_vbap_data_3 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT vbeln&lt;/P&gt;&lt;P&gt;         posnr&lt;/P&gt;&lt;P&gt;         matnr&lt;/P&gt;&lt;P&gt;         matkl&lt;/P&gt;&lt;P&gt;         netwr&lt;/P&gt;&lt;P&gt;         prodh&lt;/P&gt;&lt;P&gt;         aufnr&lt;/P&gt;&lt;P&gt;     INTO TABLE i_vbap&lt;/P&gt;&lt;P&gt;     FROM vbap&lt;/P&gt;&lt;P&gt;     WHERE matnr IN so_matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;    SORT i_vbap BY vbeln posnr.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    MESSAGE i002. "No Data Exists for the selection&lt;/P&gt;&lt;P&gt;    LEAVE LIST-PROCESSING.&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;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_vbap_data_3&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  get_vbak_data_3&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 get_vbak_data_3 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT i_vbap[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    SELECT   vbeln&lt;/P&gt;&lt;P&gt;             erdat&lt;/P&gt;&lt;P&gt;             erzet&lt;/P&gt;&lt;P&gt;             ernam&lt;/P&gt;&lt;P&gt;             audat&lt;/P&gt;&lt;P&gt;             vbtyp&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        INTO TABLE i_vbak&lt;/P&gt;&lt;P&gt;           FROM vbak&lt;/P&gt;&lt;P&gt;           FOR ALL ENTRIES IN i_vbap&lt;/P&gt;&lt;P&gt;           WHERE vbeln EQ i_vbap-vbeln.&lt;/P&gt;&lt;P&gt;    IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;      SORT i_vbap BY vbeln posnr.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      MESSAGE i002. "No Data Exists for the selection&lt;/P&gt;&lt;P&gt;      LEAVE LIST-PROCESSING.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&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;ENDFORM.                    " get_vbak_data_3&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  display_report_3&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 display_report_3 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT i_final[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    LOOP AT i_final INTO wa_final.&lt;/P&gt;&lt;P&gt;      AT NEW vbeln.&lt;/P&gt;&lt;P&gt;        WRITE: /1(15) sy-uline, 15 line_top_right_corner AS LINE,&lt;/P&gt;&lt;P&gt;               /1 sy-vline, sym_documents AS SYMBOL,&lt;/P&gt;&lt;P&gt;                wa_final-vbeln COLOR COL_GROUP,15 sy-vline,&lt;/P&gt;&lt;P&gt;               /1(158) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WRITE: /1      sy-vline,&lt;/P&gt;&lt;P&gt;            2      v_chk AS CHECKBOX,&lt;/P&gt;&lt;P&gt;            4(6)   wa_final-posnr COLOR COL_KEY,&lt;/P&gt;&lt;P&gt;            11     sy-vline,&lt;/P&gt;&lt;P&gt;            12(10) wa_final-erdat COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            23     sy-vline,&lt;/P&gt;&lt;P&gt;            24(8)  wa_final-erzet COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            33     sy-vline,&lt;/P&gt;&lt;P&gt;            34(12) wa_final-ernam COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            47     sy-vline,&lt;/P&gt;&lt;P&gt;            48(10) wa_final-audat COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            59     sy-vline,&lt;/P&gt;&lt;P&gt;            60(10) wa_final-vbtyp COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            71     sy-vline,&lt;/P&gt;&lt;P&gt;            72(18) wa_final-matnr HOTSPOT ON COLOR COL_POSITIVE,&lt;/P&gt;&lt;P&gt;            91     sy-vline,&lt;/P&gt;&lt;P&gt;            92(9)  wa_final-matkl COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            102     sy-vline,&lt;/P&gt;&lt;P&gt;            103(20) wa_final-netwr COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            124     sy-vline,&lt;/P&gt;&lt;P&gt;            125(18) wa_final-prodh  COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            144     sy-vline,&lt;/P&gt;&lt;P&gt;            145(12) wa_final-aufnr COLOR COL_NORMAL,&lt;/P&gt;&lt;P&gt;            158     sy-vline,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;           /1(158) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      HIDE: wa_final-vbeln,&lt;/P&gt;&lt;P&gt;            wa_final-posnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      AT END OF vbeln.&lt;/P&gt;&lt;P&gt;        SUM.&lt;/P&gt;&lt;P&gt;        WRITE: /101(20) wa_final-netwr COLOR COL_GROUP.&lt;/P&gt;&lt;P&gt;      ENDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDLOOP.&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;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " display_report_3&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;/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  get_material_details&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;P_V_MATNR  text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     &amp;lt;--P_I_MARA  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 get_material_details  USING    p_v_matnr.&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;  Local data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA: lv_index TYPE sytabix.  "To preserve the index pos&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; SELECT matnr,ersda, ernam, mtart, mbrsh, matkl, meins, brgew, volum, kunnr from mara into i_mara1  where matnr = p_v_matnr.  " Getting data for mara table&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   SELECT matnr,maktx into i_makt from maktx where matnr = p_v_matnr.                                                           " Getting data for makt table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Implementing the parallel cursor technique&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT i_mara1 INTO wa_mara1.&lt;/P&gt;&lt;P&gt;    LOOP AT i_makt INTO wa_makt FROM lv_index.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF wa_mara1-matnr &amp;lt;&amp;gt; wa_makt-matnr.&lt;/P&gt;&lt;P&gt;        lv_index = sy-tabix.&lt;/P&gt;&lt;P&gt;        EXIT.&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;        Assignment from mara &amp;amp; makt work area to i_mara&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      wa_mara-matnr = wa_mara1-matnr.&lt;/P&gt;&lt;P&gt;      wa_mara-maktx = wa_makt-maktx.&lt;/P&gt;&lt;P&gt;      wa_mara-ersda = wa_mara1-ersda.&lt;/P&gt;&lt;P&gt;      wa_mara-ernam = wa_mara1-ernam.&lt;/P&gt;&lt;P&gt;      wa_mara-mtart = wa_mara1-mtart.&lt;/P&gt;&lt;P&gt;      wa_mara-mbrsh = wa_mara1-mbrsh.&lt;/P&gt;&lt;P&gt;      wa_mara-matkl = wa_mara1-matkl.&lt;/P&gt;&lt;P&gt;      wa_mara-meins = wa_mara1-meins .&lt;/P&gt;&lt;P&gt;      wa_mara-brgew = wa_mara1-brgew.&lt;/P&gt;&lt;P&gt;      wa_mara-volum = wa_mara1-volum.&lt;/P&gt;&lt;P&gt;      wa_mara-kunnr = wa_mara1-kunnr.&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;    Populating a record in final i_mara table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      APPEND wa_mara TO i_mara.&lt;/P&gt;&lt;P&gt;      CLEAR: wa_mara,&lt;/P&gt;&lt;P&gt;             wa_makt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    CLEAR: wa_mara,&lt;/P&gt;&lt;P&gt;           wa_makt.&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;  SORT i_mara BY matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_material_details&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;/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  display_mara&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 display_mara .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM display_header_mara.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT i_mara INTO wa_mara.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    FORMAT COLOR 5.&lt;/P&gt;&lt;P&gt;    WRITE &lt;span class="lia-unicode-emoji" title=":confused_face:"&gt;😕&lt;/span&gt; sy-uline,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       wa_mara-matnr,sy-vline,&lt;/P&gt;&lt;P&gt;       wa_mara-maktx,sy-vline,&lt;/P&gt;&lt;P&gt;       wa_mara-ersda,sy-vline,&lt;/P&gt;&lt;P&gt;       wa_mara-ernam,sy-vline,&lt;/P&gt;&lt;P&gt;       wa_mara-mtart,sy-vline,&lt;/P&gt;&lt;P&gt;       wa_mara-mbrsh,sy-vline,&lt;/P&gt;&lt;P&gt;       wa_mara-matkl,sy-vline,&lt;/P&gt;&lt;P&gt;       wa_mara-meins,sy-vline,&lt;/P&gt;&lt;P&gt;       wa_mara-brgew,sy-vline,&lt;/P&gt;&lt;P&gt;       wa_mara-volum,sy-vline,&lt;/P&gt;&lt;P&gt;       wa_mara-kunnr,sy-vline.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " display_mara&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  display_header_mara&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 display_header_mara .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE: /2        text-013 COLOR COL_KEY INTENSIFIED ON,&lt;/P&gt;&lt;P&gt;             11     sy-vline,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            /1      sy-vline,&lt;/P&gt;&lt;P&gt;            9(10)    text-017 COLOR COL_KEY ,&lt;/P&gt;&lt;P&gt;            20      sy-vline,&lt;/P&gt;&lt;P&gt;            21(14) text-018 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;            36      sy-vline,&lt;/P&gt;&lt;P&gt;            37(8) text-019 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;            46      sy-vline,&lt;/P&gt;&lt;P&gt;            47(12)   text-020 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;            59      sy-vline,&lt;/P&gt;&lt;P&gt;            60(10) text-021 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;            71      sy-vline,&lt;/P&gt;&lt;P&gt;            72(10) text-022 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;            83      sy-vline,&lt;/P&gt;&lt;P&gt;            84(18)   text-023 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;            103      sy-vline,&lt;/P&gt;&lt;P&gt;            104(9)   text-024 COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;            114     sy-vline,&lt;/P&gt;&lt;P&gt;            115(20) text-025 COLOR COL_TOTAL,&lt;/P&gt;&lt;P&gt;            136     sy-vline,&lt;/P&gt;&lt;P&gt;           137(18) text-026  COLOR COL_HEADING,&lt;/P&gt;&lt;P&gt;            156     sy-vline,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;           /1(156) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " display_header_mara&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please reward points if useful.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 16 Apr 2008 12:07:43 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/report/m-p/3653730#M880091</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-16T12:07:43Z</dc:date>
    </item>
    <item>
      <title>Re: Report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/report/m-p/3653731#M880092</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;Go through the link&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.sap.com/www.saptechnical.com" target="test_blank"&gt;www.saptechnical.com&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks and Best Regards,&lt;/P&gt;&lt;P&gt;Ruthra&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 16 Apr 2008 12:07:52 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/report/m-p/3653731#M880092</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-16T12:07:52Z</dc:date>
    </item>
    <item>
      <title>Re: Report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/report/m-p/3653732#M880093</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Goto transaction code : ABAPDOCU ... &lt;/P&gt;&lt;P&gt;U'll find many examples ....&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 16 Apr 2008 12:08:01 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/report/m-p/3653732#M880093</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-16T12:08:01Z</dc:date>
    </item>
    <item>
      <title>Re: Report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/report/m-p/3653733#M880094</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Report  Z_OPEN_CLOSE                                                *&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  Z_OPEN_CLOSE MESSAGE-ID YW2 LINE-SIZE 231 LINE-COUNT 45&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;NO STANDARD PAGE HEADING.&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Type Declaration *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;TYPE-POOLS SLIS.&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Tables *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;TABLES: MKPF, " Material Document: Header Data&lt;/P&gt;&lt;P&gt;        MSEG, " Material Document: Item Data&lt;/P&gt;&lt;P&gt;        MARA,&lt;/P&gt;&lt;P&gt;        MARD,&lt;/P&gt;&lt;P&gt;        S031,&lt;/P&gt;&lt;P&gt;        EKKO,&lt;/P&gt;&lt;P&gt;        EKPO,&lt;/P&gt;&lt;P&gt;        LIKP,&lt;/P&gt;&lt;P&gt;        MAKT,&lt;/P&gt;&lt;P&gt;        J_1IWRKCUS,&lt;/P&gt;&lt;P&gt;        T001W,&lt;/P&gt;&lt;P&gt;        WB2_V_MKPF_MSEG2,&lt;/P&gt;&lt;P&gt;        MMIM_REP_PRINT,&lt;/P&gt;&lt;P&gt;        YW2_STKMOVEMENTS,&lt;/P&gt;&lt;P&gt;        YPLNT,&lt;/P&gt;&lt;P&gt;        MARDH.&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Tables *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;DATA: I_WERKS LIKE J_1IWRKCUS OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF I_YPLNT OCCURS 0,&lt;/P&gt;&lt;P&gt;         PPLNT LIKE YPLNT-PPLNT,&lt;/P&gt;&lt;P&gt;         WPLNT LIKE YPLNT-WPLNT,&lt;/P&gt;&lt;P&gt;      END OF I_YPLNT.&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF I_MKPF OCCURS 0,&lt;/P&gt;&lt;P&gt;        MBLNR LIKE MKPF-MBLNR,&lt;/P&gt;&lt;P&gt;        MJAHR LIKE MKPF-MJAHR,&lt;/P&gt;&lt;P&gt;        BUDAT LIKE MKPF-BUDAT,&lt;/P&gt;&lt;P&gt;        VGART LIKE MKPF-VGART,&lt;/P&gt;&lt;P&gt;        BWART LIKE MSEG-BWART,&lt;/P&gt;&lt;P&gt;        MATNR LIKE MSEG-MATNR,&lt;/P&gt;&lt;P&gt;        WERKS LIKE MSEG-WERKS,&lt;/P&gt;&lt;P&gt;        LGORT LIKE MSEG-LGORT,&lt;/P&gt;&lt;P&gt;        MENGE LIKE MSEG-MENGE,&lt;/P&gt;&lt;P&gt;        MEINS LIKE MSEG-MEINS,&lt;/P&gt;&lt;P&gt;        KUNNR LIKE MSEG-KUNNR,&lt;/P&gt;&lt;P&gt;        ZEILE LIKE MSEG-ZEILE,&lt;/P&gt;&lt;P&gt;        XAUTO LIKE MSEG-XAUTO,&lt;/P&gt;&lt;P&gt;        SHKZG LIKE MSEG-SHKZG,&lt;/P&gt;&lt;P&gt;        MATNR1 LIKE MSEG-MATNR,&lt;/P&gt;&lt;P&gt;      END OF I_MKPF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF I_MARDH OCCURS 0,&lt;/P&gt;&lt;P&gt;       WERKS LIKE MARDH-WERKS,&lt;/P&gt;&lt;P&gt;       MEINS LIKE MARA-MEINS,&lt;/P&gt;&lt;P&gt;       MATNR LIKE MARDH-MATNR,&lt;/P&gt;&lt;P&gt;       LGORT LIKE MARDH-LGORT,&lt;/P&gt;&lt;P&gt;       LABST LIKE MARDH-LABST,&lt;/P&gt;&lt;P&gt;       LFGJA LIKE MARDH-LFGJA, "Added -MB&lt;/P&gt;&lt;P&gt;       LFMON LIKE MARDH-LFMON, "Added -MB&lt;/P&gt;&lt;P&gt;       PERIO(6),&lt;/P&gt;&lt;P&gt;       INSME LIKE MARDH-LABST,&lt;/P&gt;&lt;P&gt;       EINME LIKE MARDH-LABST,&lt;/P&gt;&lt;P&gt;       SPEME LIKE MARDH-LABST,&lt;/P&gt;&lt;P&gt;       RETME LIKE MARDH-LABST,&lt;/P&gt;&lt;P&gt;       O_STK LIKE MARDH-LABST, " Opening Stock&lt;/P&gt;&lt;P&gt;       C_STK LIKE MARDH-LABST, " Closing Stock&lt;/P&gt;&lt;P&gt;      END OF I_MARDH.&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF I_MARD OCCURS 0,&lt;/P&gt;&lt;P&gt;       WERKS LIKE MARD-WERKS,&lt;/P&gt;&lt;P&gt;       MATNR LIKE MARD-MATNR,&lt;/P&gt;&lt;P&gt;       LGORT LIKE MARD-LGORT,&lt;/P&gt;&lt;P&gt;       LABST LIKE MARD-LABST,&lt;/P&gt;&lt;P&gt;       INSME LIKE MARD-LABST,&lt;/P&gt;&lt;P&gt;       MEINS LIKE MARA-MEINS,&lt;/P&gt;&lt;P&gt;       EINME LIKE MARD-LABST,&lt;/P&gt;&lt;P&gt;       SPEME LIKE MARD-LABST,&lt;/P&gt;&lt;P&gt;       RETME LIKE MARD-LABST,&lt;/P&gt;&lt;P&gt;      END OF I_MARD.&lt;/P&gt;&lt;P&gt;DATA: I_MARD1 LIKE I_MARD OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: I_MARDH1 LIKE I_MARDH OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF I_MKPF1 OCCURS 0,&lt;/P&gt;&lt;P&gt;        MBLNR LIKE MKPF-MBLNR,&lt;/P&gt;&lt;P&gt;        WERKS LIKE MSEG-WERKS,&lt;/P&gt;&lt;P&gt;        MATNR LIKE MSEG-MATNR,&lt;/P&gt;&lt;P&gt;        BUDAT LIKE MKPF-BUDAT,&lt;/P&gt;&lt;P&gt;        BWART LIKE MSEG-BWART,&lt;/P&gt;&lt;P&gt;        MJAHR LIKE MKPF-MJAHR,&lt;/P&gt;&lt;P&gt;        VGART LIKE MKPF-VGART,&lt;/P&gt;&lt;P&gt;        LGORT LIKE MSEG-LGORT,&lt;/P&gt;&lt;P&gt;        MENGE LIKE MSEG-MENGE,&lt;/P&gt;&lt;P&gt;        MEINS LIKE MSEG-MEINS,&lt;/P&gt;&lt;P&gt;        XAUTO LIKE MSEG-XAUTO,&lt;/P&gt;&lt;P&gt;        SHKZG LIKE MSEG-SHKZG,&lt;/P&gt;&lt;P&gt;      END OF I_MKPF1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF I_MKPF2 OCCURS 0,&lt;/P&gt;&lt;P&gt;       WERKS LIKE MSEG-WERKS,&lt;/P&gt;&lt;P&gt;       MATNR LIKE MSEG-MATNR,&lt;/P&gt;&lt;P&gt;       BUDAT LIKE MKPF-BUDAT,&lt;/P&gt;&lt;P&gt;       BWART LIKE MSEG-BWART,&lt;/P&gt;&lt;P&gt;       MJAHR LIKE MKPF-MJAHR,&lt;/P&gt;&lt;P&gt;       VGART LIKE MKPF-VGART,&lt;/P&gt;&lt;P&gt;       LGORT LIKE MSEG-LGORT,&lt;/P&gt;&lt;P&gt;       MENGE LIKE MSEG-MENGE,&lt;/P&gt;&lt;P&gt;       MEINS LIKE MSEG-MEINS,&lt;/P&gt;&lt;P&gt;       XAUTO LIKE MSEG-XAUTO,&lt;/P&gt;&lt;P&gt;     END OF I_MKPF2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF I_FINAL5 OCCURS 0,&lt;/P&gt;&lt;P&gt;       WERKS LIKE MSEG-WERKS, " Plant&lt;/P&gt;&lt;P&gt;       MATNR LIKE MSEG-MATNR, " Material&lt;/P&gt;&lt;P&gt;       LGORT LIKE MSEG-LGORT, " Storage Location&lt;/P&gt;&lt;P&gt;       BUDAT LIKE MKPF-BUDAT, " Posting Date&lt;/P&gt;&lt;P&gt;       MTART LIKE MARA-MTART, " Material Type&lt;/P&gt;&lt;P&gt;       SPMON LIKE S031-SPMON, " Month&lt;/P&gt;&lt;P&gt;       MAKTX LIKE MAKT-MAKTX, " Description&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;meins(3), " UOM&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        MEINS LIKE MSEG-MEINS,&lt;/P&gt;&lt;P&gt;        O_STK LIKE MARDH-LABST, " opening stock&lt;/P&gt;&lt;P&gt;        TRECEP LIKE MARDH-LABST, " total receipts&lt;/P&gt;&lt;P&gt;        PRODU LIKE MARDH-LABST, " Net Receipts - Production&lt;/P&gt;&lt;P&gt;        RECEP LIKE MARDH-LABST, " Net Receipts - Receipts&lt;/P&gt;&lt;P&gt;        SAL_RET LIKE MARDH-LABST, " Net Receipts - Sales Return&lt;/P&gt;&lt;P&gt;        TDISP LIKE MARDH-LABST, " total dispatches&lt;/P&gt;&lt;P&gt;        CUSTMR LIKE MARDH-LABST, " Net Dispatches - Customers&lt;/P&gt;&lt;P&gt;        OPLANT LIKE MARDH-LABST, " Net Dispatches - To Other Plant&lt;/P&gt;&lt;P&gt;        TLOSS LIKE MARDH-LABST, " Total Loss&lt;/P&gt;&lt;P&gt;        TRLOSS LIKE MARDH-LABST, " Transit Loss&lt;/P&gt;&lt;P&gt;        WHLOSS LIKE MARDH-LABST, " Warehouse Loss&lt;/P&gt;&lt;P&gt;        C_STK LIKE MARDH-LABST, " Closing Stock&lt;/P&gt;&lt;P&gt;        TRFSTK LIKE MARDH-LABST, "Transfer stock&lt;/P&gt;&lt;P&gt;        MENGE LIKE MSEG-MENGE,&lt;/P&gt;&lt;P&gt;        OTHADJ LIKE MARDH-LABST,&lt;/P&gt;&lt;P&gt;      END OF I_FINAL5.&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF I_FINAL OCCURS 0,&lt;/P&gt;&lt;P&gt;        WERKS LIKE MSEG-WERKS, " Plant&lt;/P&gt;&lt;P&gt;        MATNR LIKE MSEG-MATNR, " Material&lt;/P&gt;&lt;P&gt;        BUDAT LIKE MKPF-BUDAT, " Posting Date&lt;/P&gt;&lt;P&gt;        MTART LIKE MARA-MTART, " Material Type&lt;/P&gt;&lt;P&gt;        SPMON LIKE S031-SPMON, " Month&lt;/P&gt;&lt;P&gt;        MAKTX LIKE MAKT-MAKTX, " Description&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;meins(3), " UOM&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        MEINS LIKE MSEG-MEINS,&lt;/P&gt;&lt;P&gt;        O_STK LIKE MARDH-LABST, " opening stock&lt;/P&gt;&lt;P&gt;        TRECEP LIKE MARDH-LABST, " total receipts&lt;/P&gt;&lt;P&gt;        PRODU LIKE MARDH-LABST, " Net Receipts - Production&lt;/P&gt;&lt;P&gt;        RECEP LIKE MARDH-LABST, " Net Receipts - Receipts&lt;/P&gt;&lt;P&gt;        SAL_RET LIKE MARDH-LABST, " Net Receipts - Sales Return&lt;/P&gt;&lt;P&gt;        TDISP LIKE MARDH-LABST, " total dispatches&lt;/P&gt;&lt;P&gt;        CUSTMR LIKE MARDH-LABST, " Net Dispatches - Customers&lt;/P&gt;&lt;P&gt;        OPLANT LIKE MARDH-LABST, " Net Dispatches - To Other Plant&lt;/P&gt;&lt;P&gt;        TRFSTK LIKE MARDH-LABST, "Material Transfer stock&lt;/P&gt;&lt;P&gt;        TRLOSS LIKE MARDH-LABST, " Transit Loss&lt;/P&gt;&lt;P&gt;        WHLOSS LIKE MARDH-LABST, " Warehouse Loss&lt;/P&gt;&lt;P&gt;        TLOSS LIKE MARDH-LABST, " Total Loss&lt;/P&gt;&lt;P&gt;        C_STK LIKE MARDH-LABST, " Closing Stock&lt;/P&gt;&lt;P&gt;        OTHADJ LIKE MARDH-LABST,&lt;/P&gt;&lt;P&gt;       END OF I_FINAL.&lt;/P&gt;&lt;P&gt;DATA: I_FINAL1 LIKE I_FINAL OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF I_FINAL_TEMP OCCURS 0,&lt;/P&gt;&lt;P&gt;        WERKS LIKE MSEG-WERKS, " Plant&lt;/P&gt;&lt;P&gt;        MATNR LIKE MSEG-MATNR, " Material&lt;/P&gt;&lt;P&gt;        MTART LIKE MARA-MTART, " Material Type&lt;/P&gt;&lt;P&gt;        MAKTX LIKE MAKT-MAKTX, " Description&lt;/P&gt;&lt;P&gt;        MEINS LIKE MSEG-MEINS,&lt;/P&gt;&lt;P&gt;        O_STK LIKE MARDH-LABST, " opening stock&lt;/P&gt;&lt;P&gt;        TRECEP LIKE MARDH-LABST, " total receipts&lt;/P&gt;&lt;P&gt;        PRODU LIKE MARDH-LABST, " Net Receipts - Production&lt;/P&gt;&lt;P&gt;        RECEP LIKE MARDH-LABST, " Net Receipts - Receipts&lt;/P&gt;&lt;P&gt;        SAL_RET LIKE MARDH-LABST, " Net Receipts - Sales Return&lt;/P&gt;&lt;P&gt;        TDISP LIKE MARDH-LABST, " total dispatches&lt;/P&gt;&lt;P&gt;        CUSTMR LIKE MARDH-LABST, " Net Dispatches - Customers&lt;/P&gt;&lt;P&gt;        OPLANT LIKE MARDH-LABST, " Net Dispatches - To Other Plant&lt;/P&gt;&lt;P&gt;        TRFSTK LIKE MARDH-LABST, "Material Transfer stock&lt;/P&gt;&lt;P&gt;        TRLOSS LIKE MARDH-LABST, " Transit Loss&lt;/P&gt;&lt;P&gt;        WHLOSS LIKE MARDH-LABST, " Warehouse Loss&lt;/P&gt;&lt;P&gt;        TLOSS LIKE MARDH-LABST, " Total Loss&lt;/P&gt;&lt;P&gt;        C_STK LIKE MARDH-LABST, " Closing Stock&lt;/P&gt;&lt;P&gt;        OTHADJ LIKE MARDH-LABST,&lt;/P&gt;&lt;P&gt;      END OF I_FINAL_TEMP.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;For Materials&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF I_MARA OCCURS 0,&lt;/P&gt;&lt;P&gt;       MATNR TYPE MARA-MATNR,&lt;/P&gt;&lt;P&gt;       MTART TYPE MARA-MTART,&lt;/P&gt;&lt;P&gt;       MEINS LIKE MARA-MEINS,&lt;/P&gt;&lt;P&gt;       LABST TYPE MARD-LABST,&lt;/P&gt;&lt;P&gt;       MAKTX LIKE MAKT-MAKTX,&lt;/P&gt;&lt;P&gt;      END OF I_MARA.&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF I_STKMVMNTS OCCURS 0,&lt;/P&gt;&lt;P&gt;       BWART LIKE MSEG-BWART,&lt;/P&gt;&lt;P&gt;       SHKZG LIKE MSEG-SHKZG,&lt;/P&gt;&lt;P&gt;       VZBEW LIKE YW2_STKMOVEMENTS-VZBEW,&lt;/P&gt;&lt;P&gt;      END OF I_STKMVMNTS.&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF I_FINALT OCCURS 0,&lt;/P&gt;&lt;P&gt;       WERKS LIKE MSEG-WERKS, " Plant&lt;/P&gt;&lt;P&gt;       MATNR LIKE MSEG-MATNR, " Material&lt;/P&gt;&lt;P&gt;       BUDAT LIKE MKPF-BUDAT, " Posting Date&lt;/P&gt;&lt;P&gt;       MTART LIKE MARA-MTART, " Material Type&lt;/P&gt;&lt;P&gt;       SPMON LIKE S031-SPMON, " Month&lt;/P&gt;&lt;P&gt;       MAKTX LIKE MAKT-MAKTX, " Description&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;meins(3), " UOM&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;       MEINS LIKE MSEG-MEINS,&lt;/P&gt;&lt;P&gt;       O_STK LIKE MARDH-LABST, " opening stock&lt;/P&gt;&lt;P&gt;       TRECEP LIKE MARDH-LABST, " total receipts&lt;/P&gt;&lt;P&gt;       PRODU LIKE MARDH-LABST, " Net Receipts - Production&lt;/P&gt;&lt;P&gt;       RECEP LIKE MARDH-LABST, " Net Receipts - Receipts&lt;/P&gt;&lt;P&gt;       SAL_RET LIKE MARDH-LABST, " Net Receipts - Sales Return&lt;/P&gt;&lt;P&gt;       TDISP LIKE MARDH-LABST, " total dispatches&lt;/P&gt;&lt;P&gt;       CUSTMR LIKE MARDH-LABST, " Net Dispatches - Customers&lt;/P&gt;&lt;P&gt;       OPLANT LIKE MARDH-LABST, " Net Dispatches - To Other Plant&lt;/P&gt;&lt;P&gt;       TRFSTK LIKE MARDH-LABST, "Material Transfer stock&lt;/P&gt;&lt;P&gt;       TRLOSS LIKE MARDH-LABST, " Transit Loss&lt;/P&gt;&lt;P&gt;       WHLOSS LIKE MARDH-LABST, " Warehouse Loss&lt;/P&gt;&lt;P&gt;       TLOSS LIKE MARDH-LABST, " Total Loss&lt;/P&gt;&lt;P&gt;       C_STK LIKE MARDH-LABST, " Closing Stock&lt;/P&gt;&lt;P&gt;       OTHADJ LIKE MARDH-LABST,&lt;/P&gt;&lt;P&gt;       MONTH(8) ,&lt;/P&gt;&lt;P&gt;      END OF I_FINALT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: IMKPFT LIKE I_MKPF OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: IMKPFT1 LIKE I_MKPF1 OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: IMARDT LIKE I_MARD OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: IMARDHT LIKE I_MARDH OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: T_FINAL LIKE I_MKPF OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: IMKPFT2 LIKE I_MKPF OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FCAT is used for the field catalog&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: FCAT TYPE TABLE OF SLIS_FIELDCAT_ALV WITH NON-UNIQUE DEFAULT KEY&lt;/P&gt;&lt;P&gt;                  WITH HEADER LINE INITIAL SIZE 0,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for excluding the ICONs from the application toolbar&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      FEXC TYPE TABLE OF SLIS_EXTAB WITH NON-UNIQUE DEFAULT KEY&lt;/P&gt;&lt;P&gt;                 WITH HEADER LINE INITIAL SIZE 0,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FS_LAYO is used for Grid Layout&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      FS_LAYO TYPE SLIS_LAYOUT_ALV,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FEVENTS to handle the events TOP OF PAGE &amp;amp; USER_COMMAND&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      FEVENTS TYPE TABLE OF SLIS_ALV_EVENT WITH NON-UNIQUE DEFAULT KEY&lt;/P&gt;&lt;P&gt;                 WITH HEADER LINE INITIAL SIZE 0,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FHEADER is used for List header&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      FHEADER TYPE TABLE OF SLIS_LISTHEADER WITH NON-UNIQUE DEFAULT KEY&lt;/P&gt;&lt;P&gt;                 WITH HEADER LINE INITIAL SIZE 0,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;sort is used for sorting&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      FSORT TYPE TABLE OF SLIS_SORTINFO_ALV WITH NON-UNIQUE DEFAULT KEY&lt;/P&gt;&lt;P&gt;                 WITH HEADER LINE INITIAL SIZE 0,&lt;/P&gt;&lt;P&gt;      FCAT1 TYPE TABLE OF SLIS_FIELDCAT_ALV WITH NON-UNIQUE DEFAULT KEY&lt;/P&gt;&lt;P&gt;                WITH HEADER LINE INITIAL SIZE 0,&lt;/P&gt;&lt;P&gt;      FS_LAYO1 TYPE SLIS_LAYOUT_ALV,&lt;/P&gt;&lt;P&gt;      GT_LIST_TOP_OF_PAGE1 TYPE SLIS_T_LISTHEADER,&lt;/P&gt;&lt;P&gt;      FEVENTS1 TYPE TABLE OF SLIS_ALV_EVENT WITH NON-UNIQUE DEFAULT KEY&lt;/P&gt;&lt;P&gt;             WITH HEADER LINE INITIAL SIZE 0,&lt;/P&gt;&lt;P&gt;       FHEADER1 TYPE TABLE OF SLIS_LISTHEADER WITH NON-UNIQUE DEFAULT   &lt;/P&gt;&lt;P&gt;              KEY WITH HEADER LINE INITIAL SIZE 0,&lt;/P&gt;&lt;P&gt;       G_STATU_071 TYPE SLIS_FORMNAME VALUE 'Z_PFSTATUS',&lt;/P&gt;&lt;P&gt;       ALV_VARIANT1 LIKE DISVARIANT.&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Variable Declaration *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;TYPES: TRFF_TYPE_DEC_6_5(6) TYPE P DECIMALS 5.&lt;/P&gt;&lt;P&gt;DATA: FYEAR(4),&lt;/P&gt;&lt;P&gt;      MON(2),&lt;/P&gt;&lt;P&gt;      FYEAR1(4),&lt;/P&gt;&lt;P&gt;      MON1(2),&lt;/P&gt;&lt;P&gt;      OBAL LIKE MARD-LABST,&lt;/P&gt;&lt;P&gt;      CBAL LIKE MARD-LABST,&lt;/P&gt;&lt;P&gt;      INDEX TYPE I,&lt;/P&gt;&lt;P&gt;      COUNT,&lt;/P&gt;&lt;P&gt;      COUNT1 TYPE I,&lt;/P&gt;&lt;P&gt;      O_STK TYPE P DECIMALS 3,&lt;/P&gt;&lt;P&gt;      C_STK TYPE P DECIMALS 3,&lt;/P&gt;&lt;P&gt;      V_MJAHR LIKE MKPF-MJAHR,&lt;/P&gt;&lt;P&gt;      MONTHS TYPE TRFF_TYPE_DEC_6_5,&lt;/P&gt;&lt;P&gt;      MONTH TYPE I.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Global variables for handling ALV functionality&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: ALV_KEYINFO TYPE SLIS_KEYINFO_ALV,&lt;/P&gt;&lt;P&gt;      ALV_VARIANT LIKE DISVARIANT,&lt;/P&gt;&lt;P&gt;      ALV_LAYOUT TYPE SLIS_LAYOUT_ALV,&lt;/P&gt;&lt;P&gt;      ALV_REPID LIKE SY-REPID,&lt;/P&gt;&lt;P&gt;      ALV_PRINT TYPE SLIS_PRINT_ALV,&lt;/P&gt;&lt;P&gt;      ALV_DETAIL_FUNC(30),&lt;/P&gt;&lt;P&gt;      ALV_DEFAULT_VARIANT LIKE DISVARIANT-VARIANT,&lt;/P&gt;&lt;P&gt;      ALV_COLOURIZE_FIELDS LIKE MMIM_REP_PRINT-COLOR.&lt;/P&gt;&lt;P&gt;RANGES: R_BUDAT FOR MKPF-BUDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Added by Prabhu for year on 26.4.05.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: IDATE LIKE R_BUDAT OCCURS 0 WITH HEADER LINE.&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Selection Screen Elements *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;SELECTION-SCREEN BEGIN OF BLOCK BLK WITH FRAME TITLE TEXT-001.&lt;/P&gt;&lt;P&gt;  SELECT-OPTIONS: S_WERKS FOR MARD-WERKS OBLIGATORY NO INTERVALS.&lt;/P&gt;&lt;P&gt;  PARAMETER: P_SPMON LIKE S031-SPMON NO-DISPLAY .&lt;/P&gt;&lt;P&gt;  SELECT-OPTIONS: S_MATNR FOR MARA-MATNR OBLIGATORY,&lt;/P&gt;&lt;P&gt;                  S_LGORT FOR MSEG-LGORT NO-EXTENSION NO INTERVALS,&lt;/P&gt;&lt;P&gt;                  S_MBLNR FOR MKPF-MBLNR,&lt;/P&gt;&lt;P&gt;                  S_BUDAT FOR MKPF-BUDAT OBLIGATORY .&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK BLK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK BLK3 WITH FRAME TITLE TEXT-004.&lt;/P&gt;&lt;P&gt;      PARAMETER : MTART LIKE MARA-MTART DEFAULT 'FERT' NO-DISPLAY.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK BLK3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK BLK2 WITH FRAME TITLE TEXT-003.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK BLK2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ADDED BY PRABHU FOR DAY-WISE REPORT.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK B3 WITH FRAME TITLE TEXT-007.&lt;/P&gt;&lt;P&gt;  PARAMETERS: D1 RADIOBUTTON GROUP P1 DEFAULT 'X',&lt;/P&gt;&lt;P&gt;              M1 RADIOBUTTON GROUP P1,&lt;/P&gt;&lt;P&gt;              Y1 RADIOBUTTON GROUP P1.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK B3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-006.&lt;/P&gt;&lt;P&gt;PARAMETERS: ALV_DEF LIKE DISVARIANT-VARIANT.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK B2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: S_BUDAT1 LIKE S_BUDAT OCCURS 0 WITH HEADER LINE."prabhu&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Initialization *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;INITIALIZATION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM ALV_INIT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR ALV_DEF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM ALV_F4.&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;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;At Selection Screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;*&lt;/P&gt;&lt;P&gt;*AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_spmon.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;PERFORM monat_f4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&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;At Selection Screen *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;AT SELECTION-SCREEN.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;checking for the layout&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM ALV_CHECK.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;authorisation check for the Plant&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;PERFORM auth_check.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Validation for the Plant&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM VALIDITY_CHECK.&lt;/P&gt;&lt;P&gt;  IF MTART NE 'FERT'.&lt;/P&gt;&lt;P&gt;    MESSAGE E041 WITH 'Material Type must be FERT Only...'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  IF D1 = 'X'." On 26.4.05.&lt;/P&gt;&lt;P&gt;    P_SPMON&lt;EM&gt;0(4) = S_BUDAT-LOW&lt;/EM&gt;0(4).&lt;/P&gt;&lt;P&gt;    P_SPMON&lt;EM&gt;4(2) = S_BUDAT-LOW&lt;/EM&gt;4(2).&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    P_SPMON&lt;EM&gt;0(4) = S_BUDAT-LOW&lt;/EM&gt;0(4).&lt;/P&gt;&lt;P&gt;    P_SPMON&lt;EM&gt;4(2) = S_BUDAT-LOW&lt;/EM&gt;4(2).&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT S_BUDAT.&lt;/P&gt;&lt;P&gt;    IF S_BUDAT-HIGH IS INITIAL.&lt;/P&gt;&lt;P&gt;      S_BUDAT-HIGH = S_BUDAT-LOW.&lt;/P&gt;&lt;P&gt;      MODIFY S_BUDAT.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;  IDATE-LOW = S_BUDAT-LOW.&lt;/P&gt;&lt;P&gt;  IDATE-HIGH = S_BUDAT-HIGH.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'FIMA_DAYS_AND_MONTHS_AND_YEARS'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;       I_DATE_FROM = IDATE-LOW&lt;/P&gt;&lt;P&gt;       I_DATE_TO = IDATE-HIGH&lt;/P&gt;&lt;P&gt;   IMPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;E_DAYS =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      E_MONTHS = MONTH&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;E_YEARS =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: I(3) TYPE C.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  I = S_BUDAT-LOW+4(2).&lt;/P&gt;&lt;P&gt;  CLEAR: R_BUDAT.&lt;/P&gt;&lt;P&gt;  REFRESH: R_BUDAT.&lt;/P&gt;&lt;P&gt;*added by Prabhu for Only for Oneday.on 18.5.5&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF MONTH EQ '0'.&lt;/P&gt;&lt;P&gt;    MONTH = MONTH + 1.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*added by Prabhu for Only for Oneday.on 18.5.5&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DO MONTH TIMES.&lt;/P&gt;&lt;P&gt;    R_BUDAT-LOW = S_BUDAT-LOW.&lt;/P&gt;&lt;P&gt;    APPEND R_BUDAT.&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;  I = 0.&lt;/P&gt;&lt;P&gt;  LOOP AT R_BUDAT.&lt;/P&gt;&lt;P&gt;    R_BUDAT-LOW&lt;EM&gt;4(2) = S_BUDAT-LOW&lt;/EM&gt;4(2) + I.&lt;/P&gt;&lt;P&gt;    I = I + 1.&lt;/P&gt;&lt;P&gt;    R_BUDAT-LOW+6(2) = '01'.&lt;/P&gt;&lt;P&gt;    MODIFY R_BUDAT.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;  LOOP AT R_BUDAT.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'RP_LAST_DAY_OF_MONTHS'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;         DAY_IN = R_BUDAT-LOW&lt;/P&gt;&lt;P&gt;       IMPORTING&lt;/P&gt;&lt;P&gt;         LAST_DAY_OF_MONTH = R_BUDAT-HIGH&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        DAY_IN_NO_DATE = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        OTHERS = 2&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    .&lt;/P&gt;&lt;P&gt;    MODIFY R_BUDAT.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;  LOOP AT R_BUDAT.&lt;/P&gt;&lt;P&gt;    IF R_BUDAT-LOW&lt;EM&gt;4(2) = S_BUDAT-LOW&lt;/EM&gt;4(2).&lt;/P&gt;&lt;P&gt;      R_BUDAT-LOW = S_BUDAT-LOW.&lt;/P&gt;&lt;P&gt;      MODIFY R_BUDAT.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    IF R_BUDAT-HIGH&lt;EM&gt;4(2) = S_BUDAT-HIGH&lt;/EM&gt;4(2).&lt;/P&gt;&lt;P&gt;      R_BUDAT-HIGH = S_BUDAT-HIGH.&lt;/P&gt;&lt;P&gt;      MODIFY R_BUDAT.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;For Summary on 26.4.05.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF Y1 = 'X'.&lt;/P&gt;&lt;P&gt;      CLEAR R_BUDAT.&lt;/P&gt;&lt;P&gt;      REFRESH R_BUDAT.&lt;/P&gt;&lt;P&gt;      R_BUDAT-LOW = S_BUDAT-LOW.&lt;/P&gt;&lt;P&gt;      R_BUDAT-HIGH = S_BUDAT-HIGH.&lt;/P&gt;&lt;P&gt;      APPEND R_BUDAT.&lt;/P&gt;&lt;P&gt;      CLEAR R_BUDAT.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;At Selection Screen *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN OUTPUT.&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Start of Selection *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;  V_MJAHR = P_SPMON+0(4).&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get plant distinction warehouse/production&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM GET_PLANT_DISTINCTION.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Collect the data from various tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM GETDATA_FG_STOCK.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;here the number of rows in the output table is found&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM OUTPUT_TABLE_CHECK.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;here the top of the page code is written, that is to be displayed&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;in the output&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM Z_TOP_OF_PAGE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;here ALV layout properties are set&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM Z_LAYOUT_SETTINGS.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ALV EVENTS for TOP OF PAGE and for USER COMMAND&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM Z_ALV_EVENTS.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;The field catalog is defined for the Primary List is defined in&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;the subroutine CREATE_FIELD_CATALOG include program ZPRRDOCR_FCAT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM Z_CREATE_FIELD_CATALOG.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;This is for displaying the output&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM Z_REUSE_ALV_GRID_DISPLAY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Form getdata_fg_stock&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;Getting data from standard tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM GETDATA_FG_STOCK.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;For getting the Start date &amp;amp; end date of the month&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;PERFORM get_month_dates.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting the Opening Stock from MARDH table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF MON EQ '01'.&lt;/P&gt;&lt;P&gt;    MON1 = MON.&lt;/P&gt;&lt;P&gt;    FYEAR1 = FYEAR.&lt;/P&gt;&lt;P&gt;    MON = '12'.&lt;/P&gt;&lt;P&gt;    FYEAR = FYEAR - 1.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    MON1 = MON.&lt;/P&gt;&lt;P&gt;    FYEAR1 = FYEAR.&lt;/P&gt;&lt;P&gt;    MON = MON - 1.&lt;/P&gt;&lt;P&gt;    FYEAR = FYEAR.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  PERFORM GET_RECORDS_FROM_DB.&lt;/P&gt;&lt;P&gt;*added for Month Summary on 26.4.05.&lt;/P&gt;&lt;P&gt;  LOOP AT R_BUDAT.&lt;/P&gt;&lt;P&gt;    S_BUDAT-LOW = R_BUDAT-LOW.&lt;/P&gt;&lt;P&gt;    S_BUDAT-HIGH = R_BUDAT-HIGH.&lt;/P&gt;&lt;P&gt;*for Month&lt;/P&gt;&lt;P&gt;    P_SPMON&lt;EM&gt;0(4) = S_BUDAT-LOW&lt;/EM&gt;0(4).&lt;/P&gt;&lt;P&gt;    P_SPMON&lt;EM&gt;4(2) = S_BUDAT-LOW&lt;/EM&gt;4(2).&lt;/P&gt;&lt;P&gt;*for summary.&lt;/P&gt;&lt;P&gt;    IF Y1 = 'X'.&lt;/P&gt;&lt;P&gt;      LOOP AT S_BUDAT.&lt;/P&gt;&lt;P&gt;        S_BUDAT1-SIGN = 'I'.&lt;/P&gt;&lt;P&gt;        S_BUDAT1-OPTION = 'NB'.&lt;/P&gt;&lt;P&gt;        S_BUDAT1-LOW = S_BUDAT-LOW.&lt;/P&gt;&lt;P&gt;        S_BUDAT1-HIGH = S_BUDAT-HIGH.&lt;/P&gt;&lt;P&gt;        APPEND S_BUDAT1.&lt;/P&gt;&lt;P&gt;        CLEAR S_BUDAT1.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    IMKPFT[] = I_MKPF[].&lt;/P&gt;&lt;P&gt;    IMKPFT2[] = I_MKPF[].&lt;/P&gt;&lt;P&gt;    IMARDT[] = I_MARD[].&lt;/P&gt;&lt;P&gt;    IMARDHT[] = I_MARDH[].&lt;/P&gt;&lt;P&gt;    PERFORM MONTH_WISE.&lt;/P&gt;&lt;P&gt;    PERFORM PROCESS_MOVEMENTS.&lt;/P&gt;&lt;P&gt;    PERFORM CALCULATE_OPENING_STOCK.&lt;/P&gt;&lt;P&gt;    PERFORM UPDATE_NON_TRANSACTION_ITMS.&lt;/P&gt;&lt;P&gt;    PERFORM DELETE_EMPTY_RECORDS.&lt;/P&gt;&lt;P&gt;    CLEAR: IMARDHT,IMARDT,IMKPFT1,IMKPFT,I_FINAL,I_FINAL5.&lt;/P&gt;&lt;P&gt;    REFRESH: IMARDHT,IMARDT,IMKPFT1,I_FINAL,I_FINAL5,IMKPFT.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;  CLEAR: R_BUDAT.&lt;/P&gt;&lt;P&gt;  REFRESH: R_BUDAT.&lt;/P&gt;&lt;P&gt;*end of changes for month.&lt;/P&gt;&lt;P&gt;ENDFORM. " getdata_fg_stock&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM MONAT_F4 *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&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;F4-Hilfe für Monat *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM MONAT_F4.&lt;/P&gt;&lt;P&gt;  DATA: BEGIN OF MF_DYNPFIELDS OCCURS 1.&lt;/P&gt;&lt;P&gt;          INCLUDE STRUCTURE DYNPREAD.&lt;/P&gt;&lt;P&gt;  DATA: END OF MF_DYNPFIELDS.&lt;/P&gt;&lt;P&gt;  DATA: MF_RETURNCODE LIKE SY-SUBRC,&lt;/P&gt;&lt;P&gt;         MF_MONAT LIKE ISELLIST-MONTH,&lt;/P&gt;&lt;P&gt;         MF_HLP_REPID LIKE SY-REPID.&lt;/P&gt;&lt;P&gt;  FIELD-SYMBOLS: .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Wert von Dynpro lesen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  GET CURSOR FIELD MF_DYNPFIELDS-FIELDNAME.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND MF_DYNPFIELDS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MF_HLP_REPID = SY-REPID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DO 2 TIMES.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'DYNP_VALUES_READ'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        DYNAME               = MF_HLP_REPID&lt;/P&gt;&lt;P&gt;        DYNUMB               = SY-DYNNR&lt;/P&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;        DYNPFIELDS           = MF_DYNPFIELDS&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        INVALID_ABAPWORKAREA = 01&lt;/P&gt;&lt;P&gt;        INVALID_DYNPROFIELD  = 02&lt;/P&gt;&lt;P&gt;        INVALID_DYNPRONAME   = 03&lt;/P&gt;&lt;P&gt;        INVALID_DYNPRONUMMER = 04&lt;/P&gt;&lt;P&gt;        INVALID_REQUEST      = 05&lt;/P&gt;&lt;P&gt;        NO_FIELDDESCRIPTION  = 06&lt;/P&gt;&lt;P&gt;        UNDEFIND_ERROR       = 07.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC = 3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Aktuelles Dynpro ist Wertemengenbild&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MF_HLP_REPID = 'SAPLALDB'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      READ TABLE MF_DYNPFIELDS INDEX 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Unterstriche durch Blanks ersetzen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      TRANSLATE MF_DYNPFIELDS-FIELDVALUE USING '_ '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Konvertierung ins interne Format&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_PERI_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        INPUT         = MF_DYNPFIELDS-FIELDVALUE&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        OUTPUT        = MF_MONAT&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        ERROR_MESSAGE = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF MF_MONAT IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Monat ist initial =&amp;gt; Vorschlagswert aus akt. Datum ableiten&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MF_MONAT = SY-DATLO(6).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'POPUP_TO_SELECT_MONTH'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        ACTUAL_MONTH               = MF_MONAT&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        SELECTED_MONTH             = MF_MONAT&lt;/P&gt;&lt;P&gt;        RETURN_CODE                = MF_RETURNCODE&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        FACTORY_CALENDAR_NOT_FOUND = 01&lt;/P&gt;&lt;P&gt;        HOLIDAY_CALENDAR_NOT_FOUND = 02&lt;/P&gt;&lt;P&gt;        MONTH_NOT_FOUND            = 03.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC = 0 AND MF_RETURNCODE = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ASSIGN (MF_DYNPFIELDS-FIELDNAME) TO &amp;lt;MF_FELD&amp;gt;. " ==&amp;gt;&amp;gt; note 148804&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;&amp;lt;MF_FELD&amp;gt; = MF_MONAT.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'CONVERSION_EXIT_PERI_OUTPUT'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          INPUT  = MF_MONAT&lt;/P&gt;&lt;P&gt;        IMPORTING&lt;/P&gt;&lt;P&gt;          OUTPUT = MF_DYNPFIELDS-FIELDVALUE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      COLLECT MF_DYNPFIELDS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'DYNP_VALUES_UPDATE'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          DYNAME               = MF_HLP_REPID&lt;/P&gt;&lt;P&gt;          DYNUMB               = SY-DYNNR&lt;/P&gt;&lt;P&gt;        TABLES&lt;/P&gt;&lt;P&gt;          DYNPFIELDS           = MF_DYNPFIELDS&lt;/P&gt;&lt;P&gt;        EXCEPTIONS&lt;/P&gt;&lt;P&gt;          INVALID_ABAPWORKAREA = 01&lt;/P&gt;&lt;P&gt;          INVALID_DYNPROFIELD  = 02&lt;/P&gt;&lt;P&gt;          INVALID_DYNPRONAME   = 03&lt;/P&gt;&lt;P&gt;          INVALID_DYNPRONUMMER = 04&lt;/P&gt;&lt;P&gt;          INVALID_REQUEST      = 05&lt;/P&gt;&lt;P&gt;          NO_FIELDDESCRIPTION  = 06&lt;/P&gt;&lt;P&gt;          UNDEFIND_ERROR       = 07. "&amp;lt;&amp;lt;== note 148804&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                                                    "MONAT_F4&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form get_month_dates&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&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;Calculating the Month Start &amp;amp; End Date&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;FORM GET_MONTH_DATES.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF M1 = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    FYEAR = P_SPMON+0(4).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MON = P_SPMON+4(2).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CONCATENATE FYEAR MON '01' INTO R_BUDAT-LOW.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    R_BUDAT-SIGN = 'I'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    R_BUDAT-OPTION = 'BT'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'BKK_GET_MONTH_LASTDAY'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        I_DATE = R_BUDAT-LOW&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        E_DATE = R_BUDAT-HIGH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    APPEND R_BUDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR S_BUDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    REFRESH S_BUDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    S_BUDAT-SIGN = 'I'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    S_BUDAT-OPTION = 'BT'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    S_BUDAT-LOW = R_BUDAT-LOW.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    S_BUDAT-HIGH = R_BUDAT-HIGH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    APPEND S_BUDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    FYEAR = P_SPMON+0(4).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MON = P_SPMON+4(2).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CONCATENATE FYEAR MON '01' INTO R_BUDAT-LOW.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    R_BUDAT-SIGN = 'I'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    R_BUDAT-OPTION = 'BT'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'BKK_GET_MONTH_LASTDAY'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        I_DATE = R_BUDAT-LOW&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        E_DATE = R_BUDAT-HIGH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    APPEND R_BUDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " get_month_dates&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form output_table_Check&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&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;checking for records for output&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;FORM OUTPUT_TABLE_CHECK .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE I_FINALT LINES INDEX.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF INDEX EQ 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MESSAGE I041 WITH TEXT-005.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LEAVE LIST-PROCESSING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "OUTPUT_TABLE_CHECK&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form Z_TOP_OF_PAGE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&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;for setting the details in the top of page *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;has no formal paramters *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;FORM Z_TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: V_MON(2),&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  V_YR(40),&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  V_FIN(18),&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  V_FIN1(48),&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOW(10),&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  HIGH(10).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  V_MON = P_SPMON+4(2).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  V_YR = P_SPMON+0(4).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FHEADER-TYP = 'H'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FHEADER-INFO = 'Stock Register Report (FG Stock)'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FHEADER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FHEADER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*if m1 = 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CONCATENATE 'Month = ' v_mon '.' v_yr INTO v_fin.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fheader-typ = 'H'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fheader-info = v_fin.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;APPEND fheader.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CLEAR fheader.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*endif."prabhu on 18.5.5&lt;/P&gt;&lt;P&gt;  IF D1 = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR S_BUDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT S_BUDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE S_BUDAT-LOW&lt;EM&gt;6(2) '/' S_BUDAT-LOW&lt;/EM&gt;4(2) '/'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      S_BUDAT-LOW+0(4) INTO LOW.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE S_BUDAT-HIGH&lt;EM&gt;6(2) '/' S_BUDAT-HIGH&lt;/EM&gt;4(2) '/'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      S_BUDAT-HIGH+0(4) INTO HIGH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE 'Date = ' LOW ' - ' HIGH INTO V_FIN1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      FHEADER-TYP = 'H'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      FHEADER-INFO = V_FIN1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      APPEND FHEADER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CLEAR FHEADER.&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;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " Z_TOP_OF_PAGE&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form Z_LAYOUT_SETTINGS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&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;this is done for setting the properties for the layout of the *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;grid *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&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;has no formal paramters *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;FORM Z_LAYOUT_SETTINGS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FS_LAYO-ZEBRA = 'X'. " Output in Zebra pattern&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FS_LAYO-DETAIL_POPUP = 'X'. " A popup window appears to give&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FS_LAYO-DETAIL_TITLEBAR = TEXT-022.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FS_LAYO-COLWIDTH_OPTIMIZE = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " Z_LAYOUT_SETTINGS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form Z_ALV_EVENTS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&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;This is used for handling the events TOP OF PAGE and the USER *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;COMMAND event *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;has no formal paramters *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;FORM Z_ALV_EVENTS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_EVENTS_GET'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      I_LIST_TYPE = 0&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      ET_EVENTS   = FEVENTS[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  READ TABLE FEVENTS WITH KEY NAME = 'TOP_OF_PAGE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    FEVENTS-FORM = 'Z_TOPOFPAGE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MODIFY FEVENTS INDEX SY-TABIX.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR FEVENTS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  READ TABLE FEVENTS WITH KEY NAME = 'USER_COMMAND'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    FEVENTS-FORM = 'Z_USER_COMMAND'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MODIFY FEVENTS INDEX SY-TABIX.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR FEVENTS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "Z_ALV_EVENTS&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form Z_CREATE_FIELD_CATALOG&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&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;here the field catalog is created for the primary list *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;no formal parameters *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;FORM Z_CREATE_FIELD_CATALOG.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for the Plant&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  FCAT-FIELDNAME = 'WERKS'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-KEY = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-OUTPUTLEN = '000005'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-SELTEXT_M = 'Plant'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-INTTYPE = 'C'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DATATYPE = 'CHAR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for the Material Type&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  FCAT-FIELDNAME = 'MTART'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-KEY = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-OUTPUTLEN = '000006'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-SELTEXT_M = 'MatTyp'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-INTTYPE = 'C'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DATATYPE = 'CHAR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for the Material No.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-FIELDNAME = 'MATNR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-KEY = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fcat-hotspot = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-OUTPUTLEN = '000018'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-SELTEXT_M = 'Material'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-INTTYPE = 'C'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DATATYPE = 'CHAR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for the Material Description&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-FIELDNAME = 'MAKTX'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-KEY = ''.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-OUTPUTLEN = '000040'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-SELTEXT_M = 'Description'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-INTTYPE = 'C'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DATATYPE = 'CHAR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for the Unit of Measure&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-FIELDNAME = 'MEINS'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-KEY = ''.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-OUTPUTLEN = '03'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'C'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-SELTEXT_M = 'UOM'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-INTTYPE = 'C'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DATATYPE = 'UNIT'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for the Plant&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-FIELDNAME = 'MONTH'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-KEY = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-OUTPUTLEN = '08'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-SELTEXT_M = 'MONTH'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-INTTYPE = 'C'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DATATYPE = 'CHAR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for the Opening Stock&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-FIELDNAME = 'C_STK'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-HOTSPOT = ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-OUTPUTLEN = '000016'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-SELTEXT_M = 'Opening Stock'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-INTTYPE = 'Q'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DATATYPE = 'QUAN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fcat-do_sum = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'R'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-NO_ZERO = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for the Total Receipts&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-FIELDNAME = 'TRECEP'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-HOTSPOT = ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-OUTPUTLEN = '000016'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-SELTEXT_M = 'Total Receipts'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-INTTYPE = 'Q'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DATATYPE = 'QUAN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DO_SUM = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'R'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-NO_ZERO = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for the Production&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-FIELDNAME = 'PRODU'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-HOTSPOT = ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-OUTPUTLEN = '000016'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-SELTEXT_M = 'Production'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-INTTYPE = 'Q'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DATATYPE = 'QUAN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DO_SUM = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'R'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-NO_ZERO = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for the Other Plant Receipts&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-FIELDNAME = 'RECEP'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-HOTSPOT = ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-OUTPUTLEN = '000016'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-SELTEXT_M = 'Othr Plnt Recpts'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-INTTYPE = 'Q'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DATATYPE = 'QUAN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DO_SUM = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'R'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-NO_ZERO = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Sales Return&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-FIELDNAME = 'SAL_RET'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-HOTSPOT = ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-OUTPUTLEN = '000016'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-SELTEXT_M = 'Sales Return'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-INTTYPE = 'Q'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DATATYPE = 'QUAN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DO_SUM = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'R'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-NO_ZERO = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Total Dispatches&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-FIELDNAME = 'TDISP'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-HOTSPOT = ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-OUTPUTLEN = '000016'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-SELTEXT_M = 'Total Dispatches'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-INTTYPE = 'Q'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DATATYPE = 'QUAN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DO_SUM = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'R'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-NO_ZERO = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Distributor Dispatches&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-FIELDNAME = 'CUSTMR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-HOTSPOT = ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-OUTPUTLEN = '000016'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-SELTEXT_M = 'Distr Dispatches/HLL'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-INTTYPE = 'Q'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DATATYPE = 'QUAN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DO_SUM = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'R'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-NO_ZERO = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Other Plants Dispatches&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-FIELDNAME = 'OPLANT'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-HOTSPOT = ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-OUTPUTLEN = '000020'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-SELTEXT_M = 'Othr Plnt Dispatches'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-INTTYPE = 'Q'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DATATYPE = 'QUAN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DO_SUM = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'R'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-NO_ZERO = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Material Transfer&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-FIELDNAME = 'TRFSTK'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-OUTPUTLEN = '000016'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-SELTEXT_M = 'M.Transfer'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-INTTYPE = 'Q'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DATATYPE = 'QUAN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'R'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-NO_ZERO = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Transit Loss&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-FIELDNAME = 'TRLOSS'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-HOTSPOT = ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-OUTPUTLEN = '000016'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-SELTEXT_M = 'Transit Loss'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-INTTYPE = 'Q'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DATATYPE = 'QUAN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DO_SUM = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'R'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-NO_ZERO = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Warehouse Loss&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-FIELDNAME = 'WHLOSS'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-HOTSPOT = ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-OUTPUTLEN = '000016'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-SELTEXT_M = 'Warehouse Loss'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-INTTYPE = 'Q'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DATATYPE = 'QUAN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DO_SUM = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'R'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-NO_ZERO = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Total Loss&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-FIELDNAME = 'TLOSS'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-HOTSPOT = ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-OUTPUTLEN = '000016'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-SELTEXT_M = 'Total Loss'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-INTTYPE = 'Q'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DATATYPE = 'QUAN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DO_SUM = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'R'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-NO_ZERO = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Closing Stock&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-FIELDNAME = 'O_STK'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-HOTSPOT = ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-OUTPUTLEN = '000016'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-SELTEXT_M = 'Closing Stock'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-INTTYPE = 'Q'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DATATYPE = 'QUAN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fcat-do_sum = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'R'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-NO_ZERO = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for the Other Plant Receipts&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-FIELDNAME = 'OTHADJ'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-HOTSPOT = ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-OUTPUTLEN = '000016'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-SELTEXT_M = 'Othr Adjst'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-INTTYPE = 'Q'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DATATYPE = 'QUAN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-DO_SUM = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-JUST = 'R'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT-NO_ZERO = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " Z_CREATE_FIELD_CATALOG&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form Z_REUSE_ALV_GRID_DISPLAY&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&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;here the function module REUSE_ALV_GRID_DISPLAY function module *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;is called. The inputs given to it are as follows: *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;W_REPID : contains the Report Name *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;USER_COMMAND : is set as default *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FS_LAYO : Here the layout related properties are set *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FCAT : here the field catalog is create for the output *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fields *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FEXCLUDE : Some Application toolbar links are deactivated *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;here *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FEVENTS : Here top of Page &amp;amp; User command events are defined*&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IT_AFPO : It is the table which contains the data to be *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;displayed in the output *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;has no formal paramters *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;FORM Z_REUSE_ALV_GRID_DISPLAY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: BEGIN OF I_MAKTX OCCURS 0,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MATNR LIKE MAKT-MATNR,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MAKTX LIKE MAKT-MAKTX,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  END OF I_MAKTX,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  V_TEMP(18).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT I_FINALT[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT MATNR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MAKTX&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    INTO TABLE I_MAKTX&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    FROM MAKT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    FOR ALL ENTRIES IN I_FINALT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHERE MAKT~MATNR = I_FINALT-MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT I_MAKTX BY MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT I_FINALT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE I_MAKTX WITH KEY MATNR = I_FINALT-MATNR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    BINARY SEARCH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINALT-MAKTX = I_MAKTX-MAKTX.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MODIFY I_FINALT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&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;  SORT I_FINALT BY MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DELETE I_FINALT WHERE MATNR EQ ''.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: LV_REPID LIKE SY-REPID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LV_REPID = SY-REPID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: V_MATNR(18).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT I_FINALT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_MATN1_OUTPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        INPUT  = I_FINALT-MATNR&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        OUTPUT = V_MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_FINALT-MATNR = V_MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MODIFY I_FINALT.&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;  SORT I_FINALT BY MATNR MONTH.&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;      I_CALLBACK_PROGRAM      = LV_REPID&lt;/P&gt;&lt;P&gt;      I_CALLBACK_USER_COMMAND = 'Z_USER_COMMAND'&lt;/P&gt;&lt;P&gt;      IS_LAYOUT               = FS_LAYO&lt;/P&gt;&lt;P&gt;      IT_FIELDCAT             = FCAT[]&lt;/P&gt;&lt;P&gt;      IT_EXCLUDING            = FEXC[]&lt;/P&gt;&lt;P&gt;      IT_SORT                 = FSORT[]&lt;/P&gt;&lt;P&gt;      I_DEFAULT               = 'X'&lt;/P&gt;&lt;P&gt;      I_SAVE                  = 'U'&lt;/P&gt;&lt;P&gt;      IS_VARIANT              = ALV_VARIANT&lt;/P&gt;&lt;P&gt;      IT_EVENTS               = FEVENTS[]&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      T_OUTTAB                = I_FINALT[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " Z_REUSE_ALV_GRID_DISPLAY&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form Z_TOPOFPAGE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&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;This Subroutine is called Dynamically *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;This is for creating the headings of the output fields *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;has no formal paramters *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;FORM Z_TOPOFPAGE.                                           "#EC NEEDED&lt;/P&gt;&lt;P&gt;&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 = FHEADER[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " FORM Z_TOPOFPAGE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form Z_USER_COMMAND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&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;This Subroutine is called Dynamically *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if the user double clicks the Production Order Number or the *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Material Number, the Complete transaction details will be *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;displayed *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R_UCOMM *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;RS_SELFIELD *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;FORM Z_USER_COMMAND USING R_UCOMM LIKE SY-UCOMM&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;RS_SELFIELD TYPE SLIS_SELFIELD.                             "#EC NEEDED&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK R_UCOMM = '&amp;amp;IC1'. "User Double Clicked on Some field&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK NOT RS_SELFIELD-VALUE IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT IMKPFT2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM REMOVE_ZEROS USING IMKPFT2-MATNR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CHANGING IMKPFT2-MATNR1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MODIFY IMKPFT2.&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;  SORT IMKPFT2 BY BUDAT MATNR WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE RS_SELFIELD-FIELDNAME.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 'MATNR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      READ TABLE I_FINALT INDEX RS_SELFIELD-TABINDEX.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF D1 = 'X' OR M1 ='X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        LOOP AT IMKPFT2 WHERE MATNR1 = I_FINALT-MATNR AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WERKS = I_FINALT-WERKS AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        ( BUDAT&lt;EM&gt;0(4) EQ I_FINALT-MONTH&lt;/EM&gt;0(4) AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        BUDAT&lt;EM&gt;4(2) EQ I_FINALT-MONTH&lt;/EM&gt;5(2) ) .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          MOVE IMKPFT2 TO T_FINAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          APPEND T_FINAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          CLEAR T_FINAL.&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;      ELSEIF Y1 = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        LOOP AT IMKPFT2 WHERE MATNR1 = I_FINALT-MATNR AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WERKS = I_FINALT-WERKS AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        BUDAT IN S_BUDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          MOVE IMKPFT2 TO T_FINAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          APPEND T_FINAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          CLEAR T_FINAL.&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;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SORT T_FINAL BY BUDAT MATNR WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM DISPLAY_ALV1 USING T_FINAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " FORM Z_USER_COMMAND&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form ALV_F4&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM ALV_F4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ALV_VARIANT-REPORT = ALV_REPID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_VARIANT_F4'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      IS_VARIANT = ALV_VARIANT&lt;/P&gt;&lt;P&gt;      I_SAVE     = 'A'&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      ES_VARIANT = ALV_VARIANT&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      NOT_FOUND  = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MESSAGE ID SY-MSGID TYPE 'S' NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ALV_DEF = ALV_VARIANT-VARIANT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                                                    "alv_f4&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form ALV_INIT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM ALV_INIT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: ALV_KEYINFO, ALV_VARIANT, ALV_LAYOUT, ALV_PRINT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ALV_DEF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ALV_REPID = SY-REPID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ALV_VARIANT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ALV_VARIANT-REPORT = ALV_REPID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      I_SAVE     = 'A'&lt;/P&gt;&lt;P&gt;    CHANGING&lt;/P&gt;&lt;P&gt;      CS_VARIANT = ALV_VARIANT&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      NOT_FOUND  = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ALV_DEF = ALV_VARIANT-VARIANT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MOVE ALV_VARIANT-VARIANT TO ALV_DEFAULT_VARIANT.&lt;/P&gt;&lt;P&gt;&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;Printing settings&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ALV_LAYOUT-GET_SELINFOS = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ALV_LAYOUT-GROUP_CHANGE_EDIT = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE * FROM MMIM_REP_PRINT WHERE REPORT = SY-REPID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF MMIM_REP_PRINT-SELINFO = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ALV_PRINT-NO_PRINT_SELINFOS = ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ALV_PRINT-NO_PRINT_SELINFOS = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF MMIM_REP_PRINT-COVERPAGE = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ALV_PRINT-NO_COVERPAGE = ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ALV_PRINT-NO_COVERPAGE = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF MMIM_REP_PRINT-LISTINFO = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ALV_PRINT-NO_PRINT_LISTINFOS = ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ALV_PRINT-NO_PRINT_LISTINFOS = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF MMIM_REP_PRINT-GRIDCONTROL = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ALV_DETAIL_FUNC = 'REUSE_ALV_GRID_DISPLAY'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ALV_DETAIL_FUNC = 'REUSE_ALV_LIST_DISPLAY'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF MMIM_REP_PRINT-COLOR = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CLEAR ALV_COLOURIZE_FIELDS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MOVE 'X' TO ALV_COLOURIZE_FIELDS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MOVE 'X' TO ALV_COLOURIZE_FIELDS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ALV_PRINT-NO_PRINT_SELINFOS = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ALV_PRINT-NO_COVERPAGE = ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ALV_PRINT-NO_PRINT_LISTINFOS = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ALV_DETAIL_FUNC = 'REUSE_ALV_LIST_DISPLAY'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "ALV_INIT&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;*&amp;amp; Form AUTH_CHECK&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&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;for checking authorisations&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;FORM AUTH_CHECK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: BEGIN OF I_AUTH OCCURS 0,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WERKS LIKE T001W-WERKS,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  END OF I_AUTH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT WERKS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  INTO TABLE I_AUTH&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FROM T001W&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WHERE WERKS IN S_WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT I_AUTH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    AUTHORITY-CHECK OBJECT 'Z_PLNT_AUT'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ID 'ACTVT' FIELD '03'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ID 'WERKS' FIELD I_AUTH-WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC NE 0 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MESSAGE E398(00) WITH&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      'User' SY-UNAME 'not authorised for Plant' I_AUTH-WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&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;ENDFORM. " AUTH_CHECK&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form VALIDITY_CHECK&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&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;text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;FORM VALIDITY_CHECK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT S_WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT SINGLE * FROM T001W&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHERE WERKS = S_WERKS-LOW.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC EQ 4 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MESSAGE E398(00) WITH&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      'Plant' S_WERKS-LOW 'Does not Exist' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&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;ENDFORM. " VALIDITY_CHECK&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form alv_check&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&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;text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;FORM ALV_CHECK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ALV_VARIANT-REPORT = ALV_REPID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ALV_VARIANT-VARIANT = ALV_DEF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT ALV_DEF IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'REUSE_ALV_VARIANT_EXISTENCE'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        I_SAVE     = 'A'&lt;/P&gt;&lt;P&gt;      CHANGING&lt;/P&gt;&lt;P&gt;        CS_VARIANT = ALV_VARIANT&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        OTHERS     = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MESSAGE E321(M7) WITH ALV_DEF ALV_REPID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF. " IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;the user wants no initial display variant&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF NOT ALV_DEFAULT_VARIANT IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;but the SAP-LIST-VIEWER will apply the existing&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;initial display variant / emerge warning 393 ?&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'ME_CHECK_T160M'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          I_ARBGB = 'M7'&lt;/P&gt;&lt;P&gt;          I_MSGNR = '393'&lt;/P&gt;&lt;P&gt;        EXCEPTIONS&lt;/P&gt;&lt;P&gt;          NOTHING = 0&lt;/P&gt;&lt;P&gt;          OTHERS  = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        MESSAGE W393(M7) WITH ALV_DEFAULT_VARIANT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "alv_check&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form delete_empty_records&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&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;text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; p1 text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&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;/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;FORM DELETE_EMPTY_RECORDS .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;deleting the records with empty quantities&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT I_FINAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF I_FINAL-O_STK EQ 0 AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_FINAL-TRECEP EQ 0 AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_FINAL-PRODU EQ 0 AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_FINAL-RECEP EQ 0 AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_FINAL-SAL_RET EQ 0 AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_FINAL-TDISP EQ 0 AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_FINAL-CUSTMR EQ 0 AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_FINAL-OPLANT EQ 0 AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_FINAL-TLOSS EQ 0 AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_FINAL-TRLOSS EQ 0 AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_FINAL-WHLOSS EQ 0 AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_FINAL-OTHADJ EQ 0 AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_FINAL-C_STK EQ 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      DELETE I_FINAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CLEAR I_FINAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MOVE-CORRESPONDING I_FINAL TO I_FINALT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*For Month&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF Y1 NE 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE P_SPMON&lt;EM&gt;0(4) '.' P_SPMON&lt;/EM&gt;4(2)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      INTO I_FINALT-MONTH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE P_SPMON+0(4) '.' '00'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      INTO I_FINALT-MONTH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    APPEND I_FINALT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR I_FINALT.&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;ENDFORM. " delete_empty_records&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form calculate_opening_stock&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&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;text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; p1 text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&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;/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;FORM CALCULATE_OPENING_STOCK .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT IMARDHT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    AT NEW MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-MATNR = IMARDHT-MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-WERKS = IMARDHT-WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-MEINS = IMARDHT-MEINS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-MTART = MTART.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      APPEND I_FINAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDAT.&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;  SORT I_FINAL BY WERKS MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT I_FINAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE IMARDHT WITH KEY MATNR = I_FINAL-MATNR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WERKS = I_FINAL-WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF D1 = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        OBAL = IMARDHT-LABST + IMARDHT-O_STK + IMARDHT-C_STK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CBAL = IMARDHT-LABST + IMARDHT-C_STK .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        OBAL = IMARDHT-LABST .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CBAL = IMARDHT-LABST + IMARDHT-C_STK .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-C_STK = CBAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-O_STK = OBAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MODIFY I_FINAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&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;  LOOP AT I_FINAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT I_FINAL5 WHERE MATNR = I_FINAL-MATNR AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WERKS = I_FINAL-WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-PRODU = I_FINAL-PRODU + I_FINAL5-PRODU.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-RECEP = I_FINAL-RECEP + I_FINAL5-RECEP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-SAL_RET = I_FINAL-SAL_RET + I_FINAL5-SAL_RET.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-CUSTMR = I_FINAL-CUSTMR + I_FINAL5-CUSTMR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-OPLANT = I_FINAL-OPLANT + I_FINAL5-OPLANT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-WHLOSS = I_FINAL-WHLOSS + I_FINAL5-WHLOSS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-TRLOSS = I_FINAL-TRLOSS + I_FINAL5-TRLOSS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-TRFSTK = I_FINAL-TRFSTK + I_FINAL5-TRFSTK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-OTHADJ = I_FINAL-OTHADJ + I_FINAL5-OTHADJ.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MODIFY I_FINAL.&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;*----&lt;/P&gt;&lt;HR originaltext="-------------" /&gt;&lt;P&gt;Total Receipts----&lt;/P&gt;&lt;HR originaltext="------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_FINAL-TRECEP = I_FINAL-PRODU&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    + I_FINAL-RECEP&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    + I_FINAL-SAL_RET.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-------------" /&gt;&lt;P&gt;Total Dispatches----&lt;/P&gt;&lt;HR originaltext="-----" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_FINAL-TDISP = I_FINAL-CUSTMR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    + I_FINAL-OPLANT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------" /&gt;&lt;P&gt;Total Loss----&lt;/P&gt;&lt;HR originaltext="----------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_FINAL-TLOSS = I_FINAL-TRLOSS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    + I_FINAL-WHLOSS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MODIFY I_FINAL.&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;ENDFORM. " calculate_opening_stock&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form update_non_transaction_itms&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&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;text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; p1 text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&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;/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;FORM UPDATE_NON_TRANSACTION_ITMS .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Pushing NON TRANSACTION ITEMS TO i_final table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT IMARDHT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE I_FINAL WITH KEY MATNR = IMARDHT-MATNR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WERKS = IMARDHT-WERKS .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC NE 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CLEAR I_FINAL. "Added by manisha for correction&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-MATNR = IMARDHT-MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-WERKS = IMARDHT-WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-SPMON = P_SPMON.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-MTART = MTART.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-C_STK = IMARDHT-LABST + IMARDHT-C_STK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-O_STK = I_FINAL-C_STK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_FINAL-MEINS = IMARDHT-MEINS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      APPEND I_FINAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CLEAR I_FINAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&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;ENDFORM. " update_non_transaction_itms&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form get_records_from_DB&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&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;text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; p1 text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&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;/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;FORM GET_RECORDS_FROM_DB .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: WA_MTART LIKE MARA-MTART .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: I_MARD1 LIKE I_MARD OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: I_MARDH2 LIKE I_MARDH1 OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;added by prabhu .&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT MATNR MTART MEINS FROM MARA&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  INTO CORRESPONDING FIELDS OF TABLE I_MARA&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WHERE MATNR IN S_MATNR AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MTART = 'FERT'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*added by prabu for performance.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT I_MARA BY MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DELETE ADJACENT DUPLICATES FROM I_MARA COMPARING MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT I_MARA BY MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;end of changes by prabhu for CPO.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT BWART SHKZG VZBEW&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FROM YW2_STKMOVEMENTS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  INTO TABLE I_STKMVMNTS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Getting the Stocks from the MARD table for the Previous Months&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for Slow Moving Materials&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT MARD~MATNR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MARD~WERKS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MARD~LGORT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MARD~LABST&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MARD~INSME&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MARD~EINME "+&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MARD~SPEME "+&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MARD~RETME "-&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FROM MARD&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  INTO CORRESPONDING FIELDS OF TABLE I_MARD&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FOR ALL ENTRIES IN I_MARA&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WHERE MARD~MATNR EQ I_MARA-MATNR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  AND MARD~WERKS IN S_WERKS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  AND MARD~LGORT IN S_LGORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;added by prabhu for CPO.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT I_MARD BY MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT I_MARD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE I_MARA WITH KEY MATNR = I_MARD-MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC NE 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      DELETE I_MARD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      I_MARD-MEINS = I_MARA-MEINS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MODIFY I_MARD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;getting the details from the MKPF &amp;amp; MSEG table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT I_MARD[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT MKPF~MBLNR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MKPF~MJAHR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MKPF~VGART&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MKPF~BUDAT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MSEG~ZEILE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MSEG~BWART&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MSEG~XAUTO&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MSEG~MATNR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MSEG~WERKS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MSEG~LGORT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MSEG~SHKZG&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MSEG~MENGE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MSEG~MEINS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    FROM MKPF AS MKPF INNER JOIN&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MSEG AS MSEG&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ON MKPF&lt;SUB&gt;MBLNR = MSEG&lt;/SUB&gt;MBLNR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    AND MKPF&lt;SUB&gt;MJAHR = MSEG&lt;/SUB&gt;MJAHR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    INTO CORRESPONDING FIELDS OF TABLE I_MKPF&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    FOR ALL ENTRIES IN I_MARD&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHERE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MKPF~BUDAT GE S_BUDAT-LOW&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    AND MSEG~MATNR EQ I_MARD-MATNR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    AND MSEG~WERKS EQ I_MARD-WERKS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    AND MSEG~LGORT NE ''.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " get_records_from_DB&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form process_movements&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&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;text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; p1 text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&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;/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;FORM PROCESS_MOVEMENTS .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: WA_MAKTX LIKE MAKT-MAKTX.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT IMKPFT WHERE BUDAT IN S_BUDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF IMKPFT-SHKZG = 'S'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT-MENGE = IMKPFT-MENGE * ( -1 ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MODIFY IMKPFT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&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;  LOOP AT IMKPFT WHERE BUDAT IN S_BUDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_FINAL5-WERKS = IMKPFT-WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_FINAL5-LGORT = IMKPFT-LGORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_FINAL5-MATNR = IMKPFT-MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;GET SIGN.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE I_STKMVMNTS WITH KEY BWART = IMKPFT-BWART&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SHKZG = IMKPFT-SHKZG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF I_STKMVMNTS-VZBEW = '+'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        I_FINAL5-MENGE = IMKPFT-MENGE .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        I_FINAL5-MENGE = IMKPFT-MENGE * ( -1 ).&lt;/P&gt;&lt;P&gt;&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;not to consider movements not found in y table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;i_final5-menge = imkpft-menge.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CLEAR I_FINAL5-MENGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF."prabhu.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CASE IMKPFT-BWART.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;PRODUCTION - 1&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN '101' OR '102' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        I_FINAL5-PRODU = I_FINAL5-PRODU + I_FINAL5-MENGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SALES RETURNS - 3&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN '653' OR '654'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        I_FINAL5-SAL_RET = I_FINAL5-SAL_RET + I_FINAL5-MENGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CUSTOMER DISPATCHES - 5&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN '624' OR '625' OR '601' OR '602' OR '951' OR '952'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      OR '645' OR '646' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        I_FINAL5-CUSTMR = I_FINAL5-CUSTMR + I_FINAL5-MENGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OTHER PLANT DISPATCHES - 6 / RECEIPTS - 2&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN '641' OR '941' OR '643'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF IMKPFT-SHKZG = 'H'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          I_FINAL5-OPLANT = I_FINAL5-OPLANT + I_FINAL5-MENGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          I_FINAL5-RECEP = I_FINAL5-RECEP + I_FINAL5-MENGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN '642' OR '942' OR '644'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF IMKPFT-SHKZG = 'S'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          I_FINAL5-OPLANT = I_FINAL5-OPLANT + I_FINAL5-MENGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          I_FINAL5-RECEP = I_FINAL5-RECEP + I_FINAL5-MENGE.&lt;/P&gt;&lt;P&gt;&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;TRANSIT LOSS&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN '251' OR '252' OR 'Z51' OR 'Z52'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        I_FINAL5-TRLOSS = I_FINAL5-TRLOSS + I_FINAL5-MENGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;WAREHOUSE LOSS&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN '551' OR '552' OR 'Y51' OR 'Y52' OR '555' OR '556'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        I_FINAL5-WHLOSS = I_FINAL5-WHLOSS + I_FINAL5-MENGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;TRANSFER STOCK&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN '309' OR '310'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        I_FINAL5-TRFSTK = I_FINAL5-TRFSTK + I_FINAL5-MENGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OTHER ADJUSTMENTS&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN OTHERS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        I_FINAL5-OTHADJ = I_FINAL5-OTHADJ + I_FINAL5-MENGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Added by prabhu on 12.3.05 CPO.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*read table i_final5 with key matnr = imkpft-matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_FINAL5-MEINS = IMKPFT-MEINS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    I_FINAL5-BUDAT = IMKPFT-BUDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    APPEND I_FINAL5.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR I_FINAL5.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*endif.&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;  SORT I_FINAL5 BY WERKS MATNR BUDAT ASCENDING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " process_movements&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;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form get_plant_distinction&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&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;text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; p1 text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&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;/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;FORM GET_PLANT_DISTINCTION .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT PPLNT WPLNT FROM YPLNT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  INTO CORRESPONDING FIELDS OF TABLE I_YPLNT WHERE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PPLNT IN S_WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT PPLNT WPLNT FROM YPLNT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPENDING CORRESPONDING FIELDS OF TABLE I_YPLNT WHERE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WPLNT IN S_WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " get_plant_distinction&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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&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;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form month_wise&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&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;text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; p1 text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&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;/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;FORM MONTH_WISE .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF Y1 = ''.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT IMKPFT WHERE (&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ( BUDAT&lt;EM&gt;4(2) GT P_SPMON&lt;/EM&gt;4(2) AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MJAHR EQ P_SPMON+0(4) ) OR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ( BUDAT&lt;EM&gt;4(2) LE P_SPMON&lt;/EM&gt;4(2) AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MJAHR NE P_SPMON+0(4) ) OR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ( BUDAT&lt;EM&gt;4(2) GE P_SPMON&lt;/EM&gt;4(2) AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MJAHR NE P_SPMON+0(4) ) ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-MJAHR = IMKPFT-MJAHR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-MBLNR = IMKPFT-MBLNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-BUDAT = IMKPFT-BUDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-VGART = IMKPFT-VGART.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-BWART = IMKPFT-BWART.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-MATNR = IMKPFT-MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-WERKS = IMKPFT-WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-LGORT = IMKPFT-LGORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-MENGE = IMKPFT-MENGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-MEINS = IMKPFT-MEINS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-XAUTO = IMKPFT-XAUTO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-SHKZG = IMKPFT-SHKZG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      APPEND IMKPFT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CLEAR IMKPFT1.&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;  ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT IMKPFT WHERE BUDAT IN S_BUDAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-MJAHR = IMKPFT-MJAHR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-MBLNR = IMKPFT-MBLNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-BUDAT = IMKPFT-BUDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-VGART = IMKPFT-VGART.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-BWART = IMKPFT-BWART.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-MATNR = IMKPFT-MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-WERKS = IMKPFT-WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-LGORT = IMKPFT-LGORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-MENGE = IMKPFT-MENGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-MEINS = IMKPFT-MEINS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-XAUTO = IMKPFT-XAUTO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-SHKZG = IMKPFT-SHKZG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      APPEND IMKPFT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CLEAR IMKPFT1.&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;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT IMKPFT1 BY WERKS MATNR BUDAT BWART ASCENDING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT IMARDT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    AT NEW MATNR .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMARDHT-MATNR = IMARDT-MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMARDHT-WERKS = IMARDT-WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      APPEND IMARDHT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CLEAR IMARDHT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDAT.&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;  LOOP AT IMARDHT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT IMARDT WHERE MATNR = IMARDHT-MATNR AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WERKS = IMARDHT-WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMARDHT-MATNR = IMARDT-MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMARDHT-WERKS = IMARDT-WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMARDHT-LGORT = IMARDT-LGORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMARDHT-LABST = IMARDT-LABST + IMARDT-EINME +&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMARDT-SPEME + IMARDT-RETME + IMARDHT-LABST +&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMARDT-INSME.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMARDHT-MEINS = IMARDT-MEINS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MODIFY IMARDHT.&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;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;sorting the data by matnr werks lgort.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT IMARDHT BY WERKS LGORT MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;to get closing stock.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT IMKPFT1 BY MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: BEGIN OF DATA OCCURS 0,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LGORT LIKE MARD-LGORT,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MATNR LIKE MARD-MATNR,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LABST LIKE MARD-LABST,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WERKS LIKE MARD-WERKS,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  END OF DATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT IMARDT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    AT NEW MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      DATA-LGORT = IMARDT-LGORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      DATA-MATNR = IMARDT-MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      DATA-WERKS = IMARDT-WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      APPEND DATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CLEAR DATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDAT.&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;  SORT IMKPFT1 BY MATNR SHKZG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT IMKPFT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF IMKPFT1-SHKZG = 'S'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT1-MENGE = IMKPFT1-MENGE * ( -1 ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MODIFY IMKPFT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&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;  SORT IMKPFT1 BY MATNR BUDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT IMARDHT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT IMKPFT1 WHERE MATNR = IMARDHT-MATNR AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WERKS = IMARDHT-WERKS .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMARDHT-LABST = IMARDHT-LABST + IMKPFT1-MENGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MODIFY IMARDHT.&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;    MODIFY IMARDHT.&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;  SORT IMKPFT BY MATNR BUDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF Y1 =''.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DELETE IMKPFT WHERE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ( BUDAT&lt;EM&gt;4(2) NE P_SPMON&lt;/EM&gt;4(2) OR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ( BUDAT&lt;EM&gt;4(2) EQ P_SPMON&lt;/EM&gt;4(2) AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MJAHR NE P_SPMON+0(4) ) ) OR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ( BUDAT+4(2) GT P_SPMON AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MJAHR NE P_SPMON+0(4) ) .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DELETE IMKPFT WHERE BUDAT IN S_BUDAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*for Closing stock.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT IMKPFT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF IMKPFT-SHKZG = 'S'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IMKPFT-MENGE = IMKPFT-MENGE * ( -1 ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MODIFY IMKPFT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&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;  IF D1 = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT IMARDHT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      LOOP AT IMKPFT WHERE MATNR = IMARDHT-MATNR AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WERKS = IMARDHT-WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IMARDHT-C_STK = IMARDHT-C_STK + IMKPFT-MENGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        MODIFY IMARDHT.&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;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*for day cal only on 19.4.5&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT IMARDHT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      LOOP AT IMKPFT WHERE MATNR = IMARDHT-MATNR AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      BUDAT IN S_BUDAT AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WERKS = IMARDHT-WERKS .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IMARDHT-O_STK = IMARDHT-O_STK - IMKPFT-MENGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        MODIFY IMARDHT.&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;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT IMARDHT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      LOOP AT IMKPFT WHERE MATNR = IMARDHT-MATNR AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WERKS = IMARDHT-WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IMARDHT-C_STK = IMARDHT-C_STK + IMKPFT-MENGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        MODIFY IMARDHT.&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;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " month_wise&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  z_alv_events1&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM Z_ALV_EVENTS1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_EVENTS_GET'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      I_LIST_TYPE = 0&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      ET_EVENTS   = FEVENTS1[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  READ TABLE FEVENTS WITH KEY NAME = 'TOP_OF_PAGE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    FEVENTS-FORM = 'Z_TOPOFPAGE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fevents-form = 'Z_LIST'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MODIFY FEVENTS INDEX SY-TABIX.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR FEVENTS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF. " IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Drill down&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  READ TABLE FEVENTS WITH KEY NAME = 'USER_COMMAND'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    FEVENTS-FORM = 'Z_USER_COMMAND1'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MODIFY FEVENTS INDEX SY-TABIX.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR FEVENTS1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "Z_ALV_EVENTS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Drill Down In Alv&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Z_USER_COMMAND1 USING R_UCOMM LIKE SY-UCOMM&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;RS_SELFIELD TYPE SLIS_SELFIELD.                             "#EC NEEDED&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*sel_tab_field type slis_sel_tab_field&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK R_UCOMM = '&amp;amp;IC1'. "User Double Clicked on Some field&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK NOT RS_SELFIELD-VALUE IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE RS_SELFIELD-FIELDNAME.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "Z_USER_COMMAND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form display_alv&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&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;text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; p1 text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&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;/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;FORM DISPLAY_ALV1 USING P_T_FINAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LV_REPID LIKE SY-REPID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: FCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM CREATE_FIELDCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM Z_ALV_EVENTS1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LV_REPID = SY-REPID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT T_FINAL BY MATNR BUDAT WERKS .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: W_MATNR(18).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      I_CALLBACK_PROGRAM      = LV_REPID&lt;/P&gt;&lt;P&gt;      I_CALLBACK_USER_COMMAND = 'Z_USER_COMMAND'&lt;/P&gt;&lt;P&gt;      IS_LAYOUT               = FS_LAYO1&lt;/P&gt;&lt;P&gt;      IT_FIELDCAT             = FCAT1[]&lt;/P&gt;&lt;P&gt;      I_DEFAULT               = 'X'&lt;/P&gt;&lt;P&gt;      I_SAVE                  = 'U'&lt;/P&gt;&lt;P&gt;      IT_EVENTS               = FEVENTS1[]&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      T_OUTTAB                = T_FINAL[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: FCAT1,T_FINAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH: FCAT1,T_FINAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " display_alv&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form create_fieldcat&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&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;Create a field catalogue for Alv Report&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; p1 text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&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;/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;FORM CREATE_FIELDCAT1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for the Material No.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-FIELDNAME = 'MATNR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-KEY = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fcat-hotspot = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-OUTPUTLEN = '00006'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-SELTEXT_M = 'Material'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-INTTYPE = 'C'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-DATATYPE = 'CHAR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for the Plant&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-FIELDNAME = 'WERKS'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-KEY = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-OUTPUTLEN = '000005'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-SELTEXT_M = 'Plant'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-INTTYPE = 'C'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-DATATYPE = 'CHAR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for the MatDoc&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-FIELDNAME = 'MBLNR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-OUTPUTLEN = '000010'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-SELTEXT_M = 'Mat.Doc'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-INTTYPE = 'C'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-DATATYPE = 'CHAR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for the Date&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-FIELDNAME = 'BUDAT'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-OUTPUTLEN = '000010'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-SELTEXT_M = 'Mat.Date'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-INTTYPE = 'D'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-DATATYPE = 'DATS'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for the MOVETYPE&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-FIELDNAME = 'BWART'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-OUTPUTLEN = '000003'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-JUST = 'L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-SELTEXT_M = 'Move.TyPE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-INTTYPE = 'C'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-DATATYPE = 'CHAR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for the MOVETYPE&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-FIELDNAME = 'MENGE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-OUTPUTLEN = '000013'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-JUST = 'R'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-SELTEXT_M = 'Move.TyPE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-DDICTXT = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-INTTYPE = 'Q'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FCAT1-DATATYPE = 'QUAN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND FCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR FCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " create_fieldcat&lt;/P&gt;&lt;P&gt;**&amp;amp;----&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;&lt;/P&gt;&lt;P&gt;**&amp;amp; Form remove_zeros&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**&amp;amp;----&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;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&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;&lt;/P&gt;&lt;P&gt;**&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;--&amp;gt;P_I_VBAK_DETAIL_MATNR text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;&amp;lt;--P_I_VBAK_DETAIL_MATNR text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&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;&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM REMOVE_ZEROS USING P_IMKPFT2-MATNR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CHANGING P_IMKPFT2-MATNR1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      INPUT  = IMKPFT2-MATNR&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      OUTPUT = IMKPFT2-MATNR1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " remove_zeros&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 16 Apr 2008 12:08:04 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/report/m-p/3653733#M880094</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-16T12:08:04Z</dc:date>
    </item>
    <item>
      <title>Re: Report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/report/m-p/3653734#M880095</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 refer the simple alv program.&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;

*&amp;amp;---------------------------------------------------------------------*
*&amp;amp; Report  ZDEMO_ALVGRID                                               *
*&amp;amp;                                                                     *
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;                                                                     *
*&amp;amp; Example of a simple ALV Grid Report                                 *
*&amp;amp; ...................................                                 *
*&amp;amp;                                                                     *
*&amp;amp; The basic requirement for this demo is to display a number of       *
*&amp;amp; fields from the EKKO table.                                         *
*&amp;amp;---------------------------------------------------------------------*
REPORT  zdemo_alvgrid                 .

TABLES:     ekko.

type-pools: slis.                                 "ALV Declarations
*Data Declaration
*----------------
TYPES: BEGIN OF t_ekko,
  ebeln TYPE ekpo-ebeln,
  ebelp TYPE ekpo-ebelp,
  statu TYPE ekpo-statu,
  aedat TYPE ekpo-aedat,
  matnr TYPE ekpo-matnr,
  menge TYPE ekpo-menge,
  meins TYPE ekpo-meins,
  netpr TYPE ekpo-netpr,
  peinh TYPE ekpo-peinh,
 END OF t_ekko.

DATA: it_ekko TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,
      wa_ekko TYPE t_ekko.

*ALV data declarations
data: fieldcatalog type slis_t_fieldcat_alv with header line,
      gd_tab_group type slis_t_sp_group_alv,
      gd_layout    type slis_layout_alv,
      gd_repid     like sy-repid.


************************************************************************
*Start-of-selection.
START-OF-SELECTION.

perform data_retrieval.
perform build_fieldcatalog.
perform build_layout.
perform display_alv_report.


*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  BUILD_FIELDCATALOG
*&amp;amp;---------------------------------------------------------------------*
*       Build Fieldcatalog for ALV Report
*----------------------------------------------------------------------*
form build_fieldcatalog.

* There are a number of ways to create a fieldcat.
* For the purpose of this example i will build the fieldcatalog manualy
* by populating the internal table fields individually and then
* appending the rows. This method can be the most time consuming but can
* also allow you  more control of the final product.

* Beware though, you need to ensure that all fields required are
* populated. When using some of functionality available via ALV, such as
* total. You may need to provide more information than if you were
* simply displaying the result
*               I.e. Field type may be required in-order for
*                    the 'TOTAL' function to work.

  fieldcatalog-fieldname   = 'EBELN'.
  fieldcatalog-seltext_m   = 'Purchase Order'.
  fieldcatalog-col_pos     = 0.
  fieldcatalog-outputlen   = 10.
  fieldcatalog-emphasize   = 'X'.
  fieldcatalog-key         = 'X'.
*  fieldcatalog-do_sum      = 'X'.
*  fieldcatalog-no_zero     = 'X'.
  append fieldcatalog to fieldcatalog.
  clear  fieldcatalog.

  fieldcatalog-fieldname   = 'EBELP'.
  fieldcatalog-seltext_m   = 'PO Item'.
  fieldcatalog-col_pos     = 1.
  append fieldcatalog to fieldcatalog.
  clear  fieldcatalog.

  fieldcatalog-fieldname   = 'STATU'.
  fieldcatalog-seltext_m   = 'Status'.
  fieldcatalog-col_pos     = 2.
  append fieldcatalog to fieldcatalog.
  clear  fieldcatalog.

  fieldcatalog-fieldname   = 'AEDAT'.
  fieldcatalog-seltext_m   = 'Item change date'.
  fieldcatalog-col_pos     = 3.
  append fieldcatalog to fieldcatalog.
  clear  fieldcatalog.

  fieldcatalog-fieldname   = 'MATNR'.
  fieldcatalog-seltext_m   = 'Material Number'.
  fieldcatalog-col_pos     = 4.
  append fieldcatalog to fieldcatalog.
  clear  fieldcatalog.

  fieldcatalog-fieldname   = 'MENGE'.
  fieldcatalog-seltext_m   = 'PO quantity'.
  fieldcatalog-col_pos     = 5.
  append fieldcatalog to fieldcatalog.
  clear  fieldcatalog.

  fieldcatalog-fieldname   = 'MEINS'.
  fieldcatalog-seltext_m   = 'Order Unit'.
  fieldcatalog-col_pos     = 6.
  append fieldcatalog to fieldcatalog.
  clear  fieldcatalog.

  fieldcatalog-fieldname   = 'NETPR'.
  fieldcatalog-seltext_m   = 'Net Price'.
  fieldcatalog-col_pos     = 7.
  fieldcatalog-outputlen   = 15.
  fieldcatalog-do_sum      = 'X'.        "Display column total
  fieldcatalog-datatype     = 'CURR'.
  append fieldcatalog to fieldcatalog.
  clear  fieldcatalog.

  fieldcatalog-fieldname   = 'PEINH'.
  fieldcatalog-seltext_m   = 'Price Unit'.
  fieldcatalog-col_pos     = 8.
  append fieldcatalog to fieldcatalog.
  clear  fieldcatalog.
endform.                    " BUILD_FIELDCATALOG


*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  BUILD_LAYOUT
*&amp;amp;---------------------------------------------------------------------*
*       Build layout for ALV grid report
*----------------------------------------------------------------------*
form build_layout.
  gd_layout-no_input          = 'X'.
  gd_layout-colwidth_optimize = 'X'.
  gd_layout-totals_text       = 'Totals'(201).
*  gd_layout-totals_only        = 'X'.
*  gd_layout-f2code            = 'DISP'.  "Sets fcode for when double
*                                         "click(press f2)
*  gd_layout-zebra             = 'X'.
*  gd_layout-group_change_edit = 'X'.
*  gd_layout-header_text       = 'helllllo'.
endform.                    " BUILD_LAYOUT


*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  DISPLAY_ALV_REPORT
*&amp;amp;---------------------------------------------------------------------*
*       Display report using ALV grid
*----------------------------------------------------------------------*
form display_alv_report.
  gd_repid = sy-repid.
  call function 'REUSE_ALV_GRID_DISPLAY'
       exporting
            i_callback_program      = gd_repid
*            i_callback_top_of_page   = 'TOP-OF-PAGE'  "see FORM
*            i_callback_user_command = 'USER_COMMAND'
*            i_grid_title           = outtext
            is_layout               = gd_layout
            it_fieldcat             = fieldcatalog[]
*            it_special_groups       = gd_tabgroup
*            IT_EVENTS                = GT_XEVENTS
            i_save                  = 'X'
*            is_variant              = z_template

       tables
            t_outtab                = it_ekko
       exceptions
            program_error           = 1
            others                  = 2.
  if sy-subrc &amp;lt;&amp;gt; 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  endif.
endform.                    " DISPLAY_ALV_REPORT


*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  DATA_RETRIEVAL
*&amp;amp;---------------------------------------------------------------------*
*       Retrieve data form EKPO table and populate itab it_ekko
*----------------------------------------------------------------------*
form data_retrieval.

select ebeln ebelp statu aedat matnr menge meins netpr peinh
 up to 10 rows
  from ekpo
  into table it_ekko.
endform.                    " DATA_RETRIEVAL


&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Sriram Ponna.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 16 Apr 2008 12:08:25 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/report/m-p/3653734#M880095</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-16T12:08:25Z</dc:date>
    </item>
    <item>
      <title>Re: Report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/report/m-p/3653735#M880096</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi check mysite ...you will find many examples..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://sapprograms.blogspot.com/" target="test_blank"&gt;http://sapprograms.blogspot.com/&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;venkat.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 16 Apr 2008 12:11:25 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/report/m-p/3653735#M880096</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-16T12:11:25Z</dc:date>
    </item>
    <item>
      <title>Re: Report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/report/m-p/3653736#M880097</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;Try in this link.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;[http://abapprogramming.blogspot.com/search/label/ABAP%20REPORTS%20%20SAMPLE%20CODES]&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 16 Apr 2008 12:21:19 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/report/m-p/3653736#M880097</guid>
      <dc:creator>asik_shameem</dc:creator>
      <dc:date>2008-04-16T12:21:19Z</dc:date>
    </item>
  </channel>
</rss>

