Current Poll

Comprehensive code snippet for value help F4 for Layout Variant of all different type of ALV (SALV Model, ALV GUI Grid, ALV using REUSE FM)

ALV using SALV Model
CLASS lcl_layout_f4 DEFINITION. PUBLIC SECTION. CLASS-METHODS: for_salv CHANGING cv_layout TYPE disvariant-variant. ENDCLASS. "lcl_layout_f4 DEFINITION PARAMETERS: p_layout TYPE disvariant-variant. AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_layout. lcl_layout_f4=>for_salv( CHANGING cv_layout = p_layout ). * CLASS lcl_layout_f4 IMPLEMENTATION. METHOD for_salv. DATA: ls_layout TYPE salv_s_layout_info, ls_key TYPE salv_s_layout_key. ls_key-report = sy-repid. ls_layout = cl_salv_layout_service=>f4_layouts( s_key = ls_key restrict = if_salv_c_layout=>restrict_none ). cv_layout = ls_layout-layout. ENDMETHOD. "for_salv ENDCLASS. "lcl_layout_f4 IMPLEMENTATION
ALV using GUI ALV Grid
CLASS-METHODS: for_alv CHANGING cv_layout TYPE disvariant-variant, *** METHOD for_alv_lvc. DATA: ls_variant TYPE disvariant, lv_exit TYPE char1. ls_variant-report = sy-repid. CALL FUNCTION 'LVC_VARIANT_F4' EXPORTING is_variant = ls_variant i_save = 'A' IMPORTING e_exit = lv_exit es_variant = ls_variant EXCEPTIONS not_found = 1 OTHERS = 2. IF sy-subrc NE 0. MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. ELSE. CHECK lv_exit EQ space. cv_layout = ls_variant-variant. ENDIF. ENDMETHOD. "for_alv_lvc
ALV using REUSE FM
CLASS-METHODS: for_alv_lvc CHANGING cv_layout TYPE disvariant-variant. *** METHOD for_alv. DATA: ls_variant TYPE disvariant, lv_exit TYPE char1. ls_variant-report = sy-repid. CALL FUNCTION 'REUSE_ALV_VARIANT_F4' EXPORTING is_variant = ls_variant i_save = 'A' IMPORTING e_exit = lv_exit es_variant = ls_variant EXCEPTIONS not_found = 1. IF sy-subrc NE 0. * errror handling MESSAGE ID sy-msgid TYPE 'S' NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. ELSE. CHECK lv_exit EQ space. cv_layout = ls_variant-variant. ENDIF. ENDMETHOD. "for_alv
Do you have a Code Snippet which you want to share, Submit Code Snippet here