<?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: regarding Muliple rows selection and Table Update in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-muliple-rows-selection-and-table-update/m-p/4087172#M977197</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Subash,&lt;/P&gt;&lt;P&gt;I am giving you a sample code of alv in which user selects records at the output and presses a button on the application toolbar to generate smartform corresponding to that record .&lt;/P&gt;&lt;P&gt;So you can follow the code and insert your logic of saving  on press of button.&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;I hope this will help  you.&lt;/P&gt;&lt;P&gt;&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>Wed, 25 Jun 2008 09:14:01 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-06-25T09:14:01Z</dc:date>
    <item>
      <title>regarding Muliple rows selection and Table Update</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-muliple-rows-selection-and-table-update/m-p/4087171#M977196</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;First In ALV grid i need to display the table contents and i have Update and Delete button in the application toolbar and if the user is selecting the multiple rows and if he select the Update button in the application toolbar then in the small screen we need to display the selected rows and he change any values.Once if he changed the data and press the Tick Mark those changes has to reflected in DataBase and Similarly for Delete Functionality.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please provide Valuable suggestions...............&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 25 Jun 2008 09:07:07 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-muliple-rows-selection-and-table-update/m-p/4087171#M977196</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-06-25T09:07:07Z</dc:date>
    </item>
    <item>
      <title>Re: regarding Muliple rows selection and Table Update</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-muliple-rows-selection-and-table-update/m-p/4087172#M977197</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Subash,&lt;/P&gt;&lt;P&gt;I am giving you a sample code of alv in which user selects records at the output and presses a button on the application toolbar to generate smartform corresponding to that record .&lt;/P&gt;&lt;P&gt;So you can follow the code and insert your logic of saving  on press of button.&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;I hope this will help  you.&lt;/P&gt;&lt;P&gt;&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>Wed, 25 Jun 2008 09:14:01 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-muliple-rows-selection-and-table-update/m-p/4087172#M977197</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-06-25T09:14:01Z</dc:date>
    </item>
  </channel>
</rss>

