<?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 Class CL_SALV_FUNCTIONS, method ENABLE_FUNCTION not supported in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/class-cl-salv-functions-method-enable-function-not-supported/m-p/789091#M39893</link>
    <description>&lt;P&gt;Hi all&lt;/P&gt;
  &lt;P&gt;I am trying to add function to the CL_SALV_TABLE as following: &lt;/P&gt;
  &lt;PRE&gt;&lt;CODE&gt;START-OF-SELECTION.
  TRY.
      PERFORM query.
      IF gt_kep_alv[] IS INITIAL.
        WRITE:/ text-002.
        EXIT.
      ENDIF.
      cl_salv_table=&amp;gt;factory(
        IMPORTING
          r_salv_table = DATA(lo_alv)
        CHANGING
          t_table      = gt_kep_alv[] ).
      DATA(lo_func) = lo_alv-&amp;gt;get_functions( ).
      lo_func-&amp;gt;set_all( abap_true ).
      lo_func-&amp;gt;add_function( name = CONV salv_de_function( 'REFRESH' )
                             icon = '@42@'
                             text = CONV string( text-005 )
                             tooltip = CONV string( text-005 )
                             position = if_salv_c_function_position=&amp;gt;right_of_salv_functions
                            ).
      DATA(lo_layout) = lo_alv-&amp;gt;get_layout( ).
      DATA(ls_key) = VALUE salv_s_layout_key( report = sy-repid ).
      lo_layout-&amp;gt;set_key( ls_key ).
      lo_layout-&amp;gt;set_save_restriction( if_salv_c_layout=&amp;gt;restrict_none ).
      DATA(lo_column_gleis) = lo_alv-&amp;gt;get_columns( )-&amp;gt;get_column( columnname = 'GLEIS' ).
      lo_column_gleis-&amp;gt;set_short_text( value = text-003 ).
      lo_column_gleis-&amp;gt;set_medium_text( value = text-003 ).
      lo_column_gleis-&amp;gt;set_long_text( value = text-003 ).
      DATA(lo_column_status) = lo_alv-&amp;gt;get_columns( )-&amp;gt;get_column( columnname = 'STATUS' ).
      lo_column_status-&amp;gt;set_short_text( value = text-004 ).
      lo_column_status-&amp;gt;set_medium_text( value = text-004 ).
      lo_column_status-&amp;gt;set_long_text( value = text-004 ).
      DATA(lo_events) = lo_alv-&amp;gt;get_event( ).
      DATA(lo_event) = NEW gcl_event_handler( ).
      SET HANDLER lo_event-&amp;gt;handle_toolbar_click FOR lo_events.
      lo_alv-&amp;gt;display( ).
    CATCH cx_salv_msg INTO DATA(lo_msg).
      WRITE:/ lo_msg-&amp;gt;get_text( ).
    CATCH cx_salv_method_not_supported INTO DATA(lo_salv).
      WRITE:/ lo_salv-&amp;gt;get_text( ).
  ENDTRY.
FORM query.
......
......
......
ENDFORM.&lt;/CODE&gt;&lt;/PRE&gt;
  &lt;P&gt;When I carry out the application, I've got: &lt;/P&gt;
  &lt;PRE&gt;&lt;CODE&gt;Class CL_SALV_FUNCTIONS, method ENABLE_FUNCTION not supported for REFRESH Only Possible in Grid View &lt;/CODE&gt;&lt;/PRE&gt;
  &lt;P&gt;What am I doing wrong? &lt;/P&gt;
  &lt;P&gt;Thanks&lt;/P&gt;</description>
    <pubDate>Mon, 28 Jan 2019 14:03:02 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2019-01-28T14:03:02Z</dc:date>
    <item>
      <title>Class CL_SALV_FUNCTIONS, method ENABLE_FUNCTION not supported</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/class-cl-salv-functions-method-enable-function-not-supported/m-p/789091#M39893</link>
      <description>&lt;P&gt;Hi all&lt;/P&gt;
  &lt;P&gt;I am trying to add function to the CL_SALV_TABLE as following: &lt;/P&gt;
  &lt;PRE&gt;&lt;CODE&gt;START-OF-SELECTION.
  TRY.
      PERFORM query.
      IF gt_kep_alv[] IS INITIAL.
        WRITE:/ text-002.
        EXIT.
      ENDIF.
      cl_salv_table=&amp;gt;factory(
        IMPORTING
          r_salv_table = DATA(lo_alv)
        CHANGING
          t_table      = gt_kep_alv[] ).
      DATA(lo_func) = lo_alv-&amp;gt;get_functions( ).
      lo_func-&amp;gt;set_all( abap_true ).
      lo_func-&amp;gt;add_function( name = CONV salv_de_function( 'REFRESH' )
                             icon = '@42@'
                             text = CONV string( text-005 )
                             tooltip = CONV string( text-005 )
                             position = if_salv_c_function_position=&amp;gt;right_of_salv_functions
                            ).
      DATA(lo_layout) = lo_alv-&amp;gt;get_layout( ).
      DATA(ls_key) = VALUE salv_s_layout_key( report = sy-repid ).
      lo_layout-&amp;gt;set_key( ls_key ).
      lo_layout-&amp;gt;set_save_restriction( if_salv_c_layout=&amp;gt;restrict_none ).
      DATA(lo_column_gleis) = lo_alv-&amp;gt;get_columns( )-&amp;gt;get_column( columnname = 'GLEIS' ).
      lo_column_gleis-&amp;gt;set_short_text( value = text-003 ).
      lo_column_gleis-&amp;gt;set_medium_text( value = text-003 ).
      lo_column_gleis-&amp;gt;set_long_text( value = text-003 ).
      DATA(lo_column_status) = lo_alv-&amp;gt;get_columns( )-&amp;gt;get_column( columnname = 'STATUS' ).
      lo_column_status-&amp;gt;set_short_text( value = text-004 ).
      lo_column_status-&amp;gt;set_medium_text( value = text-004 ).
      lo_column_status-&amp;gt;set_long_text( value = text-004 ).
      DATA(lo_events) = lo_alv-&amp;gt;get_event( ).
      DATA(lo_event) = NEW gcl_event_handler( ).
      SET HANDLER lo_event-&amp;gt;handle_toolbar_click FOR lo_events.
      lo_alv-&amp;gt;display( ).
    CATCH cx_salv_msg INTO DATA(lo_msg).
      WRITE:/ lo_msg-&amp;gt;get_text( ).
    CATCH cx_salv_method_not_supported INTO DATA(lo_salv).
      WRITE:/ lo_salv-&amp;gt;get_text( ).
  ENDTRY.
