<?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 ALV Grid in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid/m-p/3343893#M801690</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;How to display ALV grid by using classes , I know display only but my requirement is I want to display some fields input enable and some fields input disable plzz help me its urgent and give me the code if it is available.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sun, 27 Jan 2008 16:03:25 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-01-27T16:03:25Z</dc:date>
    <item>
      <title>ALV Grid</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid/m-p/3343893#M801690</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;How to display ALV grid by using classes , I know display only but my requirement is I want to display some fields input enable and some fields input disable plzz help me its urgent and give me the code if it is available.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 27 Jan 2008 16:03:25 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid/m-p/3343893#M801690</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-01-27T16:03:25Z</dc:date>
    </item>
    <item>
      <title>Re: ALV Grid</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid/m-p/3343894#M801691</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi &lt;STRONG&gt;Syamala&lt;/STRONG&gt;,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This is my example question i think it is helpful for you..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Try this code&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;REPORT  zcl_timesheet_approval MESSAGE-ID zcl_msg.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; CLASS L_CL_EVENTS DEFINITION                                        *&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; Class for inserting buttons on the toolbar                          *&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;CLASS l_cl_events DEFINITION.&lt;/P&gt;&lt;P&gt;  PUBLIC SECTION.&lt;/P&gt;&lt;P&gt;    METHODS:&lt;/P&gt;&lt;P&gt;      toolbar FOR EVENT toolbar&lt;/P&gt;&lt;P&gt;              OF cl_gui_alv_grid&lt;/P&gt;&lt;P&gt;              IMPORTING e_object&lt;/P&gt;&lt;P&gt;                        e_interactive,&lt;/P&gt;&lt;P&gt;      user_command FOR EVENT user_command&lt;/P&gt;&lt;P&gt;                   OF cl_gui_alv_grid&lt;/P&gt;&lt;P&gt;                   IMPORTING e_ucomm .&lt;/P&gt;&lt;P&gt;ENDCLASS.                              " L_CL_EVENTS DEFINITION&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; CLASS L_CL_EVENTS IMPLEMENTATION                                    *&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; Implementation of class L_CL_EVENTS                                 *&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;CLASS l_cl_events IMPLEMENTATION.&lt;/P&gt;&lt;P&gt;  METHOD toolbar.&lt;/P&gt;&lt;P&gt;    PERFORM event_toolbar USING e_object.&lt;/P&gt;&lt;P&gt;  ENDMETHOD.                           " TOOLBAR&lt;/P&gt;&lt;P&gt;  METHOD user_command.&lt;/P&gt;&lt;P&gt;    PERFORM event_ucomm USING e_ucomm.&lt;/P&gt;&lt;P&gt;  ENDMETHOD.                           " USER_COMMAND&lt;/P&gt;&lt;P&gt;ENDCLASS.                              " L_CL_EVENTS IMPLEMENTATION&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Tables decalration..................................................&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TABLES:&lt;/P&gt;&lt;P&gt;    zcl_timesheet.                     " Employee master table&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONSTANTS:&lt;/P&gt;&lt;P&gt;   c_boolean_yes(1)     TYPE c         " Boolean - yes&lt;/P&gt;&lt;P&gt;                       VALUE 'X',&lt;/P&gt;&lt;P&gt;   c_approve_status(1)  TYPE c         " Approval status&lt;/P&gt;&lt;P&gt;                       VALUE 'A',&lt;/P&gt;&lt;P&gt;   c_rej_status(1)      TYPE c         " Rejected status&lt;/P&gt;&lt;P&gt;                       VALUE 'R',&lt;/P&gt;&lt;P&gt;   c_save_status(1)     TYPE c         " Save status&lt;/P&gt;&lt;P&gt;                       VALUE 'S',&lt;/P&gt;&lt;P&gt;   c_fcode_approve(7)   TYPE c         " Function code - APPROVE&lt;/P&gt;&lt;P&gt;                       VALUE 'APPROVE',&lt;/P&gt;&lt;P&gt;   c_fcode_rej(6)       TYPE c         " Function code - REJECT&lt;/P&gt;&lt;P&gt;                       VALUE 'REJECT',&lt;/P&gt;&lt;P&gt;   c_fcode_back(4)      TYPE c         " Function code - BACK&lt;/P&gt;&lt;P&gt;                       VALUE 'BACK',&lt;/P&gt;&lt;P&gt;   c_fcode_onli(4)      TYPE c         " Function code - EXECUTE&lt;/P&gt;&lt;P&gt;                       VALUE 'ONLI',&lt;/P&gt;&lt;P&gt;   c_fcode_exit(4)      TYPE c         " Function code - EXIT&lt;/P&gt;&lt;P&gt;                       VALUE 'EXIT',&lt;/P&gt;&lt;P&gt;   c_fcode_cancel(6)    TYPE c         " Function code - CANCEL&lt;/P&gt;&lt;P&gt;                       VALUE 'CANCEL',&lt;/P&gt;&lt;P&gt;   c_zero(1)            TYPE c         " Constant value 0&lt;/P&gt;&lt;P&gt;                       VALUE '0',&lt;/P&gt;&lt;P&gt;   c_alv_scr(7)         TYPE c         " GUI status : ALV screen&lt;/P&gt;&lt;P&gt;                       VALUE 'ALV_SCR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Type definition...................................................&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;Type definition of the structure to hold  data from table            *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; zcl_timesheet.                                                      *&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;TYPES:&lt;/P&gt;&lt;P&gt;  BEGIN OF type_s_time,&lt;/P&gt;&lt;P&gt;    empid        TYPE zcl_timesheet-empid,&lt;/P&gt;&lt;P&gt;                                       " Employee ID&lt;/P&gt;&lt;P&gt;    workdate     TYPE zcl_timesheet-workdate,&lt;/P&gt;&lt;P&gt;                                       " Date&lt;/P&gt;&lt;P&gt;    groupid      TYPE zcl_timesheet-groupid,&lt;/P&gt;&lt;P&gt;                                       " Group ID&lt;/P&gt;&lt;P&gt;    projectid    TYPE zcl_timesheet-projectid,&lt;/P&gt;&lt;P&gt;                                       " Project ID&lt;/P&gt;&lt;P&gt;    projectname  TYPE zcl_timesheet-projectname,&lt;/P&gt;&lt;P&gt;                                       " Project name&lt;/P&gt;&lt;P&gt;    objectid     TYPE zcl_timesheet-objectid,&lt;/P&gt;&lt;P&gt;                                       " Object ID&lt;/P&gt;&lt;P&gt;    objectname   TYPE zcl_timesheet-objectname,&lt;/P&gt;&lt;P&gt;                                       " Object name&lt;/P&gt;&lt;P&gt;    activityid   TYPE zcl_timesheet-activityid,&lt;/P&gt;&lt;P&gt;                                       " Activity ID&lt;/P&gt;&lt;P&gt;    activityname TYPE zcl_timesheet-activityname,&lt;/P&gt;&lt;P&gt;                                       " Activity name&lt;/P&gt;&lt;P&gt;    timeworked   TYPE zcl_timesheet-timeworked,&lt;/P&gt;&lt;P&gt;                                       " Time spent on work&lt;/P&gt;&lt;P&gt;    description  TYPE zcl_timesheet-description,&lt;/P&gt;&lt;P&gt;                                       " Description&lt;/P&gt;&lt;P&gt;    taskstatus   TYPE zcl_timesheet-taskstatus,&lt;/P&gt;&lt;P&gt;                                       " Status of the proj&lt;/P&gt;&lt;P&gt;    billstatus   TYPE zcl_timesheet-billstatus,&lt;/P&gt;&lt;P&gt;                                       " Billing status&lt;/P&gt;&lt;P&gt;    appstatus    TYPE zcl_timesheet-appstatus,&lt;/P&gt;&lt;P&gt;                                       " Staus of the record&lt;/P&gt;&lt;P&gt;    wstatus      TYPE zcl_timesheet-wstatus,&lt;/P&gt;&lt;P&gt;                                       " Working status&lt;/P&gt;&lt;P&gt;    mngcomment   TYPE zcl_timesheet-mngcomment,&lt;/P&gt;&lt;P&gt;                                       " Managers comment&lt;/P&gt;&lt;P&gt;  END OF type_s_time.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Field-string declarations...........................................&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Field-string to build fieldcat.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   fs_fcat TYPE lvc_s_fcat,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Field-string for t_timesheet&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   fs_timesheet TYPE zcl_timesheet.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Working variables...................................................&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;   w_valid(1)   TYPE c,                " To get the flag from check_data&lt;/P&gt;&lt;P&gt;   w_display(1) TYPE c,                " Flag to display all records&lt;/P&gt;&lt;P&gt;   ok_code      TYPE syst-ucomm,       " Function code on dialog screens&lt;/P&gt;&lt;P&gt;   w_okcode     TYPE syst-ucomm,       " Temporary function code&lt;/P&gt;&lt;P&gt;   w_first(1)   TYPE c,                " To place buttons for first time&lt;/P&gt;&lt;P&gt;   w_submit(1)  TYPE c,                " Flag to display submitted records&lt;/P&gt;&lt;P&gt;   w_empid      TYPE zcl_emprecord-empid.&lt;/P&gt;&lt;P&gt;" Employee ID for GET parameter&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table declarations........................................&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table to build fieldcat.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   t_fcat      TYPE lvc_t_fcat,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table to display data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   t_time      TYPE TABLE OF type_s_time,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table to hold submitted data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   t_timesheet TYPE TABLE OF zcl_timesheet.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;For ALV ...........................................................&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To create instance for cl_gui_custom_container&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  g_grid      TYPE REF TO cl_gui_custom_container,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To create instance for cl_gui_alv_grid&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  g_alv       TYPE REF TO cl_gui_alv_grid,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To create instance for l_cl_events&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  g_events    TYPE REF TO l_cl_events,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To assign name for custom container&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  g_container TYPE scrfname VALUE 'CONTAINER',&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To assign layout&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  g_fcatlayo  TYPE lvc_s_layo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Selection screen elements............................................&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK blck WITH FRAME TITLE text-000.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS:&lt;/P&gt;&lt;P&gt;  s_group FOR zcl_timesheet-groupid    " Group ID&lt;/P&gt;&lt;P&gt;                         NO INTERVALS,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  s_prjid FOR zcl_timesheet-projectid, " Project ID&lt;/P&gt;&lt;P&gt;  s_empid FOR zcl_timesheet-empid,     " Employee ID&lt;/P&gt;&lt;P&gt;  s_date  FOR zcl_timesheet-workdate.  " Date&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK blck.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK blck1 WITH FRAME TITLE text-015.&lt;/P&gt;&lt;P&gt;PARAMETERS:&lt;/P&gt;&lt;P&gt;  p_app  RADIOBUTTON GROUP g1  USER-COMMAND app ,&lt;/P&gt;&lt;P&gt;                                       " To approve timesheet&lt;/P&gt;&lt;P&gt;  p_disp RADIOBUTTON GROUP g1.         " To display timesheet&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK blck1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           AT SELECTION-SCREEN EVENT                                 *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To perform user actions on the selection screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM user_command.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; MODULE  STATUS_0100  OUTPUT                                         *&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 module will create the objects for the instance and display    *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; the records                                                         *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE status_0100 OUTPUT.&lt;/P&gt;&lt;P&gt;  SET PF-STATUS c_alv_scr.&lt;/P&gt;&lt;P&gt;  PERFORM set_titlebar USING w_display.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If program executed in foreground.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF sy-batch IS INITIAL.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If g_grid is empty.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF g_grid IS INITIAL.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To create object for instance grid&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CREATE OBJECT g_grid&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          container_name = g_container.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To create object for object grid&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CREATE OBJECT g_alv&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          i_parent = g_grid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CALL METHOD g_alv-&amp;gt;refresh_table_display.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.                             " IF G_GRID IS INITIAL&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.                               " IF SY-BATCH IS INITIAL&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH t_fcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If w_display eq 'X' .&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF w_display EQ c_boolean_yes.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To display all records except saved data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    PERFORM display_allrecords.&lt;/P&gt;&lt;P&gt;  ENDIF.                               " IF W_FLAG EQ C_BOOLEAN_YES&lt;/P&gt;&lt;P&gt;  IF w_submit EQ c_boolean_yes.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To display submitted records&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    PERFORM submitted_records.&lt;/P&gt;&lt;P&gt;  ENDIF.                               " IF W_SUBMIT EQ C_BOOLEAN_YES&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE.                             " STATUS_0100  OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; MODULE USER_COMMAND_0100  INPUT                                     *&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; To perform user actions in the screen 100                           *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE user_command_0100 INPUT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To update the data in the ALV grid&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM check_changed_data.&lt;/P&gt;&lt;P&gt;  w_okcode = ok_code.&lt;/P&gt;&lt;P&gt;  CLEAR ok_code.&lt;/P&gt;&lt;P&gt;  CASE w_okcode.&lt;/P&gt;&lt;P&gt;    WHEN c_fcode_back.&lt;/P&gt;&lt;P&gt;      LEAVE TO SCREEN 0.&lt;/P&gt;&lt;P&gt;    WHEN c_fcode_exit OR c_fcode_cancel.&lt;/P&gt;&lt;P&gt;      LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;  ENDCASE.                             " CASE W_OKCODE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE.                             " USER_COMMAND_0100&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; FORM GET_DATA                                                       *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; To get the submitted data from zcl_timesheet                        *&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; No parameters are passsed to this subroutine                        *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_data .&lt;/P&gt;&lt;P&gt;  SELECT *&lt;/P&gt;&lt;P&gt;    FROM zcl_timesheet&lt;/P&gt;&lt;P&gt;    INTO TABLE t_timesheet&lt;/P&gt;&lt;P&gt;   WHERE empid     IN s_empid&lt;/P&gt;&lt;P&gt;     AND workdate  IN s_date&lt;/P&gt;&lt;P&gt;     AND groupid   IN s_group&lt;/P&gt;&lt;P&gt;     AND projectid IN s_prjid&lt;/P&gt;&lt;P&gt;     AND appstatus EQ c_boolean_yes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE e000 .&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    CALL SCREEN 100.&lt;/P&gt;&lt;P&gt;  ENDIF.                               " IF SY-SUBRC NE 0&lt;/P&gt;&lt;P&gt;ENDFORM.                               " GET_DATA&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; FORM BUILD_FCAT                                                     *&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; To build the field catalog giving managers comment in editable mode *&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;PR_Tabname   type lvc_tname                                      *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;PR_Fieldname type lvc_fname                                      *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;PR_Coltext   type lvc_txtcol                                     *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;PR_Colpos    type lvc_colpos                                     *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM build_fcat USING pr_tabname   TYPE lvc_tname&lt;/P&gt;&lt;P&gt;                      pr_fieldname TYPE lvc_fname&lt;/P&gt;&lt;P&gt;                      pr_coltext   TYPE lvc_txtcol&lt;/P&gt;&lt;P&gt;                      pr_colpos    TYPE lvc_colpos.&lt;/P&gt;&lt;P&gt;  CLEAR fs_fcat.&lt;/P&gt;&lt;P&gt;  fs_fcat-tabname   = pr_tabname.&lt;/P&gt;&lt;P&gt;  fs_fcat-fieldname = pr_fieldname.&lt;/P&gt;&lt;P&gt;  fs_fcat-coltext   = pr_coltext.&lt;/P&gt;&lt;P&gt;  fs_fcat-col_pos   = pr_colpos.&lt;/P&gt;&lt;P&gt;  IF fs_fcat-fieldname EQ 'MNGCOMMENT'.&lt;/P&gt;&lt;P&gt;    fs_fcat-edit      = c_boolean_yes.&lt;/P&gt;&lt;P&gt;    fs_fcat-lowercase = c_boolean_yes.&lt;/P&gt;&lt;P&gt;    fs_fcat-dd_outlen = 60.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    fs_fcat-edit      = space.&lt;/P&gt;&lt;P&gt;  ENDIF.                               " IF FS_FCAT-FIELDNAME...&lt;/P&gt;&lt;P&gt;  APPEND fs_fcat TO t_fcat.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " BUILD_FCAT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  FORM BUILD_FCATD                                                   *&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; To build fieldcatalog in the display mode                           *&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;pr_Tabname   type lvc_tname                                      *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;pr_Fieldname type lvc_fname                                      *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;pr_Coltext   type lvc_txtcol                                     *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;pr_Colpos    type lvc_colpos                                     *&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 build_fcatd USING pr_tabname   TYPE lvc_tname&lt;/P&gt;&lt;P&gt;                       pr_fieldname TYPE lvc_fname&lt;/P&gt;&lt;P&gt;                       pr_coltext   TYPE lvc_txtcol&lt;/P&gt;&lt;P&gt;                       pr_colpos    TYPE lvc_colpos .&lt;/P&gt;&lt;P&gt;  CLEAR fs_fcat.&lt;/P&gt;&lt;P&gt;  fs_fcat-tabname   = pr_tabname.&lt;/P&gt;&lt;P&gt;  fs_fcat-fieldname = pr_fieldname.&lt;/P&gt;&lt;P&gt;  fs_fcat-coltext   = pr_coltext.&lt;/P&gt;&lt;P&gt;  fs_fcat-col_pos   = pr_colpos.&lt;/P&gt;&lt;P&gt;  fs_fcat-edit      = space.&lt;/P&gt;&lt;P&gt;  APPEND fs_fcat TO t_fcat.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " BUILD_FCATD&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; FORM ALV_DISPLAY                                                    *&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; To display data in ALV                                              *&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; pr_table type standard table                                    *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt; pr_fcat  type lvc_t_fcat                                        *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM alv_display USING pr_table TYPE STANDARD TABLE&lt;/P&gt;&lt;P&gt;                       pr_fcat  TYPE lvc_t_fcat .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local data declaration....&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA: lt_exclude TYPE ui_functions.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To exclude buttons on the ALV grid&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM exclude_tb_functions CHANGING lt_exclude.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To display ALV&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL METHOD g_alv-&amp;gt;set_table_for_first_display&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      i_default            = space&lt;/P&gt;&lt;P&gt;      is_layout            = g_fcatlayo&lt;/P&gt;&lt;P&gt;      it_toolbar_excluding = lt_exclude&lt;/P&gt;&lt;P&gt;    CHANGING&lt;/P&gt;&lt;P&gt;      it_outtab            = pr_table[]&lt;/P&gt;&lt;P&gt;      it_fieldcatalog      = pr_fcat[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " ALV_DISPLAY&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; FORM EVENT_TOOLBAR                                                  *&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; Setting toolbar in the alv grid                                     *&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;E_OBJECT TYPE REF TO CL_ALV_EVENT_TOOLBAR_SET                    *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM event_toolbar USING e_object&lt;/P&gt;&lt;P&gt;                         TYPE REF TO cl_alv_event_toolbar_set.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local declaration for the button.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA: ls_toolbar TYPE stb_button.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To add Approve button&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_toolbar-function  = c_fcode_approve.&lt;/P&gt;&lt;P&gt;  ls_toolbar-butn_type = c_zero.&lt;/P&gt;&lt;P&gt;  ls_toolbar-text      = text-001.&lt;/P&gt;&lt;P&gt;  APPEND ls_toolbar TO e_object-&amp;gt;mt_toolbar.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To add Reject button&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR ls_toolbar.&lt;/P&gt;&lt;P&gt;  ls_toolbar-function  = c_fcode_rej.&lt;/P&gt;&lt;P&gt;  ls_toolbar-butn_type = c_zero.&lt;/P&gt;&lt;P&gt;  ls_toolbar-text      = text-013.&lt;/P&gt;&lt;P&gt;  APPEND ls_toolbar TO e_object-&amp;gt;mt_toolbar.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " EVENT_TOOLBAR&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; FORM EXCLUDE_TB_FUNCTIONS                                           *&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; To exclude buttons from ALV grid                                    *&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;lt;--&amp;gt; PR_EXCLUDE TYPE UI_FUNCTIONS                                   *&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 exclude_tb_functions  CHANGING pr_exclude TYPE ui_functions.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local data declaration...&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA ls_exclude TYPE ui_func.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To remove the buttons on the ALV grid.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_exclude = cl_gui_alv_grid=&amp;gt;mc_fc_loc_copy_row.&lt;/P&gt;&lt;P&gt;  APPEND ls_exclude TO pr_exclude.&lt;/P&gt;&lt;P&gt;  ls_exclude = cl_gui_alv_grid=&amp;gt;mc_fc_loc_delete_row.&lt;/P&gt;&lt;P&gt;  APPEND ls_exclude TO pr_exclude.&lt;/P&gt;&lt;P&gt;  ls_exclude = cl_gui_alv_grid=&amp;gt;mc_fc_loc_append_row.&lt;/P&gt;&lt;P&gt;  APPEND ls_exclude TO pr_exclude.&lt;/P&gt;&lt;P&gt;  ls_exclude = cl_gui_alv_grid=&amp;gt;mc_fc_loc_insert_row.&lt;/P&gt;&lt;P&gt;  APPEND ls_exclude TO pr_exclude.&lt;/P&gt;&lt;P&gt;  ls_exclude = cl_gui_alv_grid=&amp;gt;mc_fc_loc_move_row.&lt;/P&gt;&lt;P&gt;  APPEND ls_exclude TO pr_exclude.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " EXCLUDE_TB_FUNCTIONS&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; FORM EVENT_UCOMM                                                    *&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; After Input in the ALV grid,if user select record and press         *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; approve or reject then the record will get updated                  *&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; PR_ucomm type sy-ucomm                                          *&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 event_ucomm USING pr_ucomm LIKE sy-ucomm.&lt;/P&gt;&lt;P&gt;  CASE pr_ucomm.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If e_ucomm contains 'APP' i.e.function code for Approve button&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN c_fcode_approve.              " To approve selected record&lt;/P&gt;&lt;P&gt;      PERFORM app_timesheet USING c_approve_status.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If e_ucomm contains 'REJ' i.e. function code for Reject&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN c_fcode_rej.                  " To reject selected record&lt;/P&gt;&lt;P&gt;      PERFORM app_timesheet USING c_rej_status.&lt;/P&gt;&lt;P&gt;  ENDCASE.                             " CASE E_UCOMM&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " EVENT_UCOMM&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; FORM APP_TIMESHEET                                                  *&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; To get the selected records and update the records in database      *&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; pr_status type char01                                          *&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 app_timesheet USING pr_status TYPE char01 .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local data declaration......&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;   lt_marked_rows TYPE lvc_t_roid,     " Table to get rowid&lt;/P&gt;&lt;P&gt;   l_fs_marked_row LIKE LINE OF lt_marked_rows.&lt;/P&gt;&lt;P&gt;  " Field-string for lt_marked_rows&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To get all the selected rows in the table lt_marked_rows&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL METHOD g_alv-&amp;gt;get_selected_rows&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      et_row_no = lt_marked_rows.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Reading each row id and updating the database.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  LOOP AT lt_marked_rows INTO l_fs_marked_row.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Reading the table t_timesheet with rowid&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    READ TABLE t_timesheet INTO fs_timesheet INDEX&lt;/P&gt;&lt;P&gt;                                             l_fs_marked_row-row_id.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If record is there in the table.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;      CLEAR fs_timesheet-appstatus.&lt;/P&gt;&lt;P&gt;      GET PARAMETER ID 'ZEMPID' FIELD w_empid.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Changing the appstatus.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      fs_timesheet-appstatus = pr_status.&lt;/P&gt;&lt;P&gt;      fs_timesheet-approvedby = w_empid.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Updating the database table.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      UPDATE zcl_timesheet FROM fs_timesheet.&lt;/P&gt;&lt;P&gt;      IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;        DELETE t_timesheet INDEX l_fs_marked_row-row_id.&lt;/P&gt;&lt;P&gt;        PERFORM refresh_table USING pr_status.&lt;/P&gt;&lt;P&gt;      ENDIF.                           " IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;    ENDIF.                             " IF SY-SUBRC EQ 0&lt;/P&gt;&lt;P&gt;  ENDLOOP.                             " LOOP AT LT_MARKED_ROWS...&lt;/P&gt;&lt;P&gt;ENDFORM.                               " APP_TIMESHEET&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; FORM CHECK_CHANGED_DATA                                             *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; To change the data                                                  *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; No parameters are passsed to this subroutine                        *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM check_changed_data .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To change the data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL METHOD g_alv-&amp;gt;check_changed_data.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " CHECK_CHANGED_DATA&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; FORM  DISPLAY_ALL                                                   *&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; To display all the records                                          *&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; No parameters are passsed to this subroutine                        *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM display_all .&lt;/P&gt;&lt;P&gt;  SELECT empid                         " Employee ID&lt;/P&gt;&lt;P&gt;         workdate                      " Workdate&lt;/P&gt;&lt;P&gt;         groupid                       " Groupid&lt;/P&gt;&lt;P&gt;         projectid                     " Project ID&lt;/P&gt;&lt;P&gt;         projectname                   " Project name&lt;/P&gt;&lt;P&gt;         objectid                      " Object ID&lt;/P&gt;&lt;P&gt;         objectname                    " Object name&lt;/P&gt;&lt;P&gt;         activityid                    " Activity ID&lt;/P&gt;&lt;P&gt;         activityname                  " Activity name&lt;/P&gt;&lt;P&gt;         timeworked                    " Time worked&lt;/P&gt;&lt;P&gt;         description                   " Description&lt;/P&gt;&lt;P&gt;         taskstatus                    " Task status&lt;/P&gt;&lt;P&gt;         billstatus                    " Bill status&lt;/P&gt;&lt;P&gt;         appstatus                     " Approved status&lt;/P&gt;&lt;P&gt;         wstatus                       " Working status&lt;/P&gt;&lt;P&gt;         mngcomment                    " Manager comment&lt;/P&gt;&lt;P&gt;    FROM zcl_timesheet&lt;/P&gt;&lt;P&gt;    INTO TABLE t_time&lt;/P&gt;&lt;P&gt;   WHERE empid     IN s_empid&lt;/P&gt;&lt;P&gt;     AND workdate  IN s_date&lt;/P&gt;&lt;P&gt;     AND groupid   IN s_group&lt;/P&gt;&lt;P&gt;     AND projectid IN s_prjid&lt;/P&gt;&lt;P&gt;     AND appstatus NE c_save_status.&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE e000.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    CALL SCREEN 100.&lt;/P&gt;&lt;P&gt;  ENDIF.                               " IF SY-SUBRC NE 0&lt;/P&gt;&lt;P&gt;ENDFORM.                               " DISPLAY_ALL&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; FORM REFFRESH_TABLE                                                 *&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; To refresh output table and  issue message according p_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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;PR_STATUS TYPE CHAR01                                            *&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 refresh_table  USING pr_status TYPE char01.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To refresh output table.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL METHOD g_alv-&amp;gt;refresh_table_display.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Depending upon pr_status message is given.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF pr_status EQ c_approve_status.&lt;/P&gt;&lt;P&gt;    MESSAGE s001.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    MESSAGE s002.&lt;/P&gt;&lt;P&gt;  ENDIF.                               " IF P_STATUS EQ C_APPROVE_STATUS&lt;/P&gt;&lt;P&gt;ENDFORM.                               " REFRESH_TABLE&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; FORM SET_TITLEBAR                                                   *&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; To set titlebar on the screen 100.                                  *&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;PR_STATUS TYPE CHAR01                                            *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM set_titlebar USING pr_status TYPE char01.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If pr_status eq 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF pr_status EQ c_boolean_yes.&lt;/P&gt;&lt;P&gt;    SET TITLEBAR c_alv_scr WITH text-017.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    SET TITLEBAR c_alv_scr WITH text-018.&lt;/P&gt;&lt;P&gt;  ENDIF.                               " IF P_STATUS EQ C_BOOLEAN_YES&lt;/P&gt;&lt;P&gt;ENDFORM.                               " SET_TITLEBAR&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; FORM USER_COMMAND                                                   *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; According to sy-ucomm the action is performed in the screen 100     *&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; No parameters are passsed to this subroutine                        *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM user_command .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE sy-ucomm.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If p_app is selected, submitted data will be displayed for approval&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN c_fcode_onli OR c_fcode_approve.&lt;/P&gt;&lt;P&gt;      CLEAR sy-ucomm.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To display the submitted records.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IF p_app EQ c_boolean_yes.&lt;/P&gt;&lt;P&gt;        w_submit = c_boolean_yes.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To get submitted records&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        PERFORM get_data.&lt;/P&gt;&lt;P&gt;      ENDIF.                           " IF P_APP EQ C_BOOLEAN_YES&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To display all records according to selection.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IF p_disp EQ c_boolean_yes.&lt;/P&gt;&lt;P&gt;        w_display = c_boolean_yes.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To display&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        PERFORM display_all.&lt;/P&gt;&lt;P&gt;        CLEAR w_display.&lt;/P&gt;&lt;P&gt;      ENDIF.                           " IF P_DISP EQ C_BOOLEAN_YES&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDCASE.                             " CASE SY-UCOMM&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " USER_COMMAND&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; FORM  DISPLAY_ALLRECORDS                                            *&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; To display all the records in the display mode                      *&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; No parameters are passsed to this subroutine                        *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM display_allrecords .&lt;/P&gt;&lt;P&gt;  CLEAR w_display.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcatd USING 'T_TIME' 'WORKDATE'     text-002 '1'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcatd USING 'T_TIME' 'EMPID'        text-009 '2'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcatd USING 'T_TIME' 'PROJECTID'    text-003 '3'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcatd USING 'T_TIME' 'PROJECTNAME'  text-004 '4'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcatd USING 'T_TIME' 'OBJECTID'     text-005 '5'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcatd USING 'T_TIME' 'OBJECTNAME'   text-006 '6'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcatd USING 'T_TIME' 'ACTIVITYID'   text-007 '7'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcatd USING 'T_TIME' 'ACTIVITYNAME' text-008 '8'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcatd USING 'T_TIME' 'TIMEWORKED'   text-010 '9'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcatd USING 'T_TIME' 'DESCRIPTION'  text-011 '10'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcatd USING 'T_TIME' 'APPSTATUS'    text-012 '11'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcatd USING 'T_TIME' 'BILLSTATUS'   text-016 '12'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcatd USING 'T_TIME' 'MNGCOMMENT'   text-014 '13'.&lt;/P&gt;&lt;P&gt;  PERFORM alv_display USING t_time t_fcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " DISPLAY_ALLRECORDS&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; FORM SUBMITTED_RECORDS                                              *&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; To display submitted records for the manager to approve             *&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; No parameters are passsed to this subroutine                        *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM submitted_records .&lt;/P&gt;&lt;P&gt;  CLEAR w_submit.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To create object for instance g_events&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CREATE OBJECT g_events.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If w_first equal to space&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF w_first IS INITIAL.&lt;/P&gt;&lt;P&gt;    SET HANDLER g_events-&amp;gt;toolbar&lt;/P&gt;&lt;P&gt;            FOR g_alv.&lt;/P&gt;&lt;P&gt;    w_first = c_boolean_yes.&lt;/P&gt;&lt;P&gt;  ENDIF.                               " IF W_FIRST IS INITIAL..&lt;/P&gt;&lt;P&gt;  SET HANDLER g_events-&amp;gt;user_command&lt;/P&gt;&lt;P&gt;          FOR g_alv.&lt;/P&gt;&lt;P&gt;  g_fcatlayo-sel_mode = c_approve_status.&lt;/P&gt;&lt;P&gt;  REFRESH t_fcat.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcat USING 'T_TIMESHEET' 'WORKDATE'     text-002 '1'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcat USING 'T_TIMESHEET' 'EMPID'        text-009 '2'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcat USING 'T_TIMESHEET' 'PROJECTID'    text-003 '3'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcat USING 'T_TIMESHEET' 'PROJECTNAME'  text-004 '4'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcat USING 'T_TIMESHEET' 'OBJECTID'     text-005 '5'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcat USING 'T_TIMESHEET' 'OBJECTNAME'   text-006 '6'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcat USING 'T_TIMESHEET' 'ACTIVITYID'   text-007 '7'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcat USING 'T_TIMESHEET' 'ACTIVITYNAME' text-008 '8'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcat USING 'T_TIMESHEET' 'TIMEWORKED'   text-010 '9'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcat USING 'T_TIMESHEET' 'DESCRIPTION'  text-011 '10'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcat USING 'T_TIMESHEET' 'APPSTATUS'    text-012 '11'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcat USING 'T_TIMESHEET' 'BILLSTATUS'   text-016 '12'.&lt;/P&gt;&lt;P&gt;  PERFORM build_fcat USING 'T_TIMESHEET' 'MNGCOMMENT'   text-014 '13'.&lt;/P&gt;&lt;P&gt;  PERFORM alv_display USING t_timesheet t_fcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " SUBMITTED_RECORDS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Plzz reward if it is useful,&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Mahi&lt;/STRONG&gt;.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 27 Jan 2008 16:06:44 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid/m-p/3343894#M801691</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-01-27T16:06:44Z</dc:date>
    </item>
  </channel>
</rss>

