<?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 Refresh button - ALV in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/refresh-button-alv/m-p/2352324#M519431</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello all,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I added a Refresh button in one of my custom ALV report. Whenever I hit a Refresh button, I do a fresh data retrieval and based on the data retrieved, I modify my field catalog. But I observed that the Refresh functionality is not taking into account the new field catalogs. It is using the same field catalog from the first run for all the refresh results.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My User Command is something like this&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
FORM USER_COMMAND USING R_UCOMM     LIKE SY-UCOMM
                        RS_SELFIELD TYPE SLIS_SELFIELD.


 case r_ucomm.

    when 'REFRESH'.


*  Clear and Refresh all the internal tables and variables

        perform get_data.   (get new data and build field new field catalog)
        rs_selfield-refresh = 'X'.

 endcase.


ENDFORM.                "USER_COMMAND

&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please let me know if I am missing something. Thanks&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 15 Jun 2007 14:51:45 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-06-15T14:51:45Z</dc:date>
    <item>
      <title>Refresh button - ALV</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/refresh-button-alv/m-p/2352324#M519431</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello all,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I added a Refresh button in one of my custom ALV report. Whenever I hit a Refresh button, I do a fresh data retrieval and based on the data retrieved, I modify my field catalog. But I observed that the Refresh functionality is not taking into account the new field catalogs. It is using the same field catalog from the first run for all the refresh results.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My User Command is something like this&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
FORM USER_COMMAND USING R_UCOMM     LIKE SY-UCOMM
                        RS_SELFIELD TYPE SLIS_SELFIELD.


 case r_ucomm.

    when 'REFRESH'.


*  Clear and Refresh all the internal tables and variables

        perform get_data.   (get new data and build field new field catalog)
        rs_selfield-refresh = 'X'.

 endcase.


ENDFORM.                "USER_COMMAND

