안녕하세요..
OOP ALV에서 툴바를 만드는 데 Layout 기능이 나타나지 않네요..
그림1의 Layout 버튼을 그림 2의 Layout 버튼으로 보이게 하고 싶습니다.
이것저것 해보는 데로 그림 2처럼 나오질 않네요..
ALV 표시는 Custom Container를 이용했습니다.
아래는 Toolbar 설정하는 부분입니다.
DATA: ls_exclude TYPE ui_func.
REFRESH pt_table.
DEFINE mac_toolbar.
ls_exclude = &1.
append ls_exclude to pt_table.
END-OF-DEFINITION.
mac_toolbar:
cl_gui_alv_grid=>mc_fc_loc_undo,
cl_gui_alv_grid=>mc_fc_graph,
cl_gui_alv_grid=>mc_fc_help,
cl_gui_alv_grid=>mc_fc_info,
cl_gui_alv_grid=>mc_fc_maximum,
cl_gui_alv_grid=>mc_fc_minimum,
cl_gui_alv_grid=>mc_fc_print,
cl_gui_alv_grid=>mc_fc_print_back,
cl_gui_alv_grid=>mc_fc_print_prev,
cl_gui_alv_grid=>mc_fc_check,
cl_gui_alv_grid=>mc_fc_to_office,
cl_gui_alv_grid=>mc_fc_to_rep_tree,
cl_gui_alv_grid=>mc_fc_unfix_columns,
cl_gui_alv_grid=>mc_fc_views,
cl_gui_alv_grid=>mc_fc_view_crystal,
cl_gui_alv_grid=>mc_fc_view_excel,
cl_gui_alv_grid=>mc_fc_view_grid,
cl_gui_alv_grid=>mc_fc_word_processor.
DATA : GS_O_LAYOUT TYPE DISVARIANT.
일케 선언하신거에다가
GS_O_LAYOUT2-REPORT = SY-REPID .
이렇게 시스템변수를 시고
call method부분에 variant선언해주시면됨니다.
CALL METHOD G_GRID->SET_TABLE_FOR_FIRST_DISPLAY
EXPORTING
I_SAVE = 'A'
I_DEFAULT = 'X'
IS_LAYOUT = GS_LAYOUT
IS_VARIANT = GS_O_LAYOUT
IT_TOOLBAR_EXCLUDING = GT_EXCL_FUNC
CHANGING
IT_FIELDCATALOG = GT_FIELDCAT
IT_OUTTAB = GT_dispaly[].