<?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: Simple ALV grid in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/simple-alv-grid/m-p/4131405#M987896</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Pl. see this code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT z_alv_eg .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;TYPE POOL DECLARATION FOR ALV REPORT ONLY&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;&lt;/P&gt;&lt;P&gt;TYPE-POOLS : slis.          "Type Pool for ALV&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                CONSTANTS&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;CONSTANTS: c_a(1)  TYPE c VALUE 'A',        " value of A&lt;/P&gt;&lt;P&gt;           c_x(1)  TYPE c VALUE 'X',        " value of X&lt;/P&gt;&lt;P&gt;           c_l(1)  TYPE c VALUE 'L',        " value of L&lt;/P&gt;&lt;P&gt;           c_r(1)  TYPE c VALUE 'R',        " value of R&lt;/P&gt;&lt;P&gt;           c_04(2) TYPE c VALUE '04',       " value of 04&lt;/P&gt;&lt;P&gt;           c_05(2) TYPE c VALUE '05',       " value of 05&lt;/P&gt;&lt;P&gt;           c_08(2) TYPE c VALUE '08',       " value of 08&lt;/P&gt;&lt;P&gt;           c_09(2) TYPE c VALUE '09',       " value of 09&lt;/P&gt;&lt;P&gt;           c_10(2) TYPE c VALUE '10',       " value of 10&lt;/P&gt;&lt;P&gt;           c_matnr TYPE fieldname VALUE 'MATNR', " Material&lt;/P&gt;&lt;P&gt;           c_charg TYPE fieldname VALUE 'CHARG', " Batch&lt;/P&gt;&lt;P&gt;           c_aufnr TYPE fieldname VALUE 'AUFNR', " Order&lt;/P&gt;&lt;P&gt;           c_mblnr TYPE fieldname VALUE 'MBLNR', " Mat Doc&lt;/P&gt;&lt;P&gt;           c_zeile TYPE fieldname VALUE 'ZEILE', " Item&lt;/P&gt;&lt;P&gt;           c_i_alv(5) TYPE c VALUE 'I_ALV',      " i_alv&lt;/P&gt;&lt;P&gt;           c_mseg TYPE tabname VALUE 'MSEG'.&lt;/P&gt;&lt;P&gt;" table name MSEG&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                    TYPES                                            *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Type for declaring table I_alv&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TYPES: BEGIN OF ty_alv,&lt;/P&gt;&lt;P&gt;        werks TYPE werks_d,&lt;/P&gt;&lt;P&gt;        matnr TYPE matnr,&lt;/P&gt;&lt;P&gt;        charg TYPE charg_d,&lt;/P&gt;&lt;P&gt;        aufnr TYPE aufnr,&lt;/P&gt;&lt;P&gt;        mblnr TYPE mblnr,&lt;/P&gt;&lt;P&gt;        mjahr TYPE mjahr,&lt;/P&gt;&lt;P&gt;        zeile TYPE udzeile,&lt;/P&gt;&lt;P&gt;      END OF ty_alv.&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&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;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Internal tables to hold material documenmt information&lt;/P&gt;&lt;P&gt;DATA:  i_alv TYPE STANDARD TABLE OF ty_alv WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Internal table for field catalog&lt;/P&gt;&lt;P&gt;       i_fcat TYPE slis_t_fieldcat_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;&amp;amp;&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;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&lt;/P&gt;&lt;P&gt;DATA:  v_repid     LIKE sy-repid.         " To store program name&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                   SELECTION SCREEN                                 *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS:       p_werks TYPE werks_d OBLIGATORY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&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;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&lt;/P&gt;&lt;P&gt;CLEAR:&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_alv,&lt;/P&gt;&lt;P&gt;       i_fcat,&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_repid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Refresh Internal Tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;REFRESH: i_alv,&lt;/P&gt;&lt;P&gt;         i_fcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Assign value to v_repid&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;v_repid = sy-repid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&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;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;This subroutine retrieves data from table&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;/GLB/RGTORDGRP_R&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&lt;/P&gt;&lt;P&gt;  PERFORM populate_i_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Build up fieldcatalog for the fields to be displayed&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT i_alv[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    PERFORM fcat_build.        " Build the field catalog&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;Check if the Field Catalog internal Table is not empty&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF NOT i_fcat[] IS INITIAL.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Call ALV Grid Viewer&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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       = v_repid&lt;/P&gt;&lt;P&gt;              i_callback_pf_status_set = 'SET_PF_STATUS'&lt;/P&gt;&lt;P&gt;              i_callback_user_command  = 'USER_COMMAND'&lt;/P&gt;&lt;P&gt;              it_fieldcat              = i_fcat&lt;/P&gt;&lt;P&gt;              i_default                = c_x&lt;/P&gt;&lt;P&gt;              i_save                   = c_a&lt;/P&gt;&lt;P&gt;         TABLES&lt;/P&gt;&lt;P&gt;              t_outtab                 = i_alv&lt;/P&gt;&lt;P&gt;         EXCEPTIONS&lt;/P&gt;&lt;P&gt;              program_error            = 1&lt;/P&gt;&lt;P&gt;              OTHERS                   = 2.&lt;/P&gt;&lt;P&gt;    IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;              WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;      LEAVE LIST-PROCESSING.&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;&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_i_alv&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 populate_i_alv .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT  werks&lt;/P&gt;&lt;P&gt;          matnr&lt;/P&gt;&lt;P&gt;          charg&lt;/P&gt;&lt;P&gt;          aufnr&lt;/P&gt;&lt;P&gt;          mblnr&lt;/P&gt;&lt;P&gt;          mjahr&lt;/P&gt;&lt;P&gt;          zeile&lt;/P&gt;&lt;P&gt;  INTO TABLE i_alv&lt;/P&gt;&lt;P&gt;  FROM mseg&lt;/P&gt;&lt;P&gt;  WHERE werks = p_werks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    SORT i_alv BY matnr charg aufnr.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " populate_i_alv&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  fcat_build&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      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 fcat_build .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : l_tabname1 TYPE tabname,      "table name&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         l_sycucol04 TYPE sycucol,   "current column&lt;/P&gt;&lt;P&gt;         l_sycucol05 TYPE sycucol,   "current column&lt;/P&gt;&lt;P&gt;         l_sycucol08 TYPE sycucol,   "current column&lt;/P&gt;&lt;P&gt;         l_sycucol09 TYPE sycucol,   "current column&lt;/P&gt;&lt;P&gt;         l_sycucol10 TYPE sycucol,   "current column&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         l_field4  TYPE fieldname,    "field name&lt;/P&gt;&lt;P&gt;         l_field5  TYPE fieldname,    "field name&lt;/P&gt;&lt;P&gt;         l_field8  TYPE fieldname,    "field name&lt;/P&gt;&lt;P&gt;         l_field9  TYPE fieldname,    "field name&lt;/P&gt;&lt;P&gt;         l_field10 TYPE fieldname,    "field name&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         l_txt4 TYPE reptxt,         "header text&lt;/P&gt;&lt;P&gt;         l_txt5 TYPE reptxt,         "header text&lt;/P&gt;&lt;P&gt;         l_txt8 TYPE reptxt,         "header text&lt;/P&gt;&lt;P&gt;         l_txt9 TYPE reptxt,         "header text&lt;/P&gt;&lt;P&gt;         l_txt10 TYPE reptxt,        "header text&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         l_sel_ltxt4 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_ltxt5 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_ltxt8 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_ltxt9 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_ltxt10 TYPE reptxt,   "header text&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         l_sel_mtxt4 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_mtxt5 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_mtxt8 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_mtxt9 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_mtxt10 TYPE reptxt,   "header text&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         l_sel_stxt4 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_stxt5 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_stxt8 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_stxt9 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_stxt10 TYPE reptxt,   "header text&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         l_reffield4 TYPE fieldname,    "Reference field name&lt;/P&gt;&lt;P&gt;         l_reffield5 TYPE fieldname,    "Reference field name&lt;/P&gt;&lt;P&gt;         l_reffield8 TYPE fieldname,    "Reference field name&lt;/P&gt;&lt;P&gt;         l_reffield9 TYPE fieldname,    "Reference field name&lt;/P&gt;&lt;P&gt;         l_reffield10 TYPE fieldname,   "Reference field name&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         l_int_tabname TYPE tabname.    "internal table name&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Assign table name for ALV report&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_tabname1 = c_mseg. "table name&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Assign Current column position&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_sycucol04	= c_04. " value 04&lt;/P&gt;&lt;P&gt;  l_sycucol05	= c_05. " value 05&lt;/P&gt;&lt;P&gt;  l_sycucol08	= c_08. " value 08&lt;/P&gt;&lt;P&gt;  l_sycucol09	= c_09. " value 09&lt;/P&gt;&lt;P&gt;  l_sycucol10	= c_10. " value 10&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Assign Internal table name&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_int_tabname = c_i_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Assign Detailed text to printed&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_txt4 = text-004. " Material&lt;/P&gt;&lt;P&gt;  l_txt5 = text-005. " Batch&lt;/P&gt;&lt;P&gt;  l_txt8 = text-008. " Order&lt;/P&gt;&lt;P&gt;  l_txt9 = text-009. " Mat Doc&lt;/P&gt;&lt;P&gt;  l_txt10 = text-010." Item&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Assign Detailed text to printed-long&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_sel_ltxt4 = text-004. " Material&lt;/P&gt;&lt;P&gt;  l_sel_ltxt5 = text-005. " Batch&lt;/P&gt;&lt;P&gt;  l_sel_ltxt8 = text-008. " Order&lt;/P&gt;&lt;P&gt;  l_sel_ltxt9 = text-009. " Mat Doc&lt;/P&gt;&lt;P&gt;  l_sel_ltxt10 = text-010. " Item&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Assign Detailed text to printed-medium&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_sel_mtxt4 = text-004. " Material&lt;/P&gt;&lt;P&gt;  l_sel_mtxt5 = text-005. " Batch&lt;/P&gt;&lt;P&gt;  l_sel_mtxt8 = text-008. " Order&lt;/P&gt;&lt;P&gt;  l_sel_mtxt9 = text-009. " Mat Doc&lt;/P&gt;&lt;P&gt;  l_sel_mtxt10 = text-010. " Item&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Assign Detailed text to printed-short&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_sel_stxt4 = text-004. " Material&lt;/P&gt;&lt;P&gt;  l_sel_stxt5 = text-005. " Batch&lt;/P&gt;&lt;P&gt;  l_sel_stxt8 = text-008. " Order&lt;/P&gt;&lt;P&gt;  l_sel_stxt9 = text-009. " Mat Doc&lt;/P&gt;&lt;P&gt;  l_sel_stxt10 = text-010. " Item&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Assign field name to be passed&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_field4 = c_matnr. " Material&lt;/P&gt;&lt;P&gt;  l_field5 = c_charg. " Batch&lt;/P&gt;&lt;P&gt;  l_field8 = c_aufnr. " Order&lt;/P&gt;&lt;P&gt;  l_field9 = c_mblnr. " Mat Doc&lt;/P&gt;&lt;P&gt;  l_field10 = c_zeile." Item&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Assign Reference field name to be passed&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_reffield4 = c_matnr.     " Material&lt;/P&gt;&lt;P&gt;  l_reffield5 = c_charg.     " Batch&lt;/P&gt;&lt;P&gt;  l_reffield8 = c_aufnr.     " Order&lt;/P&gt;&lt;P&gt;  l_reffield9 = c_mblnr.     " Mat Doc&lt;/P&gt;&lt;P&gt;  l_reffield10 = c_zeile.    " Item&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Populate the field catalog&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM fcat_fill USING:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*POS      FIELD         TABLE         KEY   JUST    TITLE   REFTAB TYPE&lt;/P&gt;&lt;P&gt;*REFFIELD     SELTEXTLONG   SELTEXTMEDIUM SELTEXTSHORT&lt;/P&gt;&lt;P&gt;  l_sycucol04	l_field4	l_int_tabname	''	c_l 	l_txt4	&lt;/P&gt;&lt;P&gt;l_tabname1&lt;/P&gt;&lt;P&gt;  	l_reffield4	l_sel_ltxt4	l_sel_mtxt4	l_sel_stxt4	,&lt;/P&gt;&lt;P&gt;  l_sycucol05	l_field5	l_int_tabname	''	c_l 	l_txt5	&lt;/P&gt;&lt;P&gt;l_tabname1&lt;/P&gt;&lt;P&gt;  	l_reffield5	l_sel_ltxt5	l_sel_mtxt5	l_sel_stxt5	,&lt;/P&gt;&lt;P&gt;  l_sycucol08	l_field8	l_int_tabname	''	c_l 	l_txt8	&lt;/P&gt;&lt;P&gt;l_tabname1&lt;/P&gt;&lt;P&gt;  	l_reffield8	l_sel_ltxt8	l_sel_mtxt8	l_sel_stxt8	,&lt;/P&gt;&lt;P&gt;  l_sycucol09	l_field9	l_int_tabname	''	c_l 	l_txt9	&lt;/P&gt;&lt;P&gt;l_tabname1&lt;/P&gt;&lt;P&gt;  	l_reffield9	l_sel_ltxt9	l_sel_mtxt8	l_sel_stxt9	,&lt;/P&gt;&lt;P&gt;  l_sycucol10	l_field10	l_int_tabname	''	c_l 	l_txt10&lt;/P&gt;&lt;P&gt;l_tabname1&lt;/P&gt;&lt;P&gt;  l_reffield10 	l_sel_ltxt10	l_sel_mtxt10	l_sel_stxt10	.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fcat_build&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fcat_fill&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;      Populate field catalog attributes&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;&lt;/P&gt;&lt;P&gt;FORM fcat_fill USING  p_pos TYPE sycucol&lt;/P&gt;&lt;P&gt;                      p_fld TYPE fieldname&lt;/P&gt;&lt;P&gt;                      p_tab TYPE tabname&lt;/P&gt;&lt;P&gt;                      p_key TYPE char1&lt;/P&gt;&lt;P&gt;                      p_jus TYPE char1&lt;/P&gt;&lt;P&gt;                      p_txt TYPE reptext&lt;/P&gt;&lt;P&gt;                      p_reftab TYPE char30&lt;/P&gt;&lt;P&gt;                      p_reffld TYPE fieldname&lt;/P&gt;&lt;P&gt;                      p_seltxtl TYPE reptxt&lt;/P&gt;&lt;P&gt;                      p_seltxtm TYPE reptxt&lt;/P&gt;&lt;P&gt;                      p_seltxts TYPE reptxt.&lt;/P&gt;&lt;P&gt;  DATA     : i_lfl_fcat TYPE slis_fieldcat_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-col_pos            = p_pos. "position of column&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-fieldname          = p_fld. "name of field&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-tabname            = p_tab. "name of table&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-key                = p_key. "key flag&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-just               = p_jus. "justified - R/L&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-reptext_ddic       = p_txt. "text header&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-ref_tabname        = p_reftab. "reference table&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-ref_fieldname      = p_reffld. "reference field&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-seltext_l          = p_seltxtl. "selection text long&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-seltext_m          = p_seltxtm. "selection text medium&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-seltext_s          = p_seltxts. "selection text short&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-ddictxt            = c_l.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND i_lfl_fcat  TO i_fcat.&lt;/P&gt;&lt;P&gt;  CLEAR  i_lfl_fcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fcat_fill&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  SET_PF_STATUS&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;      SUBROUTINE FOR SETTING PF-STATUS&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 set_pf_status USING rt_extab TYPE slis_t_extab.&lt;/P&gt;&lt;P&gt;  SET PF-STATUS 'ZSTATUS'.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;"Define custom PF-status with a button on application toolbar&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;" and attach fcode = TEST with it.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                  " SET_PF_STATUS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      FORM USER_COMMAND                                             *&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;     This form for user command event&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;  R_UCOMM      USER COMMAND                                     *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  RS_SELFIELD  SEL Field                                        *&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 user_command USING r_ucomm LIKE sy-ucomm&lt;/P&gt;&lt;P&gt;                       rs_selfield TYPE slis_selfield.&lt;/P&gt;&lt;P&gt;  IF r_ucomm = 'TEST'.&lt;/P&gt;&lt;P&gt;    SUBMIT z_alv_hi AND RETURN.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Joy.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 27 Jun 2008 07:06:37 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-06-27T07:06:37Z</dc:date>
    <item>
      <title>Simple ALV grid</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/simple-alv-grid/m-p/4131404#M987895</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;can anyone solve my problem, &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I just want to add new push button in the application toolbar of a simple ALV grid&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;can somebody help me in this&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 27 Jun 2008 07:00:52 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/simple-alv-grid/m-p/4131404#M987895</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-06-27T07:00:52Z</dc:date>
    </item>
    <item>
      <title>Re: Simple ALV grid</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/simple-alv-grid/m-p/4131405#M987896</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Pl. see this code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT z_alv_eg .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;TYPE POOL DECLARATION FOR ALV REPORT ONLY&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;&lt;/P&gt;&lt;P&gt;TYPE-POOLS : slis.          "Type Pool for ALV&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                CONSTANTS&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;CONSTANTS: c_a(1)  TYPE c VALUE 'A',        " value of A&lt;/P&gt;&lt;P&gt;           c_x(1)  TYPE c VALUE 'X',        " value of X&lt;/P&gt;&lt;P&gt;           c_l(1)  TYPE c VALUE 'L',        " value of L&lt;/P&gt;&lt;P&gt;           c_r(1)  TYPE c VALUE 'R',        " value of R&lt;/P&gt;&lt;P&gt;           c_04(2) TYPE c VALUE '04',       " value of 04&lt;/P&gt;&lt;P&gt;           c_05(2) TYPE c VALUE '05',       " value of 05&lt;/P&gt;&lt;P&gt;           c_08(2) TYPE c VALUE '08',       " value of 08&lt;/P&gt;&lt;P&gt;           c_09(2) TYPE c VALUE '09',       " value of 09&lt;/P&gt;&lt;P&gt;           c_10(2) TYPE c VALUE '10',       " value of 10&lt;/P&gt;&lt;P&gt;           c_matnr TYPE fieldname VALUE 'MATNR', " Material&lt;/P&gt;&lt;P&gt;           c_charg TYPE fieldname VALUE 'CHARG', " Batch&lt;/P&gt;&lt;P&gt;           c_aufnr TYPE fieldname VALUE 'AUFNR', " Order&lt;/P&gt;&lt;P&gt;           c_mblnr TYPE fieldname VALUE 'MBLNR', " Mat Doc&lt;/P&gt;&lt;P&gt;           c_zeile TYPE fieldname VALUE 'ZEILE', " Item&lt;/P&gt;&lt;P&gt;           c_i_alv(5) TYPE c VALUE 'I_ALV',      " i_alv&lt;/P&gt;&lt;P&gt;           c_mseg TYPE tabname VALUE 'MSEG'.&lt;/P&gt;&lt;P&gt;" table name MSEG&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                    TYPES                                            *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Type for declaring table I_alv&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TYPES: BEGIN OF ty_alv,&lt;/P&gt;&lt;P&gt;        werks TYPE werks_d,&lt;/P&gt;&lt;P&gt;        matnr TYPE matnr,&lt;/P&gt;&lt;P&gt;        charg TYPE charg_d,&lt;/P&gt;&lt;P&gt;        aufnr TYPE aufnr,&lt;/P&gt;&lt;P&gt;        mblnr TYPE mblnr,&lt;/P&gt;&lt;P&gt;        mjahr TYPE mjahr,&lt;/P&gt;&lt;P&gt;        zeile TYPE udzeile,&lt;/P&gt;&lt;P&gt;      END OF ty_alv.&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&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;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Internal tables to hold material documenmt information&lt;/P&gt;&lt;P&gt;DATA:  i_alv TYPE STANDARD TABLE OF ty_alv WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Internal table for field catalog&lt;/P&gt;&lt;P&gt;       i_fcat TYPE slis_t_fieldcat_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;&amp;amp;&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;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&lt;/P&gt;&lt;P&gt;DATA:  v_repid     LIKE sy-repid.         " To store program name&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                   SELECTION SCREEN                                 *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS:       p_werks TYPE werks_d OBLIGATORY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&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;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&lt;/P&gt;&lt;P&gt;CLEAR:&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_alv,&lt;/P&gt;&lt;P&gt;       i_fcat,&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_repid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Refresh Internal Tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;REFRESH: i_alv,&lt;/P&gt;&lt;P&gt;         i_fcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Assign value to v_repid&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;v_repid = sy-repid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&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;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;This subroutine retrieves data from table&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;/GLB/RGTORDGRP_R&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------" /&gt;&lt;P&gt;&amp;amp;&lt;/P&gt;&lt;P&gt;  PERFORM populate_i_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Build up fieldcatalog for the fields to be displayed&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT i_alv[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    PERFORM fcat_build.        " Build the field catalog&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;Check if the Field Catalog internal Table is not empty&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF NOT i_fcat[] IS INITIAL.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Call ALV Grid Viewer&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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       = v_repid&lt;/P&gt;&lt;P&gt;              i_callback_pf_status_set = 'SET_PF_STATUS'&lt;/P&gt;&lt;P&gt;              i_callback_user_command  = 'USER_COMMAND'&lt;/P&gt;&lt;P&gt;              it_fieldcat              = i_fcat&lt;/P&gt;&lt;P&gt;              i_default                = c_x&lt;/P&gt;&lt;P&gt;              i_save                   = c_a&lt;/P&gt;&lt;P&gt;         TABLES&lt;/P&gt;&lt;P&gt;              t_outtab                 = i_alv&lt;/P&gt;&lt;P&gt;         EXCEPTIONS&lt;/P&gt;&lt;P&gt;              program_error            = 1&lt;/P&gt;&lt;P&gt;              OTHERS                   = 2.&lt;/P&gt;&lt;P&gt;    IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;              WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;      LEAVE LIST-PROCESSING.&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;&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_i_alv&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 populate_i_alv .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT  werks&lt;/P&gt;&lt;P&gt;          matnr&lt;/P&gt;&lt;P&gt;          charg&lt;/P&gt;&lt;P&gt;          aufnr&lt;/P&gt;&lt;P&gt;          mblnr&lt;/P&gt;&lt;P&gt;          mjahr&lt;/P&gt;&lt;P&gt;          zeile&lt;/P&gt;&lt;P&gt;  INTO TABLE i_alv&lt;/P&gt;&lt;P&gt;  FROM mseg&lt;/P&gt;&lt;P&gt;  WHERE werks = p_werks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    SORT i_alv BY matnr charg aufnr.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " populate_i_alv&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  fcat_build&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      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 fcat_build .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : l_tabname1 TYPE tabname,      "table name&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         l_sycucol04 TYPE sycucol,   "current column&lt;/P&gt;&lt;P&gt;         l_sycucol05 TYPE sycucol,   "current column&lt;/P&gt;&lt;P&gt;         l_sycucol08 TYPE sycucol,   "current column&lt;/P&gt;&lt;P&gt;         l_sycucol09 TYPE sycucol,   "current column&lt;/P&gt;&lt;P&gt;         l_sycucol10 TYPE sycucol,   "current column&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         l_field4  TYPE fieldname,    "field name&lt;/P&gt;&lt;P&gt;         l_field5  TYPE fieldname,    "field name&lt;/P&gt;&lt;P&gt;         l_field8  TYPE fieldname,    "field name&lt;/P&gt;&lt;P&gt;         l_field9  TYPE fieldname,    "field name&lt;/P&gt;&lt;P&gt;         l_field10 TYPE fieldname,    "field name&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         l_txt4 TYPE reptxt,         "header text&lt;/P&gt;&lt;P&gt;         l_txt5 TYPE reptxt,         "header text&lt;/P&gt;&lt;P&gt;         l_txt8 TYPE reptxt,         "header text&lt;/P&gt;&lt;P&gt;         l_txt9 TYPE reptxt,         "header text&lt;/P&gt;&lt;P&gt;         l_txt10 TYPE reptxt,        "header text&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         l_sel_ltxt4 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_ltxt5 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_ltxt8 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_ltxt9 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_ltxt10 TYPE reptxt,   "header text&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         l_sel_mtxt4 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_mtxt5 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_mtxt8 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_mtxt9 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_mtxt10 TYPE reptxt,   "header text&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         l_sel_stxt4 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_stxt5 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_stxt8 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_stxt9 TYPE reptxt,    "header text&lt;/P&gt;&lt;P&gt;         l_sel_stxt10 TYPE reptxt,   "header text&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         l_reffield4 TYPE fieldname,    "Reference field name&lt;/P&gt;&lt;P&gt;         l_reffield5 TYPE fieldname,    "Reference field name&lt;/P&gt;&lt;P&gt;         l_reffield8 TYPE fieldname,    "Reference field name&lt;/P&gt;&lt;P&gt;         l_reffield9 TYPE fieldname,    "Reference field name&lt;/P&gt;&lt;P&gt;         l_reffield10 TYPE fieldname,   "Reference field name&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         l_int_tabname TYPE tabname.    "internal table name&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Assign table name for ALV report&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_tabname1 = c_mseg. "table name&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Assign Current column position&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_sycucol04	= c_04. " value 04&lt;/P&gt;&lt;P&gt;  l_sycucol05	= c_05. " value 05&lt;/P&gt;&lt;P&gt;  l_sycucol08	= c_08. " value 08&lt;/P&gt;&lt;P&gt;  l_sycucol09	= c_09. " value 09&lt;/P&gt;&lt;P&gt;  l_sycucol10	= c_10. " value 10&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Assign Internal table name&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_int_tabname = c_i_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Assign Detailed text to printed&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_txt4 = text-004. " Material&lt;/P&gt;&lt;P&gt;  l_txt5 = text-005. " Batch&lt;/P&gt;&lt;P&gt;  l_txt8 = text-008. " Order&lt;/P&gt;&lt;P&gt;  l_txt9 = text-009. " Mat Doc&lt;/P&gt;&lt;P&gt;  l_txt10 = text-010." Item&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Assign Detailed text to printed-long&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_sel_ltxt4 = text-004. " Material&lt;/P&gt;&lt;P&gt;  l_sel_ltxt5 = text-005. " Batch&lt;/P&gt;&lt;P&gt;  l_sel_ltxt8 = text-008. " Order&lt;/P&gt;&lt;P&gt;  l_sel_ltxt9 = text-009. " Mat Doc&lt;/P&gt;&lt;P&gt;  l_sel_ltxt10 = text-010. " Item&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Assign Detailed text to printed-medium&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_sel_mtxt4 = text-004. " Material&lt;/P&gt;&lt;P&gt;  l_sel_mtxt5 = text-005. " Batch&lt;/P&gt;&lt;P&gt;  l_sel_mtxt8 = text-008. " Order&lt;/P&gt;&lt;P&gt;  l_sel_mtxt9 = text-009. " Mat Doc&lt;/P&gt;&lt;P&gt;  l_sel_mtxt10 = text-010. " Item&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Assign Detailed text to printed-short&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_sel_stxt4 = text-004. " Material&lt;/P&gt;&lt;P&gt;  l_sel_stxt5 = text-005. " Batch&lt;/P&gt;&lt;P&gt;  l_sel_stxt8 = text-008. " Order&lt;/P&gt;&lt;P&gt;  l_sel_stxt9 = text-009. " Mat Doc&lt;/P&gt;&lt;P&gt;  l_sel_stxt10 = text-010. " Item&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Assign field name to be passed&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_field4 = c_matnr. " Material&lt;/P&gt;&lt;P&gt;  l_field5 = c_charg. " Batch&lt;/P&gt;&lt;P&gt;  l_field8 = c_aufnr. " Order&lt;/P&gt;&lt;P&gt;  l_field9 = c_mblnr. " Mat Doc&lt;/P&gt;&lt;P&gt;  l_field10 = c_zeile." Item&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Assign Reference field name to be passed&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_reffield4 = c_matnr.     " Material&lt;/P&gt;&lt;P&gt;  l_reffield5 = c_charg.     " Batch&lt;/P&gt;&lt;P&gt;  l_reffield8 = c_aufnr.     " Order&lt;/P&gt;&lt;P&gt;  l_reffield9 = c_mblnr.     " Mat Doc&lt;/P&gt;&lt;P&gt;  l_reffield10 = c_zeile.    " Item&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Populate the field catalog&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM fcat_fill USING:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*POS      FIELD         TABLE         KEY   JUST    TITLE   REFTAB TYPE&lt;/P&gt;&lt;P&gt;*REFFIELD     SELTEXTLONG   SELTEXTMEDIUM SELTEXTSHORT&lt;/P&gt;&lt;P&gt;  l_sycucol04	l_field4	l_int_tabname	''	c_l 	l_txt4	&lt;/P&gt;&lt;P&gt;l_tabname1&lt;/P&gt;&lt;P&gt;  	l_reffield4	l_sel_ltxt4	l_sel_mtxt4	l_sel_stxt4	,&lt;/P&gt;&lt;P&gt;  l_sycucol05	l_field5	l_int_tabname	''	c_l 	l_txt5	&lt;/P&gt;&lt;P&gt;l_tabname1&lt;/P&gt;&lt;P&gt;  	l_reffield5	l_sel_ltxt5	l_sel_mtxt5	l_sel_stxt5	,&lt;/P&gt;&lt;P&gt;  l_sycucol08	l_field8	l_int_tabname	''	c_l 	l_txt8	&lt;/P&gt;&lt;P&gt;l_tabname1&lt;/P&gt;&lt;P&gt;  	l_reffield8	l_sel_ltxt8	l_sel_mtxt8	l_sel_stxt8	,&lt;/P&gt;&lt;P&gt;  l_sycucol09	l_field9	l_int_tabname	''	c_l 	l_txt9	&lt;/P&gt;&lt;P&gt;l_tabname1&lt;/P&gt;&lt;P&gt;  	l_reffield9	l_sel_ltxt9	l_sel_mtxt8	l_sel_stxt9	,&lt;/P&gt;&lt;P&gt;  l_sycucol10	l_field10	l_int_tabname	''	c_l 	l_txt10&lt;/P&gt;&lt;P&gt;l_tabname1&lt;/P&gt;&lt;P&gt;  l_reffield10 	l_sel_ltxt10	l_sel_mtxt10	l_sel_stxt10	.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fcat_build&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fcat_fill&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;      Populate field catalog attributes&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;&lt;/P&gt;&lt;P&gt;FORM fcat_fill USING  p_pos TYPE sycucol&lt;/P&gt;&lt;P&gt;                      p_fld TYPE fieldname&lt;/P&gt;&lt;P&gt;                      p_tab TYPE tabname&lt;/P&gt;&lt;P&gt;                      p_key TYPE char1&lt;/P&gt;&lt;P&gt;                      p_jus TYPE char1&lt;/P&gt;&lt;P&gt;                      p_txt TYPE reptext&lt;/P&gt;&lt;P&gt;                      p_reftab TYPE char30&lt;/P&gt;&lt;P&gt;                      p_reffld TYPE fieldname&lt;/P&gt;&lt;P&gt;                      p_seltxtl TYPE reptxt&lt;/P&gt;&lt;P&gt;                      p_seltxtm TYPE reptxt&lt;/P&gt;&lt;P&gt;                      p_seltxts TYPE reptxt.&lt;/P&gt;&lt;P&gt;  DATA     : i_lfl_fcat TYPE slis_fieldcat_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-col_pos            = p_pos. "position of column&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-fieldname          = p_fld. "name of field&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-tabname            = p_tab. "name of table&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-key                = p_key. "key flag&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-just               = p_jus. "justified - R/L&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-reptext_ddic       = p_txt. "text header&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-ref_tabname        = p_reftab. "reference table&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-ref_fieldname      = p_reffld. "reference field&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-seltext_l          = p_seltxtl. "selection text long&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-seltext_m          = p_seltxtm. "selection text medium&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-seltext_s          = p_seltxts. "selection text short&lt;/P&gt;&lt;P&gt;  i_lfl_fcat-ddictxt            = c_l.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND i_lfl_fcat  TO i_fcat.&lt;/P&gt;&lt;P&gt;  CLEAR  i_lfl_fcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fcat_fill&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  SET_PF_STATUS&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;      SUBROUTINE FOR SETTING PF-STATUS&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 set_pf_status USING rt_extab TYPE slis_t_extab.&lt;/P&gt;&lt;P&gt;  SET PF-STATUS 'ZSTATUS'.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;"Define custom PF-status with a button on application toolbar&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;" and attach fcode = TEST with it.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                  " SET_PF_STATUS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      FORM USER_COMMAND                                             *&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;     This form for user command event&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;  R_UCOMM      USER COMMAND                                     *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  RS_SELFIELD  SEL Field                                        *&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 user_command USING r_ucomm LIKE sy-ucomm&lt;/P&gt;&lt;P&gt;                       rs_selfield TYPE slis_selfield.&lt;/P&gt;&lt;P&gt;  IF r_ucomm = 'TEST'.&lt;/P&gt;&lt;P&gt;    SUBMIT z_alv_hi AND RETURN.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Joy.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 27 Jun 2008 07:06:37 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/simple-alv-grid/m-p/4131405#M987896</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-06-27T07:06:37Z</dc:date>
    </item>
    <item>
      <title>Re: Simple ALV grid</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/simple-alv-grid/m-p/4131406#M987897</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;STRONG&gt;check this link u will get all kind of ALV&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.saptechnical.com/Tutorials/ALV/ALVMainPage.htm" target="test_blank"&gt;http://www.saptechnical.com/Tutorials/ALV/ALVMainPage.htm&lt;/A&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;Reward IF.............&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Anbu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 27 Jun 2008 07:08:06 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/simple-alv-grid/m-p/4131406#M987897</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-06-27T07:08:06Z</dc:date>
    </item>
    <item>
      <title>Re: Simple ALV grid</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/simple-alv-grid/m-p/4131407#M987898</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Prakash,&lt;/P&gt;&lt;P&gt;   Use Module pool concept and call the screen like declare this in your program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Module pbo_100 output.&lt;/P&gt;&lt;P&gt;  set pf-status 'STATUS100'.&lt;/P&gt;&lt;P&gt;endmodule.                             " pbo_100  OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Module pai_100 input.&lt;/P&gt;&lt;P&gt;  case ok_code.&lt;/P&gt;&lt;P&gt;    when 'BACK' or 'CANCEL'.&lt;/P&gt;&lt;P&gt;      leave to screen 0.&lt;/P&gt;&lt;P&gt;    when 'EXIT'.&lt;/P&gt;&lt;P&gt;      leave program.&lt;/P&gt;&lt;P&gt;  endcase.&lt;/P&gt;&lt;P&gt;endmodule.                             " pai_100  INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this will help you.&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;aadi.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 27 Jun 2008 07:09:05 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/simple-alv-grid/m-p/4131407#M987898</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-06-27T07:09:05Z</dc:date>
    </item>
    <item>
      <title>Re: Simple ALV grid</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/simple-alv-grid/m-p/4131408#M987899</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;thanks for replying &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;but my question is not for screen painter, i want push buttons &lt;/P&gt;&lt;P&gt;on ALV grid (using function module)&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 27 Jun 2008 07:22:14 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/simple-alv-grid/m-p/4131408#M987899</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-06-27T07:22:14Z</dc:date>
    </item>
    <item>
      <title>Re: Simple ALV grid</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/simple-alv-grid/m-p/4131409#M987900</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 look at the below link. It will be usefull.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://abapreports.blogspot.com/search/label/ALV%20GRID%20DISPLAY%20WITH%20PUSH%20BUTTON" target="test_blank"&gt;http://abapreports.blogspot.com/search/label/ALV%20GRID%20DISPLAY%20WITH%20PUSH%20BUTTON&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks &amp;amp; Regards,&lt;/P&gt;&lt;P&gt;Ramya.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 27 Jun 2008 08:22:54 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/simple-alv-grid/m-p/4131409#M987900</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-06-27T08:22:54Z</dc:date>
    </item>
    <item>
      <title>Re: Simple ALV grid</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/simple-alv-grid/m-p/4131410#M987901</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;If the caller wants to use a self-defined user interface (for example, in order to provide additional list functions or use existing functions), I recommend that you copy standard status STANDARD from function group SALV and modify it accordingly. ALV standard function codes always start with '&amp;amp;'.&lt;/P&gt;&lt;P&gt;Add one Fcode to the application Toolbar in the Pf status and you will that will come as a button in your toolbar.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Write a subroutine in program say SET_PF_STATUS.&lt;/P&gt;&lt;P&gt;Fore.g.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    FORM set_pf_status USING rt_extab TYPE slis_t_extab&lt;/P&gt;&lt;P&gt;     Set PF-STATUS 'ZSTANDARD'.&lt;/P&gt;&lt;P&gt;    EndForm.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Below is sample code in which button is added and on press of  button a smartform is called.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;********************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  ZMSTR0022.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONSTANTS: C_FORM_NAME TYPE TDSFNAME VALUE 'ZMST_PER_APPL'.&lt;/P&gt;&lt;P&gt;TABLES :ZMST_PERMIT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE-POOLS: SLIS.&lt;/P&gt;&lt;P&gt;TYPE-POOLS :VRM.                           "Value Request Manager&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES:BEGIN OF STRU_ZMST_PERMIT,&lt;/P&gt;&lt;P&gt;     CHECKBOX(1) TYPE C,                    " Checkbox&lt;/P&gt;&lt;P&gt;     ZPIDNUM TYPE ZMST_PERMIT-ZPIDNUM,   " Permit ID No.&lt;/P&gt;&lt;P&gt;     ZARBDSC TYPE ZMST_PERMIT-ZARBDSC,   " Arabic description&lt;/P&gt;&lt;P&gt;     ZENGDSC TYPE ZMST_PERMIT-ZENGDSC,   " English description&lt;/P&gt;&lt;P&gt;     ZENQUAN TYPE ZMST_PERMIT-ZENQUAN,   " Qty in English&lt;/P&gt;&lt;P&gt;     ZARQUAN TYPE ZMST_PERMIT-ZARQUAN,   " Qty in Arabic&lt;/P&gt;&lt;P&gt;     ZENUOM  TYPE ZMST_PERMIT-ZENUOM,    " UoM&lt;/P&gt;&lt;P&gt;     ZTARIFF TYPE  ZMST_PERMIT-ZTARIFF,  " Tariff No&lt;/P&gt;&lt;P&gt;     ZARRPRT TYPE ZMST_PERMIT-ZARRPRT,   " Port code&lt;/P&gt;&lt;P&gt;     ZPRT_NAME(60) TYPE C,               " Port name in Arabic&lt;/P&gt;&lt;P&gt;     ZPERNUM TYPE ZMST_PERMIT-ZPERNUM,   " Reference No&lt;/P&gt;&lt;P&gt;     ZEFFDT  TYPE ZMST_PERMIT-ZEFFDT,    " Valid from&lt;/P&gt;&lt;P&gt;     ZEXPDT  TYPE ZMST_PERMIT-ZEXPDT,    " Valid to&lt;/P&gt;&lt;P&gt;     ZARB_DT(15) TYPE C,                 " Arabic Date of letter&lt;/P&gt;&lt;P&gt;     ZNAME_AUTH(50) TYPE C,              " Name of Authority&lt;/P&gt;&lt;P&gt;     ZPERM_MIN(50) TYPE C,               " Permit Ministry&lt;/P&gt;&lt;P&gt;     END OF STRU_ZMST_PERMIT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES:BEGIN OF STRU_PERMIT,&lt;/P&gt;&lt;P&gt;      ZPIDNUM TYPE ZMST_PERMIT-ZPIDNUM,  " Permit ID No.&lt;/P&gt;&lt;P&gt;      ZENGDSC TYPE ZMST_PERMIT-ZENGDSC,  " English description&lt;/P&gt;&lt;P&gt;      ZARBDSC TYPE ZMST_PERMIT-ZARBDSC,  " Arabic description&lt;/P&gt;&lt;P&gt;      ZTARIFF TYPE  ZMST_PERMIT-ZTARIFF, " Tariff No&lt;/P&gt;&lt;P&gt;      ZPERNUM TYPE ZMST_PERMIT-ZPERNUM,  " Reference No&lt;/P&gt;&lt;P&gt;      ZARRPRT TYPE ZMST_PERMIT-ZARRPRT,  " Port code&lt;/P&gt;&lt;P&gt;      ZEFFDT  TYPE ZMST_PERMIT-ZEFFDT,   " Valid from&lt;/P&gt;&lt;P&gt;      ZEXPDT  TYPE ZMST_PERMIT-ZEXPDT,   " Valid to&lt;/P&gt;&lt;P&gt;      END OF STRU_PERMIT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF STRU_FORM_PERMIT,&lt;/P&gt;&lt;P&gt;       ZARBDSC TYPE ZMST_PERMIT-ZARBDSC,   " Arabic description&lt;/P&gt;&lt;P&gt;       ZENGDSC TYPE ZMST_PERMIT-ZENGDSC,   " English description&lt;/P&gt;&lt;P&gt;       ZENQUAN TYPE ZMST_PERMIT-ZENQUAN,   " Qty in English&lt;/P&gt;&lt;P&gt;       ZARQUAN TYPE ZMST_PERMIT-ZARQUAN,   " Qty in Arabic&lt;/P&gt;&lt;P&gt;       ZENUOM  TYPE ZMST_PERMIT-ZENUOM,    " UoM&lt;/P&gt;&lt;P&gt;       ZTARIFF TYPE  ZMST_PERMIT-ZTARIFF,  " Tariff No&lt;/P&gt;&lt;P&gt;       ZPRT_NAME(60) TYPE C,               " Port name in Arabic&lt;/P&gt;&lt;P&gt;       END OF STRU_FORM_PERMIT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: IT_PERMIT TYPE TABLE OF STRU_PERMIT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: IT_ZMST_PERMIT TYPE TABLE OF STRU_ZMST_PERMIT,&lt;/P&gt;&lt;P&gt;      WA_ZMST_PERMIT LIKE LINE OF IT_ZMST_PERMIT,&lt;/P&gt;&lt;P&gt;      IT_FORM_PERMIT TYPE TABLE OF STRU_FORM_PERMIT,&lt;/P&gt;&lt;P&gt;      WA_FORM_PERMIT LIKE LINE OF IT_FORM_PERMIT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: WA_LAYOUT   TYPE SLIS_LAYOUT_ALV,&lt;/P&gt;&lt;P&gt;      WA_FIELDCAT TYPE SLIS_FIELDCAT_ALV,&lt;/P&gt;&lt;P&gt;      IT_FIELDCAT TYPE TABLE OF SLIS_FIELDCAT_ALV.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: W_FORM TYPE RS38L_FNAM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: W_NAME_AUTH(50),&lt;/P&gt;&lt;P&gt;      W_ZARBDT(15),&lt;/P&gt;&lt;P&gt;      W_ZENGDT(10),&lt;/P&gt;&lt;P&gt;     W_ZPRT_NAME(70).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: W_PARAM TYPE SSFCTRLOP.&lt;/P&gt;&lt;P&gt;DATA:W_NAME1 TYPE DFIES-FIELDNAME,&lt;/P&gt;&lt;P&gt;      W_NAME2 TYPE HELP_INFO-DYNPROFLD .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-023.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS:S_PIDNUM FOR ZMST_PERMIT-ZPIDNUM ,&lt;/P&gt;&lt;P&gt;               S_ENGDSC FOR ZMST_PERMIT-ZENGDSC NO INTERVALS LOWER CASE,&lt;/P&gt;&lt;P&gt;               S_ARBDSC FOR ZMST_PERMIT-ZARBDSC NO INTERVALS LOWER CASE,&lt;/P&gt;&lt;P&gt;               S_TARIFF FOR ZMST_PERMIT-ZTARIFF NO INTERVALS,&lt;/P&gt;&lt;P&gt;               S_PERNUM FOR ZMST_PERMIT-ZPERNUM NO INTERVALS,&lt;/P&gt;&lt;P&gt;               S_ARRPRT FOR ZMST_PERMIT-ZARRPRT NO INTERVALS MATCHCODE OBJECT ZMST_PORTS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETER:P_PERTYP(2) TYPE C AS LISTBOX VISIBLE LENGTH 20.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK B1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_PIDNUM-LOW.&lt;/P&gt;&lt;P&gt;  W_NAME2 = 'S_PIDNUM-LOW'.&lt;/P&gt;&lt;P&gt;  W_NAME1 = 'ZPIDNUM'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM F4_HELP USING W_NAME1 W_NAME2 .         "calling subroutine to provide desired F4 help&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_PIDNUM-HIGH.&lt;/P&gt;&lt;P&gt;  W_NAME2 = 'S_PIDNUM-HIGH'.&lt;/P&gt;&lt;P&gt;  W_NAME1 = 'ZPIDNUM'.&lt;/P&gt;&lt;P&gt;  PERFORM F4_HELP USING W_NAME1 W_NAME2 .         "calling subroutine to provide desired F4 help&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_ENGDSC-LOW.&lt;/P&gt;&lt;P&gt;  W_NAME2 = 'S_ENGDSC'.&lt;/P&gt;&lt;P&gt;  W_NAME1 = 'ZENGDSC'.&lt;/P&gt;&lt;P&gt;  PERFORM F4_HELP USING W_NAME1 W_NAME2 .         "calling subroutine to provide desired F4 help&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_ARBDSC-LOW.&lt;/P&gt;&lt;P&gt;  W_NAME2 = 'S_ARBDSC'.&lt;/P&gt;&lt;P&gt;  W_NAME1 = 'ZARBDSC'.&lt;/P&gt;&lt;P&gt;  PERFORM F4_HELP USING W_NAME1 W_NAME2 .         "calling subroutine to provide desired F4 help&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_TARIFF-LOW.&lt;/P&gt;&lt;P&gt;  W_NAME2 = 'S_TARIFF'.&lt;/P&gt;&lt;P&gt;  W_NAME1 = 'ZTARIFF'.&lt;/P&gt;&lt;P&gt;  PERFORM F4_HELP USING W_NAME1 W_NAME2 .         "calling subroutine to provide desired F4 help&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_PERNUM-LOW.&lt;/P&gt;&lt;P&gt;  W_NAME2 = 'S_PERNUM'.&lt;/P&gt;&lt;P&gt;  W_NAME1 = 'ZPERNUM'.&lt;/P&gt;&lt;P&gt;  PERFORM F4_HELP USING W_NAME1 W_NAME2 .         "calling subroutine to provide desired F4 help&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN.&lt;/P&gt;&lt;P&gt;  IF SY-UCOMM = 'ONLI'.&lt;/P&gt;&lt;P&gt;    PERFORM CHECK_INPUT.                            "calling subroutine to check inputs on selection screen&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INITIALIZATION.&lt;/P&gt;&lt;P&gt;  PERFORM VAL_PERTYP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM FILL_FIELDCAT.                          "calling subroutine for filling fieldcatalog&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;If Permit ministry is blank then fetch data from ZMST_PERMIT otherwise from ZMST_PERMITHI&lt;/STRONG&gt;&lt;/DEL&gt;--&lt;/P&gt;&lt;HR originaltext="----" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF P_PERTYP IS INITIAL.&lt;/P&gt;&lt;P&gt;    PERFORM FETCH_PERMIT.                         "calling subroutine to fetch data from ZMST_PERMIT&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    PERFORM FETCH_PERMITHI.                       "calling subroutine to fetch data from ZMST_PERMITHI&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;END-OF-SELECTION.&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  fill_fieldcat&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 FILL_FIELDCAT .&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;-passing the parameters of layout&lt;/STRONG&gt;&lt;/DEL&gt;--&lt;/P&gt;&lt;HR originaltext="------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-ZEBRA = 'X'.&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-BOX_FIELDNAME = 'CHECKBOX'.&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-BOX_TABNAME = 'IT_ZMST_PERMIT'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;-Passing the parameters of fieldcatalog&lt;/STRONG&gt;&lt;/DEL&gt;--&lt;/P&gt;&lt;HR originaltext="---" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'ZPIDNUM'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-SELTEXT_M = TEXT-001.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'ZARBDSC'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-SELTEXT_M = TEXT-002.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-EDIT = 'X'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-LOWERCASE = 'X'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-OUTPUTLEN = 120.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'ZENGDSC'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-SELTEXT_M = TEXT-003.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-EDIT = 'X'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-LOWERCASE = 'X'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-OUTPUTLEN = 120.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'ZENQUAN'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-SELTEXT_M = TEXT-004.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-EDIT = 'X'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-LOWERCASE = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'ZARQUAN'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-SELTEXT_M = TEXT-005.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-EDIT = 'X'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-LOWERCASE = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'ZENUOM'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-SELTEXT_M = TEXT-006.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-EDIT = 'X'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-LOWERCASE = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'ZTARIFF'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-SELTEXT_M = TEXT-007.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-EDIT = 'X'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-OUTPUTLEN = 15.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-LOWERCASE = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'ZARB_DT'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-SELTEXT_L = TEXT-013.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-EDIT = 'X'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-LOWERCASE = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'ZNAME_AUTH'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-SELTEXT_M = TEXT-014.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-EDIT = 'X'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-OUTPUTLEN = 50.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-LOWERCASE = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'ZPRT_NAME'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-SELTEXT_M = TEXT-009.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-EDIT = 'X'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-OUTPUTLEN = 60.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-LOWERCASE = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'ZARRPRT'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-SELTEXT_M = TEXT-008.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'ZPERNUM'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-SELTEXT_M = TEXT-010.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'ZEFFDT'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-SELTEXT_M = TEXT-011.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'ZEXPDT'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-SELTEXT_M = TEXT-012.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'ZPERM_MIN'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-SELTEXT_M = TEXT-019.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-OUTPUTLEN = 50.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-LOWERCASE = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fill_fieldcat&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  alv_disp&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM ALV_DISP .&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       = 'ZMSTR0022'&lt;/P&gt;&lt;P&gt;      I_CALLBACK_PF_STATUS_SET = 'PF_STATUS'&lt;/P&gt;&lt;P&gt;      I_CALLBACK_USER_COMMAND  = 'USER_COMMAND'&lt;/P&gt;&lt;P&gt;      I_GRID_TITLE             = TEXT-015&lt;/P&gt;&lt;P&gt;      IS_LAYOUT                = WA_LAYOUT&lt;/P&gt;&lt;P&gt;      IT_FIELDCAT              = IT_FIELDCAT&lt;/P&gt;&lt;P&gt;      I_SAVE                   = 'A'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      T_OUTTAB                 = IT_ZMST_PERMIT&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      PROGRAM_ERROR            = 1&lt;/P&gt;&lt;P&gt;      OTHERS                   = 2.&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " alv_disp&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  PF_STATUS&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;  This subroutine sets the GUI status&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 PF_STATUS USING RT_EXTAB TYPE SLIS_T_EXTAB.&lt;/P&gt;&lt;P&gt;  SET PF-STATUS 'ZSTANDARD_FULLSCREEN'.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "PF_STATUS&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  USER_COMMAND&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM USER_COMMAND USING R_UCOMM TYPE SY-UCOMM  RS_SELFIELD TYPE SLIS_SELFIELD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*For Printing Smartform&lt;/P&gt;&lt;P&gt;  IF R_UCOMM = 'PRT'.&lt;/P&gt;&lt;P&gt;    CLEAR WA_FORM_PERMIT.&lt;/P&gt;&lt;P&gt;    REFRESH IT_FORM_PERMIT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT IT_ZMST_PERMIT INTO WA_ZMST_PERMIT WHERE CHECKBOX = 'X'.&lt;/P&gt;&lt;P&gt;      MOVE-CORRESPONDING WA_ZMST_PERMIT TO WA_FORM_PERMIT.&lt;/P&gt;&lt;P&gt;      APPEND WA_FORM_PERMIT TO IT_FORM_PERMIT .&lt;/P&gt;&lt;P&gt;*Check for First occurence of Name of authority&lt;/P&gt;&lt;P&gt;      IF WA_ZMST_PERMIT-ZNAME_AUTH NE SPACE.&lt;/P&gt;&lt;P&gt;        IF W_NAME_AUTH = ' '.&lt;/P&gt;&lt;P&gt;          W_NAME_AUTH = WA_ZMST_PERMIT-ZNAME_AUTH.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;*Check for First occurence of Arabic date&lt;/P&gt;&lt;P&gt;      IF WA_ZMST_PERMIT-ZARB_DT NE SPACE.&lt;/P&gt;&lt;P&gt;        IF W_ZARBDT = ' '.&lt;/P&gt;&lt;P&gt;          W_ZARBDT = WA_ZMST_PERMIT-ZARB_DT.&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;      IF WA_ZMST_PERMIT-ZPRT_NAME NE SPACE.&lt;/P&gt;&lt;P&gt;        IF W_ZPRT_NAME = ' '.&lt;/P&gt;&lt;P&gt;          MOVE WA_ZMST_PERMIT-ZPRT_NAME TO W_ZPRT_NAME.&lt;/P&gt;&lt;P&gt;          CONDENSE W_ZPRT_NAME.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      CLEAR : WA_FORM_PERMIT, WA_ZMST_PERMIT.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    CONCATENATE SY-DATUM&lt;EM&gt;0(4) '/' SY-DATUM&lt;/EM&gt;4(2) '/' SY-DATUM+6(2) INTO W_ZENGDT.&lt;/P&gt;&lt;P&gt;*Printing    Subroutine&lt;/P&gt;&lt;P&gt;    IF NOT IT_FORM_PERMIT[] IS INITIAL.&lt;/P&gt;&lt;P&gt;      PERFORM PRINT_FORM.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      MESSAGE TEXT-018 TYPE 'I'.&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;ENDFORM.                    "user_command&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  F4_HELP&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 F4_HELP USING: W_VAR TYPE DFIES-FIELDNAME&lt;/P&gt;&lt;P&gt;                    W_VAR1 TYPE HELP_INFO-DYNPROFLD .&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;Fetching data from zmst_permit for F4 help on PERMIT ID No.&lt;/STRONG&gt;&lt;/DEL&gt;--&lt;/P&gt;&lt;HR originaltext="---" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF IT_PERMIT[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    SELECT ZPIDNUM&lt;/P&gt;&lt;P&gt;           ZENGDSC&lt;/P&gt;&lt;P&gt;           ZARBDSC&lt;/P&gt;&lt;P&gt;           ZTARIFF&lt;/P&gt;&lt;P&gt;           ZPERNUM&lt;/P&gt;&lt;P&gt;           ZARRPRT&lt;/P&gt;&lt;P&gt;           ZEFFDT&lt;/P&gt;&lt;P&gt;           ZEXPDT&lt;/P&gt;&lt;P&gt;           FROM ZMST_PERMIT INTO CORRESPONDING FIELDS OF TABLE IT_PERMIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      RETFIELD        = W_NAME1 " 'ZPIDNUM'&lt;/P&gt;&lt;P&gt;      DYNPPROG        = 'ZMSTR0022'&lt;/P&gt;&lt;P&gt;      DYNPNR          = SY-DYNNR&lt;/P&gt;&lt;P&gt;      DYNPROFIELD     = W_NAME2 "'S_PIDNUM'&lt;/P&gt;&lt;P&gt;      VALUE_ORG       = 'S'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      VALUE_TAB       = IT_PERMIT&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      PARAMETER_ERROR = 1&lt;/P&gt;&lt;P&gt;      NO_VALUES_FOUND = 2&lt;/P&gt;&lt;P&gt;      OTHERS          = 3.&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                                                    " F4_HELP&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  check_input&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 CHECK_INPUT .&lt;/P&gt;&lt;P&gt;  IF S_PIDNUM[] IS INITIAL AND&lt;/P&gt;&lt;P&gt;     S_ENGDSC[] IS INITIAL AND&lt;/P&gt;&lt;P&gt;     S_ARBDSC[] IS INITIAL AND&lt;/P&gt;&lt;P&gt;     S_TARIFF[] IS INITIAL AND&lt;/P&gt;&lt;P&gt;     S_PERNUM[] IS INITIAL AND&lt;/P&gt;&lt;P&gt;     S_ARRPRT[] IS INITIAL .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MESSAGE TEXT-016 TYPE 'E'.&lt;/P&gt;&lt;P&gt;    LEAVE TO TRANSACTION 'ZMSTR022'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " check_input&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  print_form&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 PRINT_FORM .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      FORMNAME           = C_FORM_NAME&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      FM_NAME            = W_FORM&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      NO_FORM            = 1&lt;/P&gt;&lt;P&gt;      NO_FUNCTION_MODULE = 2&lt;/P&gt;&lt;P&gt;      OTHERS             = 3.&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  W_PARAM-LANGU ='AR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION W_FORM&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      CONTROL_PARAMETERS = W_PARAM&lt;/P&gt;&lt;P&gt;      W_NAME_AUTH        = W_NAME_AUTH&lt;/P&gt;&lt;P&gt;      W_ZARBDT           = W_ZARBDT&lt;/P&gt;&lt;P&gt;      W_ZENGDT           = W_ZENGDT&lt;/P&gt;&lt;P&gt;      W_ZPRT_NAME        = W_ZPRT_NAME&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      IT_FORM_PERMIT     = IT_FORM_PERMIT&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      FORMATTING_ERROR   = 1&lt;/P&gt;&lt;P&gt;      INTERNAL_ERROR     = 2&lt;/P&gt;&lt;P&gt;      SEND_ERROR         = 3&lt;/P&gt;&lt;P&gt;      USER_CANCELED      = 4&lt;/P&gt;&lt;P&gt;      OTHERS             = 5.&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " print_form&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  fetch_Permit&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 FETCH_PERMIT .&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;-Fetching data from zmst_permit based on the inputs on selection screen&lt;/STRONG&gt;&lt;/DEL&gt;--&lt;/P&gt;&lt;HR originaltext="---" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT&lt;/P&gt;&lt;P&gt;       ZPIDNUM&lt;/P&gt;&lt;P&gt;       ZARBDSC&lt;/P&gt;&lt;P&gt;       ZENGDSC&lt;/P&gt;&lt;P&gt;       ZENQUAN&lt;/P&gt;&lt;P&gt;       ZARQUAN&lt;/P&gt;&lt;P&gt;       ZENUOM&lt;/P&gt;&lt;P&gt;       ZTARIFF&lt;/P&gt;&lt;P&gt;       ZARRPRT&lt;/P&gt;&lt;P&gt;       ZPERNUM&lt;/P&gt;&lt;P&gt;       ZEFFDT&lt;/P&gt;&lt;P&gt;       ZEXPDT&lt;/P&gt;&lt;P&gt;       FROM ZMST_PERMIT INTO CORRESPONDING FIELDS OF TABLE IT_ZMST_PERMIT&lt;/P&gt;&lt;P&gt;       WHERE ZPIDNUM IN S_PIDNUM&lt;/P&gt;&lt;P&gt;       AND   ZENGDSC IN S_ENGDSC&lt;/P&gt;&lt;P&gt;       AND   ZARBDSC IN S_ARBDSC&lt;/P&gt;&lt;P&gt;       AND   ZTARIFF IN S_TARIFF&lt;/P&gt;&lt;P&gt;       AND   ZPERNUM IN S_PERNUM&lt;/P&gt;&lt;P&gt;       AND   ZARRPRT IN S_ARRPRT.&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE TEXT-017 TYPE 'I'.&lt;/P&gt;&lt;P&gt;    LEAVE TO TRANSACTION 'ZMSTR022'.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    LOOP AT IT_ZMST_PERMIT INTO WA_ZMST_PERMIT.&lt;/P&gt;&lt;P&gt;      WA_ZMST_PERMIT-ZPERM_MIN = TEXT-020.&lt;/P&gt;&lt;P&gt;      MODIFY IT_ZMST_PERMIT INDEX SY-TABIX FROM WA_ZMST_PERMIT TRANSPORTING ZPERM_MIN .&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    PERFORM ALV_DISP.        " calling subroutine for ALV display&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fetch_Permit&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  fetch_permithi&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 FETCH_PERMITHI .&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;-Fetching data from zmst_permit based on the inputs on selection screen&lt;/STRONG&gt;&lt;/DEL&gt;--&lt;/P&gt;&lt;HR originaltext="---" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT&lt;/P&gt;&lt;P&gt;       ZPIDNUM&lt;/P&gt;&lt;P&gt;       ZARBDSC&lt;/P&gt;&lt;P&gt;       ZENGDSC&lt;/P&gt;&lt;P&gt;       ZENQUAN&lt;/P&gt;&lt;P&gt;       ZARQUAN&lt;/P&gt;&lt;P&gt;       ZENUOM&lt;/P&gt;&lt;P&gt;       ZTARIFF&lt;/P&gt;&lt;P&gt;       ZARRPRT&lt;/P&gt;&lt;P&gt;       ZPERNUM&lt;/P&gt;&lt;P&gt;       ZEFFDT&lt;/P&gt;&lt;P&gt;       ZEXPDT&lt;/P&gt;&lt;P&gt;       FROM ZMST_PERMITHI INTO CORRESPONDING FIELDS OF TABLE IT_ZMST_PERMIT&lt;/P&gt;&lt;P&gt;       WHERE ZPIDNUM IN S_PIDNUM&lt;/P&gt;&lt;P&gt;       AND   ZENGDSC IN S_ENGDSC&lt;/P&gt;&lt;P&gt;       AND   ZARBDSC IN S_ARBDSC&lt;/P&gt;&lt;P&gt;       AND   ZTARIFF IN S_TARIFF&lt;/P&gt;&lt;P&gt;       AND   ZPERNUM IN S_PERNUM&lt;/P&gt;&lt;P&gt;       AND   ZARRPRT IN S_ARRPRT&lt;/P&gt;&lt;P&gt;       AND  ZPERTYP  = P_PERTYP.&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE TEXT-017 TYPE 'I'.&lt;/P&gt;&lt;P&gt;    LEAVE TO TRANSACTION 'ZMSTR022'.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    LOOP AT IT_ZMST_PERMIT INTO WA_ZMST_PERMIT.&lt;/P&gt;&lt;P&gt;      CASE P_PERTYP.&lt;/P&gt;&lt;P&gt;        WHEN 'I'.&lt;/P&gt;&lt;P&gt;          WA_ZMST_PERMIT-ZPERM_MIN = TEXT-021.&lt;/P&gt;&lt;P&gt;          MODIFY IT_ZMST_PERMIT INDEX SY-TABIX FROM WA_ZMST_PERMIT TRANSPORTING ZPERM_MIN .&lt;/P&gt;&lt;P&gt;        WHEN 'H'.&lt;/P&gt;&lt;P&gt;          WA_ZMST_PERMIT-ZPERM_MIN = TEXT-022.&lt;/P&gt;&lt;P&gt;          MODIFY IT_ZMST_PERMIT INDEX SY-TABIX FROM WA_ZMST_PERMIT TRANSPORTING ZPERM_MIN .&lt;/P&gt;&lt;P&gt;      ENDCASE.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    PERFORM ALV_DISP.        " calling subroutine for ALV display&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fetch_permithi&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  val_PERTYP&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 VAL_PERTYP .&lt;/P&gt;&lt;P&gt;  DATA: W_NAME TYPE VRM_ID,&lt;/P&gt;&lt;P&gt;        IT_LIST TYPE VRM_VALUES,&lt;/P&gt;&lt;P&gt;        WA_VALUE LIKE LINE OF IT_LIST.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_VALUE-KEY = ' '.&lt;/P&gt;&lt;P&gt;  WA_VALUE-TEXT = TEXT-020.&lt;/P&gt;&lt;P&gt;  APPEND WA_VALUE TO IT_LIST.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR WA_VALUE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_VALUE-KEY = 'I'.&lt;/P&gt;&lt;P&gt;  WA_VALUE-TEXT = TEXT-021.&lt;/P&gt;&lt;P&gt;  APPEND WA_VALUE TO IT_LIST.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR WA_VALUE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_VALUE-KEY = 'H'.&lt;/P&gt;&lt;P&gt;  WA_VALUE-TEXT = TEXT-022.&lt;/P&gt;&lt;P&gt;  APPEND WA_VALUE TO IT_LIST.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR WA_VALUE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  W_NAME = 'P_PERTYP'.&lt;/P&gt;&lt;P&gt;  P_PERTYP = ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'VRM_SET_VALUES'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      ID              = W_NAME&lt;/P&gt;&lt;P&gt;      VALUES          = IT_LIST&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      ID_ILLEGAL_NAME = 1&lt;/P&gt;&lt;P&gt;      OTHERS          = 2.&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&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.                    " val_PERTYP&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*********************************************************************&lt;/P&gt;&lt;P&gt;I hope this will help you.&lt;/P&gt;&lt;P&gt;Help children of U.N World Food Program by rewarding  points and encourage others to answer your queries.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 27 Jun 2008 08:30:23 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/simple-alv-grid/m-p/4131410#M987901</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-06-27T08:30:23Z</dc:date>
    </item>
    <item>
      <title>Re: Simple ALV grid</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/simple-alv-grid/m-p/4131411#M987902</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;thanks to all&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 27 Jun 2008 08:33:31 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/simple-alv-grid/m-p/4131411#M987902</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-06-27T08:33:31Z</dc:date>
    </item>
  </channel>
</rss>

