‎2008 Mar 12 9:40 AM
‎2008 Mar 12 9:42 AM
Check the below link to find for the sample program
http://abapprogramming.blogspot.com/2007/11/alv-layout-display-sample-code.html
CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'
EXPORTING
I_SAVE = 'A'
CHANGING
cs_variant = W_VARIANT.
MOVE W_VARIANT-VARIANT TO w_VARIANT1. Regards,
Santosh
‎2008 Mar 12 9:47 AM
TYPE-POOLS:slis.
TABLES:ekko.
SELECT-OPTIONS:so_ebeln FOR ekko-ebeln.
PARAMETERS: VARIANT LIKE DISVARIANT-VARIANT.
DATA:BEGIN OF it_ekko OCCURS 0,
ebeln LIKE ekko-ebeln, "PURCHASE DOCUMENT NUMBER
bukrs LIKE ekko-bukrs, "COMPANY CODE
bstyp LIKE ekko-bstyp, "PURCHASE DOCUMENT CATEGORY
bsart LIKE ekko-bsart, "PUCHASE DOCUMENT TYPE
END OF it_ekko.
*FIELD CATALOG AND EVENT CATALOG TABLE DECLARATION.
DATA:i_fieldcat TYPE slis_t_fieldcat_alv WITH HEADER LINE,
i_eventcat TYPE slis_t_event WITH HEADER LINE,
I_LAYOUT TYPE SLIS_LAYOUT_ALV .
* ZDLAYOUT1 TYPE SLIS_LAYOUT_ALV .
DATA:W_VARIANT LIKE DISVARIANT,
W_VARIANT1 LIKE DISVARIANT.
INITIALIZATION.
MOVE: SY-REPID TO W_VARIANT-REPORT,
SY-REPID TO W_VARIANT1-REPORT.
CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'
EXPORTING
I_SAVE = 'A'
CHANGING
cs_variant = W_VARIANT.
MOVE W_VARIANT-VARIANT TO w_VARIANT1.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR VARIANT.
DATA: L_EXIT.
CALL FUNCTION 'REUSE_ALV_VARIANT_F4'
EXPORTING
is_variant = W_VARIANT1
* I_TABNAME_HEADER =
* I_TABNAME_ITEM =
* IT_DEFAULT_FIELDCAT =
* I_SAVE = 'A'
* I_DISPLAY_VIA_GRID = ' '
IMPORTING
E_EXIT = L_EXIT
ES_VARIANT = W_VARIANT.
START-OF-SELECTION.
*INTERNAL TABLE POPULATION
SELECT ebeln
bukrs
bstyp
bsart
FROM ekko
INTO TABLE it_ekko
WHERE ebeln IN so_ebeln.
*POPULATING FIELD CATALOG BY USING FUNCTION MODULE
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
i_program_name = sy-cprog
i_internal_tabname = 'IT_EKKO'
i_inclname = sy-cprog
CHANGING
ct_fieldcat = i_fieldcat[].
*DISPLAYING ALV GRID WITH MULTIPLE LAYOUTSETS
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
* I_INTERFACE_CHECK = ' '
* I_BYPASSING_BUFFER = ' '
* I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = SY-CPROG
* I_CALLBACK_PF_STATUS_SET = ' '
* I_CALLBACK_USER_COMMAND = ' '
* I_CALLBACK_TOP_OF_PAGE = ' '
* I_CALLBACK_HTML_TOP_OF_PAGE = ' '
* I_CALLBACK_HTML_END_OF_LIST = ' '
* I_STRUCTURE_NAME =
* I_BACKGROUND_ID = ' '
* I_GRID_TITLE =
* I_GRID_SETTINGS =
* IS_LAYOUT = 'ZDLAYOUT1'
IT_FIELDCAT = I_FIELDCAT[]
* IT_EXCLUDING =
* IT_SPECIAL_GROUPS =
* IT_SORT =
* IT_FILTER =
* IS_SEL_HIDE =
* I_DEFAULT = 'X'
I_SAVE = 'A' "'U' "'X'
* IS_VARIANT = VARIANT
* IT_EVENTS =
* IT_EVENT_EXIT =
* IS_PRINT =
* IS_REPREP_ID =
* I_SCREEN_START_COLUMN = 0
* I_SCREEN_START_LINE = 0
* I_SCREEN_END_COLUMN = 0
* I_SCREEN_END_LINE = 0
* IT_ALV_GRAPHICS =
* IT_HYPERLINK =
* IT_ADD_FIELDCAT =
* IT_EXCEPT_QINFO =
* I_HTML_HEIGHT_TOP =
* I_HTML_HEIGHT_END =
* IMPORTING
* E_EXIT_CAUSED_BY_CALLER =
* ES_EXIT_CAUSED_BY_USER =
TABLES
t_outtab = IT_EKKO.
‎2008 Mar 12 9:50 AM
‎2008 Mar 12 9:50 AM
REUSE_ALV_VARIANT_DEFAULT_GET:
Purpose: Provides the default variant for the list specified in the structure
parameter CS_VARIANT of a program.
Function Call:
CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'
EXPORTING
I_SAVE = 'A'
CHANGING
CS_VARIANT = I_VARIANT
Parameters
I_SAVE :
Description :
Controls the storage mode
Prerequisite:
The IS_VARIANT parameter has the appropriate value.
Value range
' ' = display variants cannot be saved
Defined display variants (e.g. delivered display variants) can be
selected for presentation independently of this flag.
Changes cannot be saved.
'X' = standard save
Display variants can be saved as standard display variants.
User-specific saving is not possible.
'U' = only user-specific saving
The user can only save display variants user-specifically
'A' = standard and user-specific saving
The user can save a display variant user-specifically and
as standard display variant. The user chooses in the display variant
save popup.
CS_VARIANT:
Internal table containing the program name (and the default variant---optional )
Reward points if useful
‎2008 Mar 12 9:50 AM
Hi,
If you have the IDES system, you can goto SE80 and goto Package SLIS, there you will find the sample standard SAP Reports for different ALV.
reuse_alv_variants_default_get
Read default display variant (description only, w/o field catalog)
Provides the default variant for the list specified in the structure parameter CS_VARIANT of a program
SELECTING THE VARIANTS FOR INITIAL LIST DISPLAY (DEFAULT VARIANT)
The variants in the list display can be both user-specific and general. The user can programmatically set the initial (default) variant for list display.
The default variant can be found using the function module 'REUSE_ALV_VARIANT_DEFAULT_GET'.
Sample code:
CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'
EXPORTING
i_save = variant save condition (A=all, U = user-specific)
CHANGING
cs_variant = internal table containing the program name (and the default variant---optional)
EXCEPTIONS
not_found = 2.
HTH
Regards,
Dhruv Shah
‎2008 Mar 12 9:54 AM
Hi
Read default display variant (description only, w/o field catalog)
Provides the default variant for the list specified in the structure parameter CS_VARIANT of a program
Check the below code.
&----
*& Form variant_init
&----
Initialize variant
-
FORM variant_init .
Set Options: save variants userspecific or general
g_save = 'A'.
g_report = sy-repid.
g_var-report = g_report.
Get default variant
g_variant = g_var.
CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'
EXPORTING
i_save = g_save
CHANGING
cs_variant = g_variant
EXCEPTIONS
not_found = 2.
IF sy-subrc = 0.
p_vari = g_variant-variant.
ENDIF.
ENDFORM. " variant_init
&----
*& Form f4_for_variant
&----
F4 help for variant
-
FORM f4_for_variant .
CALL FUNCTION 'REUSE_ALV_VARIANT_F4'
EXPORTING
is_variant = g_var
i_save = g_save
IMPORTING
e_exit = g_exit
es_variant = g_variant
EXCEPTIONS
not_found = 2.
IF sy-subrc = 2.
MESSAGE ID sy-msgid TYPE 'S' NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ELSE.
IF g_exit = space.
p_vari = g_variant-variant.
ENDIF.
ENDIF.
ENDFORM. " f4_for_variant
&----
*& Form pai_of_selection_screen
&----
Check existence of Variant
-
FORM pai_of_selection_screen .
IF NOT p_vari IS INITIAL.
MOVE g_var TO g_variant.
MOVE p_vari TO g_variant-variant.
CALL FUNCTION 'REUSE_ALV_VARIANT_EXISTENCE'
EXPORTING
i_save = g_save
CHANGING
cs_variant = g_variant.
g_var = g_variant.
ELSE.
PERFORM variant_init.
ENDIF.
ENDFORM. " pai_of_selection_screen
‎2008 Mar 12 9:54 AM