Code: Alles auswählen.
CALL FUNCTION 'SAPGUI_SET_FUNCTIONCODE'
EXPORTING
functioncode = 'FIRST'
EXCEPTIONS
function_not_supported = 1
OTHERS = 2.
Code: Alles auswählen.
WHEN 'FIRST'. " Programmstart
* Rüstwechsel ermitteln
IF p_konfig = 'X'.
PERFORM calc_ruestwechsel CHANGING it_output_alv.
rs_selfield-refresh = 'X'.
ENDIF.
So geht das tatsächlich nicht - aber ein anderer Ansatz schon.RiffRaff hat geschrieben:hallo,
da hab ich aber trotzdem, daß gleiche problem.
bevor der alv nicht angezeigt wird, kann ich auch nicht mit dem FuBau 'REUSE_ALV_GRID_LAYOUT_INFO_GET' die Sortier/Filtertabelle lesen.
mfg
richard
Code: Alles auswählen.
REPORT.
TYPE-POOLS: slis.
DATA: gt_daten TYPE STANDARD TABLE OF usr02 WITH NON-UNIQUE DEFAULT KEY,
is_variant TYPE disvariant,
et_sort TYPE slis_t_sortinfo_alv,
et_filter TYPE slis_t_filter_alv,
it_def_fc TYPE slis_t_fieldcat_alv,
is_layout TYPE slis_layout_alv.
END-OF-SELECTION.
SELECT *
INTO TABLE gt_daten FROM usr02.
is_variant-report = sy-repid.
is_variant-handle = '0001'.
* Zum Testen habe ich eine Variant STEFAN2 angelegt mit eingestellten Filtern
is_variant-variant = 'STEFAN2'.
* Dummerweise musst du einen Feldkatalog mitgeben - am besten den nehmen,
* den du sowieso zum Anzeigen des Grid verwendest. Dann kannst du dir
* den hiesigen Aufruf mit ...._MERGE sparen, da du ja den FC irgendwo schon hast.
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
i_structure_name = 'USR02'
i_bypassing_buffer = 'X'
CHANGING
ct_fieldcat = it_def_fc
EXCEPTIONS
inconsistent_interface = 1
program_error = 2
OTHERS = 3.
CALL FUNCTION 'REUSE_ALV_VARIANT_SELECT'
EXPORTING
i_dialog = ''
i_user_specific = 'X'
it_default_fieldcat = it_def_fc
i_layout = is_layout
i_bypassing_buffer = 'X'
IMPORTING
et_sort = et_sort
et_filter = et_filter
CHANGING
cs_variant = is_variant
EXCEPTIONS
wrong_input = 1
fc_not_complete = 2
not_found = 3
program_error = 4
OTHERS = 5.
* Hier mal im Debugger schauen -
BREAK-POINT.
* Wenn die Variante existiert und du du Filter/Sortierungen eingestellt hast
* solltest du die hier sehen können in ET_SORT und ET_FILTER
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_structure_name = 'USR02'
i_save = 'A'
is_variant = is_variant
TABLES
t_outtab = gt_daten
EXCEPTIONS
program_error = 1
OTHERS = 2.