<?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: ALV in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv/m-p/3977371#M949975</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I have the sample code where fields are editable and user press save button and if user selects that record he can generate a smartform using that record.&lt;/P&gt;&lt;P&gt;I think you can check the code and put your logic of saving the data from internal table to databse instead of selection logic and call smartform.&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;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>Thu, 19 Jun 2008 13:38:00 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-06-19T13:38:00Z</dc:date>
    <item>
      <title>ALV</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv/m-p/3977365#M949969</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am using the ALV program. In the output list i am making one field as editable. After editing the particular value i want to save that value to the concerned DB table. I am able to edit the particular field on the output list but after that i am not getting how to save the edited entry in the DB table. So will you please help me out how to clear out this issue. If anyone sends the desired code for the same it will be more helpfull.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Points will be rewarded for the valuable answers.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Santosh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Jun 2008 13:32:21 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv/m-p/3977365#M949969</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-06-19T13:32:21Z</dc:date>
    </item>
    <item>
      <title>Re: ALV</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv/m-p/3977366#M949970</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A href="http://www.saptechnical.com/Tutorials/ALV/Edit/demo.htm" target="test_blank"&gt;http://www.saptechnical.com/Tutorials/ALV/Edit/demo.htm&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Jun 2008 13:36:07 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv/m-p/3977366#M949970</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-06-19T13:36:07Z</dc:date>
    </item>
    <item>
      <title>Re: ALV</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv/m-p/3977367#M949971</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;Below is the sample code&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;report ztest_alv_check message-id zz .

type-pools: slis.
data: x_fieldcat type slis_fieldcat_alv,
it_fieldcat type slis_t_fieldcat_alv,
l_layout type slis_layout_alv,
x_events type slis_alv_event,
it_events type slis_t_event.

data: begin of itab occurs 0,
vbeln like vbak-vbeln,
posnr like vbap-posnr,
end of itab.

select vbeln
posnr
from vbap
up to 20 rows
into table itab.

x_fieldcat-fieldname = 'VBELN'.
x_fieldcat-seltext_l = 'VBELN'.
x_fieldcat-tabname = 'ITAB'.
x_fieldcat-input = 'X'.
x_fieldcat-edit = 'X' ( edit).
x_fieldcat-col_pos = 1.
append x_fieldcat to it_fieldcat.
clear x_fieldcat.

x_fieldcat-fieldname = 'POSNR'.
x_fieldcat-seltext_l = 'POSNR'.
x_fieldcat-tabname = 'ITAB'.
x_fieldcat-input = 'X'.
x_fieldcat-edit = 'X'( edit).
x_fieldcat-col_pos = 2.
append x_fieldcat to it_fieldcat.
clear x_fieldcat.

l_layout-zebra = 'X'.
call function 'REUSE_ALV_LIST_DISPLAY'
exporting
i_callback_program = sy-repid
is_layout = l_layout
i_callback_pf_status_set = 'STATUS'
i_callback_user_command = 'USER_COMMAND'
it_fieldcat = it_fieldcat
tables
t_outtab = itab
exceptions
program_error = 1
others = 2.
if sy-subrc 0.

message id sy-msgid type sy-msgty number sy-msgno
with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
endif.

"using the PF-status enable the SAVE button
"give some OKCODE to SAVE button and handle it
"using user_command form
form status using p_extab type slis_t_extab.

    *
          o Pf status

set pf-status 'STATUS'.
endform. " STATUS

form user_command using r_ucomm like sy-ucomm
rs_selfield type slis_selfield.

case r_ucomm.