FORM query.
......
......
......
ENDFORM.&lt;/CODE&gt;&lt;/PRE&gt;
  &lt;P&gt;When I carry out the application, I've got: &lt;/P&gt;
  &lt;PRE&gt;&lt;CODE&gt;Class CL_SALV_FUNCTIONS, method ENABLE_FUNCTION not supported for REFRESH Only Possible in Grid View &lt;/CODE&gt;&lt;/PRE&gt;
  &lt;P&gt;What am I doing wrong? &lt;/P&gt;
  &lt;P&gt;Thanks&lt;/P&gt;</description>
      <pubDate>Mon, 28 Jan 2019 14:03:02 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/class-cl-salv-functions-method-enable-function-not-supported/m-p/789091#M39893</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2019-01-28T14:03:02Z</dc:date>
    </item>
    <item>
      <title>Re: Class CL_SALV_FUNCTIONS, method ENABLE_FUNCTION not supported</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/class-cl-salv-functions-method-enable-function-not-supported/m-p/789092#M39894</link>
      <description>&lt;P&gt;This has been discussed quite a few times. I believe Paul Hardy has a blog on it. Essentially, you can't do it that way, but there are workarounds. &lt;/P&gt;&lt;P&gt;Personally I just use CL_GUI_ALV_GRID instead if I need user defined functions.&lt;/P&gt;&lt;P&gt;By the way - FORM and PERFORM are obsolete... try using classes and methods.&lt;/P&gt;</description>
      <pubDate>Mon, 28 Jan 2019 14:46:40 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/class-cl-salv-functions-method-enable-function-not-supported/m-p/789092#M39894</guid>
      <dc:creator>matt</dc:creator>
      <dc:date>2019-01-28T14:46:40Z</dc:date>
    </item>
    <item>
      <title>Re: Class CL_SALV_FUNCTIONS, method ENABLE_FUNCTION not supported</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/class-cl-salv-functions-method-enable-function-not-supported/m-p/789093#M39895</link>
      <description>&lt;P&gt;&lt;SPAN class="mention-scrubbed"&gt;zero_coder&lt;/SPAN&gt; In fact, it doesn't mean that you can't use ADD_FUNCTION with SALV for adding a button to the toolbar, but that this method works only with the SALV grid view mode (inside a GUI container).&lt;/P&gt;&lt;P&gt;In your case, your FACTORY call indicates that you are using the "full screen" mode.&lt;/P&gt;&lt;P&gt;ADD_FUNCTION works only if you define a custom screen with a "custom" container (would work for any other kind of container too) and you instantiate like that:&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;      CALL METHOD cl_salv_table=&amp;gt;factory
        EXPORTING
          r_container  = go_container " &amp;lt;== type ref to cl_gui_container
        IMPORTING
          r_salv_table = DATA(lo_alv)
        CHANGING
          t_table      = gt_kep_alv[].&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;There is a workaround with the "full screen" mode : copy the standard GUI status (SALV_TABLE_STANDARD of program SAPLSLVC_FULLSCREEN), add a static button, and communicate the GUI status at runtime by calling LO_ALV-&amp;gt;SET_SCREEN_STATUS( ... )&lt;/P&gt;</description>
      <pubDate>Mon, 28 Jan 2019 15:12:57 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/class-cl-salv-functions-method-enable-function-not-supported/m-p/789093#M39895</guid>
      <dc:creator>Sandra_Rossi</dc:creator>
      <dc:date>2019-01-28T15:12:57Z</dc:date>
    </item>
    <item>
      <title>Re: Class CL_SALV_FUNCTIONS, method ENABLE_FUNCTION not supported</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/class-cl-salv-functions-method-enable-function-not-supported/m-p/789094#M39896</link>
      <description>&lt;P&gt;Take a look at program: SALV_DEMO_TABLE_EVENTS, you will know how to define your own function with anykind of screen mode&lt;/P&gt;</description>
      <pubDate>Tue, 29 Jan 2019 00:42:44 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/class-cl-salv-functions-method-enable-function-not-supported/m-p/789094#M39896</guid>
      <dc:creator>DoanManhQuynh</dc:creator>
      <dc:date>2019-01-29T00:42:44Z</dc:date>
    </item>
  </channel>
</rss>