&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please let me know if I am missing something. Thanks&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 15 Jun 2007 14:51:45 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/refresh-button-alv/m-p/2352324#M519431</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-15T14:51:45Z</dc:date>
    </item>
    <item>
      <title>Re: Refresh button - ALV</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/refresh-button-alv/m-p/2352325#M519432</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Since you are using the function module, I believe the only way is to re-call the function module REUSE_ALV_GRID_DISPLAY each time the user refreshes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Rich Heilman&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 15 Jun 2007 14:53:52 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/refresh-button-alv/m-p/2352325#M519432</guid>
      <dc:creator>RichHeilman</dc:creator>
      <dc:date>2007-06-15T14:53:52Z</dc:date>
    </item>
    <item>
      <title>Re: Refresh button - ALV</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/refresh-button-alv/m-p/2352326#M519433</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;In perform get_data. &lt;/P&gt;&lt;P&gt;write &lt;/P&gt;&lt;P&gt;Clear ITAB&lt;/P&gt;&lt;P&gt;Refresh ITAB&lt;/P&gt;&lt;P&gt;then populate the ITAB with hew data with select statements&lt;/P&gt;&lt;P&gt;so that new data will be fetched in ITAB and displayed&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward points for useful Answers&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Anji&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 15 Jun 2007 14:54:46 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/refresh-button-alv/m-p/2352326#M519433</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-15T14:54:46Z</dc:date>
    </item>
    <item>
      <title>Re: Refresh button - ALV</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/refresh-button-alv/m-p/2352327#M519434</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;see the example code for refersh&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT Z_GET_REFRESH no standard page heading.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;type-pools : slis.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tables : makt,&lt;/P&gt;&lt;P&gt;         mara.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : i_fieldcat type slis_t_fieldcat_alv.&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 : begin of i_makt occurs 0,&lt;/P&gt;&lt;P&gt;       matnr like makt-matnr,&lt;/P&gt;&lt;P&gt;       maktx like makt-maktx,&lt;/P&gt;&lt;P&gt;       end of i_makt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : v_repid like sy-repid,&lt;/P&gt;&lt;P&gt;       g_user_command type slis_formname value 'USER_COMMAND',&lt;/P&gt;&lt;P&gt;       g_status_set   type slis_formname value 'SET_PF_STATUS'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:LC_GLAY TYPE LVC_S_GLAY.&lt;/P&gt;&lt;P&gt;select-options s_matnr for mara-matnr .&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;  select matnr maktx from makt into table i_makt&lt;/P&gt;&lt;P&gt;                              where matnr in s_matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;end-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Fill the fieldcatlog&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  perform fill_field.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Call the FM&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  perform call_fm.&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_field&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_field.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  data wa_fieldcat type slis_fieldcat_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  clear : wa_fieldcat.&lt;/P&gt;&lt;P&gt;  wa_fieldcat-tabname = 'I_MAKT'.&lt;/P&gt;&lt;P&gt;  wa_fieldcat-fieldname = 'MATNR'.&lt;/P&gt;&lt;P&gt;  wa_fieldcat-outputlen = '18'.&lt;/P&gt;&lt;P&gt;  wa_fieldcat-seltext_l = 'Material #'.&lt;/P&gt;&lt;P&gt;  wa_fieldcat-col_pos = '1'.&lt;/P&gt;&lt;P&gt;  append wa_fieldcat to i_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  clear : wa_fieldcat.&lt;/P&gt;&lt;P&gt;  wa_fieldcat-tabname = 'I_MAKT'.&lt;/P&gt;&lt;P&gt;  wa_fieldcat-fieldname = 'MAKTX'.&lt;/P&gt;&lt;P&gt;  wa_fieldcat-outputlen = '40'.&lt;/P&gt;&lt;P&gt;  wa_fieldcat-seltext_l = 'Material Desc'.&lt;/P&gt;&lt;P&gt;  wa_fieldcat-col_pos = '2'.&lt;/P&gt;&lt;P&gt;  append wa_fieldcat to i_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fill_field&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  call_fm&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 call_fm.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  v_repid = sy-repid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LC_GLAY-EDT_CLL_CB = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;/P&gt;&lt;P&gt;   EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_INTERFACE_CHECK                 = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BYPASSING_BUFFER                =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BUFFER_ACTIVE                   = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      I_CALLBACK_PROGRAM                = v_repid&lt;/P&gt;&lt;P&gt;      I_CALLBACK_PF_STATUS_SET          = g_status_set&lt;/P&gt;&lt;P&gt;      I_CALLBACK_USER_COMMAND           = g_user_command&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_CALLBACK_TOP_OF_PAGE            = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_CALLBACK_HTML_TOP_OF_PAGE       = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_CALLBACK_HTML_END_OF_LIST       = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_STRUCTURE_NAME                  =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BACKGROUND_ID                   = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_GRID_TITLE                      =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    I_GRID_SETTINGS                   = LC_GLAY&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IS_LAYOUT                         =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IT_FIELDCAT                       = i_fieldcat&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_EXCLUDING                      =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_SPECIAL_GROUPS                 =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_SORT                           =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_FILTER                         =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IS_SEL_HIDE                       =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_DEFAULT                         = 'X'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_SAVE                            = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IS_VARIANT                        =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_EVENTS                         =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_EVENT_EXIT                     =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IS_PRINT                          =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IS_REPREP_ID                      =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_SCREEN_START_COLUMN             = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_SCREEN_START_LINE               = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_SCREEN_END_COLUMN               = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_SCREEN_END_LINE                 = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_ALV_GRAPHICS                   =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_ADD_FIELDCAT                   =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_HYPERLINK                      =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_HTML_HEIGHT_TOP                 =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_HTML_HEIGHT_END                 =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_EXCEPT_QINFO                   =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  E_EXIT_CAUSED_BY_CALLER           =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  ES_EXIT_CAUSED_BY_USER            =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      T_OUTTAB                          = i_makt&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;            .&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " call_fm&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      FORM USER_COMMAND                                             *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM user_command USING r_ucomm LIKE sy-ucomm&lt;/P&gt;&lt;P&gt;            rs_selfield TYPE slis_selfield.                 "#EC CALLED&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  data i_RSPARAMS like RSPARAMS occurs 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE R_UCOMM.&lt;/P&gt;&lt;P&gt;    WHEN '&amp;amp;IC1'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      read table i_makt index rs_selfield-tabindex.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SET PARAMETER ID 'MAT' FIELD i_makt-matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if not i_makt-matnr is initial.&lt;/P&gt;&lt;P&gt;        call transaction 'MM02' and skip first screen.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    when 'REFRESH'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'RS_REFRESH_FROM_SELECTOPTIONS'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          CURR_REPORT           = v_repid&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  SP                    =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        TABLES&lt;/P&gt;&lt;P&gt;         SELECTION_TABLE       = i_RSPARAMS&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;         NOT_FOUND             = 1&lt;/P&gt;&lt;P&gt;         NO_REPORT             = 2&lt;/P&gt;&lt;P&gt;         OTHERS                = 3&lt;/P&gt;&lt;P&gt;                .&lt;/P&gt;&lt;P&gt;      IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      submit z_get_refresh with selection-table i_RSPARAMS.&lt;/P&gt;&lt;P&gt;      rs_selfield-refresh = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MOVE 'REFRESH' TO r_ucomm.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.&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 set_pf_status                                            *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM SET_PF_STATUS USING rt_extab TYPE slis_t_extab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SET PF-STATUS 'ZSTANDARD' EXCLUDING rt_extab.&lt;/P&gt;&lt;P&gt;  SET TITLEBAR  sy-tcode.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 15 Jun 2007 14:58:59 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/refresh-button-alv/m-p/2352327#M519434</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-15T14:58:59Z</dc:date>
    </item>
    <item>
      <title>Re: Refresh button - ALV</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/refresh-button-alv/m-p/2352328#M519435</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Alright man, check this out,  this is not bad for a "Friday".    Here I am calling the function module over and over again while the user is clicking the REFRESH button.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;