when 'BACK' or 'CANC' or 'EXIT'.
leave to screen 0.
when 'SAVE'.
"here you have to find the changed records,and modify the DB.
endcase.
endform. "USER_COMMAND&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Vikranth&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Edited by: Khimavath Vikranth on Jun 19, 2008 3:36 PM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Jun 2008 13:36:10 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv/m-p/3977367#M949971</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-06-19T13:36:10Z</dc:date>
    </item>
    <item>
      <title>Re: ALV</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv/m-p/3977368#M949972</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please refer the link below:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.saptechnical.com/Tutorials/ALV/Edit/demo.htm" target="test_blank"&gt;http://www.saptechnical.com/Tutorials/ALV/Edit/demo.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Sriram Ponna.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Jun 2008 13:36:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv/m-p/3977368#M949972</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-06-19T13:36:55Z</dc:date>
    </item>
    <item>
      <title>Re: ALV</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv/m-p/3977369#M949973</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&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; Report  ZTS_REP_ONLINEDISPLAY&lt;/P&gt;&lt;P&gt;*&amp;amp;&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;&lt;/P&gt;&lt;P&gt;*&amp;amp;&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;REPORT  ZTS_REP_ONLINEDISPLAY no standard page heading line-size 328&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  TABLES :zts_tab_category,zts_tab_manufac,zts_tab_product, ZTS_TAB_SAHEAD, ZTS_TAB_SALINE, ZTS_TAB_SASCHEDU.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : BEGIN OF lt_cate OCCURS 0,&lt;/P&gt;&lt;P&gt;         cano TYPE zcano,&lt;/P&gt;&lt;P&gt;         cades TYPE zcades,&lt;/P&gt;&lt;P&gt;         umes  TYPE zumes,&lt;/P&gt;&lt;P&gt;  END OF lt_cate.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : BEGIN OF lt_manu OCCURS 0,&lt;/P&gt;&lt;P&gt;         mgfid TYPE zmgfid,&lt;/P&gt;&lt;P&gt;         cano TYPE  zcano ,&lt;/P&gt;&lt;P&gt;         prono TYPE zprono,&lt;/P&gt;&lt;P&gt;         mgfna TYPE zmgfna,&lt;/P&gt;&lt;P&gt;         mgfeid TYPE zmgfeid,&lt;/P&gt;&lt;P&gt;         mgfwb TYPE zmgfwb,&lt;/P&gt;&lt;P&gt;         END OF lt_manu.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : BEGIN OF lt_prod OCCURS 0,&lt;/P&gt;&lt;P&gt;         prono TYPE zprono,&lt;/P&gt;&lt;P&gt;         prodes TYPE zprodes,&lt;/P&gt;&lt;P&gt;         cano TYPE zcano,&lt;/P&gt;&lt;P&gt;         mgfid TYPE zmgfid,&lt;/P&gt;&lt;P&gt;         proda TYPE zproda,&lt;/P&gt;&lt;P&gt;         valdat TYPE zvaldat,&lt;/P&gt;&lt;P&gt;         mrprte TYPE zmrprte,&lt;/P&gt;&lt;P&gt;         curr TYPE waers,&lt;/P&gt;&lt;P&gt;         wardat TYPE zwardat,&lt;/P&gt;&lt;P&gt;         END OF lt_prod.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : BEGIN OF lt_final OCCURS 0,&lt;/P&gt;&lt;P&gt;         COUNT TYPE I,&lt;/P&gt;&lt;P&gt;         chbox TYPE c,&lt;/P&gt;&lt;P&gt;         cano TYPE zcano,&lt;/P&gt;&lt;P&gt;         cades TYPE zcades,&lt;/P&gt;&lt;P&gt;         umes  TYPE zumes,&lt;/P&gt;&lt;P&gt;         mgfid TYPE zmgfid,&lt;/P&gt;&lt;P&gt;         prono TYPE zprono,&lt;/P&gt;&lt;P&gt;         mgfna TYPE zmgfna,&lt;/P&gt;&lt;P&gt;         mgfeid TYPE zmgfeid,&lt;/P&gt;&lt;P&gt;         mgfwb TYPE zmgfwb,&lt;/P&gt;&lt;P&gt;         prodes TYPE zprodes,&lt;/P&gt;&lt;P&gt;         proda TYPE zproda,&lt;/P&gt;&lt;P&gt;         valdat TYPE zvaldat,&lt;/P&gt;&lt;P&gt;         mrprte TYPE zmrprte,&lt;/P&gt;&lt;P&gt;         curr TYPE waers,&lt;/P&gt;&lt;P&gt;         wardat TYPE zwardat,&lt;/P&gt;&lt;P&gt;         orderquamtity(3) TYPE n,&lt;/P&gt;&lt;P&gt;         END OF lt_final.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;  SET PF-STATUS 'ONLINE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT cano cades umes FROM zts_tab_category INTO TABLE lt_cate.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT mgfid cano prono mgfna mgfeid mgfwb FROM zts_tab_manufac INTO TABLE lt_manu.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT  prono prodes cano mgfid proda valdat mrprte curr wardat FROM zts_tab_product INTO TABLE lt_prod.&lt;/P&gt;&lt;P&gt;DATA : LV_COUNT_X TYPE I.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT lt_cate.&lt;/P&gt;&lt;P&gt;    lt_final-cano = lt_cate-cano.&lt;/P&gt;&lt;P&gt;    lt_final-cades = lt_cate-cades.&lt;/P&gt;&lt;P&gt;    lt_final-umes = lt_cate-umes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT lt_manu WHERE cano = lt_cate-cano.&lt;/P&gt;&lt;P&gt;      lt_final-mgfid = lt_manu-mgfid.&lt;/P&gt;&lt;P&gt;      lt_final-cano = lt_manu-cano.&lt;/P&gt;&lt;P&gt;      lt_final-prono = lt_manu-prono.&lt;/P&gt;&lt;P&gt;      lt_final-mgfna = lt_manu-mgfna.&lt;/P&gt;&lt;P&gt;      lt_final-mgfeid = lt_manu-mgfeid.&lt;/P&gt;&lt;P&gt;      lt_final-mgfwb = lt_manu-mgfwb.&lt;/P&gt;&lt;P&gt;      LOOP AT lt_prod WHERE cano = lt_cate-cano AND prono = lt_manu-prono .&lt;/P&gt;&lt;P&gt;        lt_final-prono = lt_prod-prono.&lt;/P&gt;&lt;P&gt;        lt_final-prodes = lt_prod-prodes.&lt;/P&gt;&lt;P&gt;        lt_final-cano = lt_prod-cano.&lt;/P&gt;&lt;P&gt;        lt_final-mgfid = lt_prod-mgfid.&lt;/P&gt;&lt;P&gt;        lt_final-proda = lt_prod-proda.&lt;/P&gt;&lt;P&gt;        lt_final-valdat = lt_prod-valdat.&lt;/P&gt;&lt;P&gt;        lt_final-mrprte = lt_prod-mrprte.&lt;/P&gt;&lt;P&gt;        lt_final-curr = lt_prod-curr.&lt;/P&gt;&lt;P&gt;  LV_COUNT_X = LV_COUNT_X + 1.&lt;/P&gt;&lt;P&gt;  lt_final-COUNT = LV_COUNT_X .&lt;/P&gt;&lt;P&gt;        APPEND lt_final.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        ENDLOOP.&lt;/P&gt;&lt;P&gt;        ENDLOOP.&lt;/P&gt;&lt;P&gt;        ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WRITE : SY-ULINE,&lt;/P&gt;&lt;P&gt;        / SY-VLINE,&lt;/P&gt;&lt;P&gt;         (4) 'S.No',&lt;/P&gt;&lt;P&gt;          sy-vline,&lt;/P&gt;&lt;P&gt;        (7) Sel.Odr',&lt;/P&gt;&lt;P&gt;          sy-vline,&lt;/P&gt;&lt;P&gt;         (7) 'Catg.No'.&lt;/P&gt;&lt;P&gt;          sy-vline,&lt;/P&gt;&lt;P&gt;         (23)'Cat.Description',&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------" /&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------" /&gt;&lt;P&gt; uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT lt_final.&lt;/P&gt;&lt;P&gt;    WRITE : / SY-VLINE,&lt;/P&gt;&lt;P&gt;              (4) lt_final-COUNT,&lt;/P&gt;&lt;P&gt;               sy-vline,&lt;/P&gt;&lt;P&gt;              (7) lt_final-chbox AS CHECKBOX,&lt;/P&gt;&lt;P&gt;               sy-vline,&lt;/P&gt;&lt;P&gt;              lt_final-cano,&lt;/P&gt;&lt;P&gt;              lt_final-cades,&lt;/P&gt;&lt;P&gt;              lt_final-umes,&lt;/P&gt;&lt;P&gt;              lt_final-mgfid,&lt;/P&gt;&lt;P&gt;              lt_final-cano,&lt;/P&gt;&lt;P&gt;              lt_final-prono,&lt;/P&gt;&lt;P&gt;              lt_final-mgfna,&lt;/P&gt;&lt;P&gt;              lt_final-mgfeid,&lt;/P&gt;&lt;P&gt;              lt_final-mgfwb,&lt;/P&gt;&lt;P&gt;              lt_final-prono,&lt;/P&gt;&lt;P&gt;              lt_final-prodes,&lt;/P&gt;&lt;P&gt;              lt_final-cano,&lt;/P&gt;&lt;P&gt;              lt_final-mgfid,&lt;/P&gt;&lt;P&gt;              lt_final-proda,&lt;/P&gt;&lt;P&gt;              lt_final-valdat,&lt;/P&gt;&lt;P&gt;              lt_final-mrprte,&lt;/P&gt;&lt;P&gt;              lt_final-curr,&lt;/P&gt;&lt;P&gt;              LT_FINAL-ORDERQUAMTITY INPUT.&lt;/P&gt;&lt;P&gt;     ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : lv_count_final type i.&lt;/P&gt;&lt;P&gt;data : lv_order_qty(3) type n.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;vl_count_x = vl_count_x + 5.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE SY-UCOMM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WHEN 'ADD UP'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   DO lv_count_x TIMES.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        READ LINE sy-index FIELD VALUE lt_final-chbox lt_final-COUNT&lt;/P&gt;&lt;P&gt;                                       INTO  lv_count_final.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        READ LINE sy-index FIELD VALUE lt_final-chbox LT_FINAL-ORDERQUAMTITY&lt;/P&gt;&lt;P&gt;                                        INTO lv_order_qty.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF lt_final-chbox = 'X'.&lt;/P&gt;&lt;P&gt;        if lv_order_qty is NOT initial.&lt;/P&gt;&lt;P&gt;        lt_final-chbox = 'X'.&lt;/P&gt;&lt;P&gt;        LT_FINAL-ORDERQUAMTITY = lv_order_qty.&lt;/P&gt;&lt;P&gt;        modify lt_final transporting chbox ORDERQUAMTITY where COUNT = lv_count_finaL.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;         MESSAGE 'Enter the Order Qty for Selected Record' type 'E'.         &lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;       ENDIF.&lt;/P&gt;&lt;P&gt;    CLEAR lv_order_qty.&lt;/P&gt;&lt;P&gt;    CLEAR lv_count_final.&lt;/P&gt;&lt;P&gt;      ENDDO.&lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                DATA : LV_SDQUTY TYPE MENGE_D,&lt;/P&gt;&lt;P&gt;                       LV_SDAMT TYPE DMBTR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT LT_FINAL WHERE CHBOX = 'X'.&lt;/P&gt;&lt;P&gt;               LT_FINAL-MRPRTE = LT_FINAL-MRPRTE * LT_FINAL-ORDERQUAMTITY.&lt;/P&gt;&lt;P&gt;               LV_SDAMT = LT_FINAL-MRPRTE + LV_SDAMT.&lt;/P&gt;&lt;P&gt;               LV_SDQUTY = LV_SDQUTY + LT_FINAL-ORDERQUAMTITY.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : LV_SDNO TYPE VBELN,&lt;/P&gt;&lt;P&gt;         LV_UNAME TYPE ZUNAME.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   SELECT SINGLE MAX( SDNO ) FROM ZTS_TAB_SAHEAD INTO LV_SDNO.&lt;/P&gt;&lt;P&gt;   SELECT SINGLE MAX( UNAME ) FROM ZTS_TAB_USER INTO LV_UNAME WHERE CHECK1 = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         LV_SDNO = LV_SDNO + 1.&lt;/P&gt;&lt;P&gt;         ZTS_TAB_SAHEAD-SDNO = LV_SDNO.&lt;/P&gt;&lt;P&gt;         ZTS_TAB_SAHEAD-SDDA = SY-DATUM.&lt;/P&gt;&lt;P&gt;         ZTS_TAB_SAHEAD-UNAME = LV_UNAME.&lt;/P&gt;&lt;P&gt;         ZTS_TAB_SAHEAD-SDQUTY = LV_SDQUTY.&lt;/P&gt;&lt;P&gt;         ZTS_TAB_SAHEAD-SDAMT = LV_SDAMT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         INSERT ZTS_TAB_SAHEAD.&lt;/P&gt;&lt;P&gt;     if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;  message 'sales duicument is successfully created' lv_sdno type 'S'.&lt;/P&gt;&lt;P&gt;  else.&lt;/P&gt;&lt;P&gt;   message 'no sales ducument created' lv_sdno type 'E'.&lt;/P&gt;&lt;P&gt;   endif.&lt;/P&gt;&lt;P&gt;         CLEAR : LV_SDQUTY,LV_SDAMT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : BEGIN OF LT_FLINE OCCURS 0,&lt;/P&gt;&lt;P&gt;         CANO TYPE ZCANO,&lt;/P&gt;&lt;P&gt;         END OF LT_FLINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   LOOP AT LT_FINAL WHERE CHBOX = 'X'.&lt;/P&gt;&lt;P&gt;           LT_FLINE-CANO = LT_FINAL-CANO.&lt;/P&gt;&lt;P&gt;   APPEND LT_FLINE.&lt;/P&gt;&lt;P&gt;   ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   DELETE ADJACENT DUPLICATES FROM LT_FLINE COMPARING CANO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   LOOP AT LT_FLINE.&lt;/P&gt;&lt;P&gt;   LOOP AT LT_FINAL WHERE CANO = LT_FLINE-CANO AND CHBOX = 'X'.&lt;/P&gt;&lt;P&gt;                LT_FINAL-MRPRTE = LT_FINAL-MRPRTE * LT_FINAL-ORDERQUAMTITY.&lt;/P&gt;&lt;P&gt;               LV_SDAMT = LT_FINAL-MRPRTE + LV_SDAMT.&lt;/P&gt;&lt;P&gt;               LV_SDQUTY = LV_SDQUTY + LT_FINAL-ORDERQUAMTITY.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA LV_LINENO TYPE I VALUE 9.&lt;/P&gt;&lt;P&gt;                LV_LINENO = LV_LINENO + 1.&lt;/P&gt;&lt;P&gt;                ZTS_TAB_SALINE-SDNO = LV_SDNO.&lt;/P&gt;&lt;P&gt;                ZTS_TAB_SALINE-SDINO = LV_LINENO.&lt;/P&gt;&lt;P&gt;                ZTS_TAB_SALINE-CANO = LT_FINAL-CANO.&lt;/P&gt;&lt;P&gt;                ZTS_TAB_SALINE-SDINO = LV_SDQUTY.&lt;/P&gt;&lt;P&gt;                ZTS_TAB_SALINE-SDNO = LV_SDAMT.&lt;/P&gt;&lt;P&gt;                INSERT ZTS_TAB_SALINE.&lt;/P&gt;&lt;P&gt;         CLEAR : LV_SDQUTY,LV_SDAMT.&lt;/P&gt;&lt;P&gt;         ENDLOOP.&lt;/P&gt;&lt;P&gt;                  CLEAR : LV_LINENO.&lt;/P&gt;&lt;P&gt;                  LV_LINENO = 9.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT LT_FLINE.&lt;/P&gt;&lt;P&gt;                   LV_LINENO = LV_LINENO + 1.&lt;/P&gt;&lt;P&gt;     LOOP AT LT_FINAL WHERE CANO = LT_FLINE-CANO AND CHBOX = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                 DATA : LV_SHLINENO TYPE I.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        LV_SHLINENO = LV_SHLINENO + 1.&lt;/P&gt;&lt;P&gt;        ZTS_TAB_SASCHEDU-SDNO = LV_SDNO.&lt;/P&gt;&lt;P&gt;        ZTS_TAB_SASCHEDU-SDINO = LV_LINENO.&lt;/P&gt;&lt;P&gt;        ZTS_TAB_SASCHEDU-SDSHNO = LV_SHLINENO.&lt;/P&gt;&lt;P&gt;        ZTS_TAB_SASCHEDU-PRONO = LT_FINAL-PRONO.&lt;/P&gt;&lt;P&gt;        ZTS_TAB_SASCHEDU-SDQUTY = LT_FINAL-ORDERQUAMTITY.&lt;/P&gt;&lt;P&gt;        ZTS_TAB_SASCHEDU-NTPRC =  LT_FINAL-MRPRTE .&lt;/P&gt;&lt;P&gt;        ZTS_TAB_SASCHEDU-TOPRC =  LT_FINAL-ORDERQUAMTITY * LT_FINAL-MRPRTE.&lt;/P&gt;&lt;P&gt;        INSERT ZTS_TAB_SASCHEDU.&lt;/P&gt;&lt;P&gt;        ENDLOOP.&lt;/P&gt;&lt;P&gt;        ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   when 'BACK'.&lt;/P&gt;&lt;P&gt;      SET SCREEN 0.&lt;/P&gt;&lt;P&gt;      LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        ENDCASE.&lt;/P&gt;&lt;P&gt;the same report in classical&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;this will help u.............&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;Regards&lt;/P&gt;&lt;P&gt;Anbu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Jun 2008 13:37:24 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv/m-p/3977369#M949973</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-06-19T13:37:24Z</dc:date>
    </item>
    <item>
      <title>Re: ALV</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv/m-p/3977370#M949974</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;if u r using ALV GRID control....then use CHECK_CHANGED_DATA method.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Jun 2008 13:37:24 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv/m-p/3977370#M949974</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-06-19T13:37:24Z</dc:date>
    </item>
    <item>
      <title>Re: ALV</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv/m-p/3977371#M949975</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I have the sample code where fields are editable and user press save button and if user selects that record he can generate a smartform using that record.&lt;/P&gt;&lt;P&gt;I think you can check the code and put your logic of saving the data from internal table to databse instead of selection logic and call smartform.&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;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>Thu, 19 Jun 2008 13:38:00 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv/m-p/3977371#M949975</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-06-19T13:38:00Z</dc:date>
    </item>
    <item>
      <title>Re: ALV</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv/m-p/3977372#M949976</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Dear Santosh,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;in alv program.&lt;/P&gt;&lt;P&gt;put that editable data into the work area,&lt;/P&gt;&lt;P&gt;and then insert that value into desired data base.&lt;/P&gt;&lt;P&gt;u can do like this&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF itab-frtno = 'workarea value'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;              MESSAGE 'do u realy want to enter the changed data' TYPE 'I'.&lt;/P&gt;&lt;P&gt;            ELSE.&lt;/P&gt;&lt;P&gt;              SELECT frtno FROM zfrt1 INTO s WHERE frtno = itab-frtno.&lt;/P&gt;&lt;P&gt;              ENDSELECT.&lt;/P&gt;&lt;P&gt;              IF sy-subrc IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                APPEND itab.&lt;/P&gt;&lt;P&gt;                INSERT  zfrt1 FROM itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                MESSAGE 'Data saved' TYPE 'S'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;hope now u get an idea.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if help full rewards&lt;/P&gt;&lt;P&gt;are helpfull.&lt;/P&gt;&lt;P&gt;and expected.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;vivek&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Jun 2008 13:38:41 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv/m-p/3977372#M949976</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-06-19T13:38:41Z</dc:date>
    </item>
  </channel>
</rss>