report zrich_0001.

* Global ALV Data Declarations
type-pools: slis.

* Internal Tables
data: begin of itab occurs 0,
      matnr type mara-matnr,
      maktx type makt-maktx,
      field1 type c,
      field2 type c,
      field3 type c,
      field4 type c,
      field5 type c,
      field6 type c,
      field7 type c,
      field8 type c,
      field9 type c,
      field10 type c,
      end of itab.

data: global_ucomm type sy-ucomm.

start-of-selection.

  perform call_alv.

*********************************************************************
*      Form  GET_DATA
*********************************************************************
form get_data.

  select mara~matnr makt~maktx
          into corresponding fields of table itab
               from mara
                 inner join makt
                  on mara~matnr = makt~matnr
                             up to 20 rows.

endform.

************************************************************************
*  CALL_ALV
************************************************************************
form call_alv.

  data: ifc type slis_t_fieldcat_alv.
  data: xfc type slis_fieldcat_alv.
  data: repid type sy-repid.
  data: counter type i.

  repid = sy-repid.

  global_ucomm = 'INIT'.

  while global_ucomm = 'REFRESH'
     or global_ucomm = 'INIT'.

    clear global_ucomm.

* Get some new data.
    perform get_data.

* Rebuild the FC
    clear xfc. refresh ifc.

    clear xfc.
    xfc-reptext_ddic = 'Material Number'.
    xfc-fieldname    = 'MATNR'.
    xfc-tabname      = 'ITAB'.
    xfc-outputlen    = '18'.
    append xfc to ifc.

    clear xfc.
    xfc-reptext_ddic = 'Material Description'.
    xfc-fieldname    = 'MAKTX'.
    xfc-tabname      = 'ITAB'.
    xfc-outputlen    = '40'.
    append xfc to ifc.

* Add another field to the FC each time it is refreshed
* just for demo purposes
    do counter times.

* Prevent dump
      if sy-index &amp;gt; 10.
        exit.
      endif.

      clear xfc.
      xfc-reptext_ddic = 'Another Field'.
      xfc-fieldname = sy-index.
      shift  xfc-fieldname left deleting leading space.
      concatenate 'FIELD' xfc-fieldname into xfc-fieldname.
      xfc-tabname      = 'ITAB'.
      xfc-outputlen    = '10'.
      append xfc to ifc.

    enddo.

* Call ABAP List Viewer (ALV)
    call function 'REUSE_ALV_GRID_DISPLAY'
         exporting
              i_callback_program       = repid
              i_callback_user_command  = 'HANDLE_USER_COMMAND'
              i_callback_pf_status_set = 'SET_PF_STATUS'
              it_fieldcat              = ifc
         tables
              t_outtab                 = itab.

    global_ucomm = sy-ucomm.
    counter = counter + 1.

  endwhile.

endform.

***********************************************************************
*       FORM set_Pf_status                                            *
***********************************************************************
form set_pf_status  using rt_extab type slis_t_extab..

  types: begin of texcl,
          fcode like rsmpe-func,
         end of texcl.

  data: iexcl type table of texcl.
  data: xexcl type texcl.

  xexcl-fcode = '&amp;amp;ABC'.      append xexcl to iexcl.
  xexcl-fcode = '&amp;amp;EB9'.      append xexcl to iexcl.
  xexcl-fcode = '&amp;amp;XPA'.      append xexcl to iexcl.
  xexcl-fcode = '&amp;amp;OMP'.      append xexcl to iexcl.
  xexcl-fcode = '&amp;amp;OAD'.      append xexcl to iexcl.
  xexcl-fcode = '&amp;amp;AVE'.      append xexcl to iexcl.
  xexcl-fcode = '&amp;amp;LFO'.      append xexcl to iexcl.
  xexcl-fcode = '&amp;amp;NFO'.      append xexcl to iexcl.

  set pf-status 'ALV_STANDARD' excluding iexcl..

endform.

***********************************************************************
*       FORM handle_User_Command                                      *
***********************************************************************
form handle_user_command using r_ucomm     like sy-ucomm
                               rs_selfield type slis_selfield.

  case r_ucomm.
    when 'REFRESH'.
      rs_selfield-exit = 'X'.
  endcase.

endform.

&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;RIch Heilman&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 15 Jun 2007 18:04:24 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/refresh-button-alv/m-p/2352328#M519435</guid>
      <dc:creator>RichHeilman</dc:creator>
      <dc:date>2007-06-15T18:04:24Z</dc:date>
    </item>
    <item>
      <title>Re: Refresh button - ALV</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/refresh-button-alv/m-p/2352329#M519436</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;RICH You are the BEST !!!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 15 Jun 2007 19:29:25 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/refresh-button-alv/m-p/2352329#M519436</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-15T19:29:25Z</dc:date>
    </item>
  </channel>
</rss>

