일반적인 형태는 'AA American Airlines'와 같이 코드와 텍스트로 구성된 Dropdown 리스트를 사용하게 된다.
lvc_t_dral 타입을 이용해 Dropdown 리스트를 구성한 후에 set_drop_down_table 메소드를 호출할 때 it_drop_down_alias 파라미터를 사용하면 된다. 그리고 Dropdown alias가 작동되기 위해서는 ALV를 변경했을 때 EDIT 이벤트를 발생시키는 register_edit_event 메소드를 호출해야 한다.프로그램 Z18_031을 Z18_032로 복사 생성하여 테스트해보자.
소스 자료실의 z18_032를 활용해 보세요.
다음은 교재의 내용중 일부입니다.
일반적인 형태는 'AA American Airlines'와 같이 코드와 텍스트로 구성된 Dropdown 리스트를 사용하게 된다.
lvc_t_dral 타입을 이용해 Dropdown 리스트를 구성한 후에 set_drop_down_table 메소드를 호출할 때 it_drop_down_alias 파라미터를 사용하면 된다. 그리고 Dropdown alias가 작동되기 위해서는 ALV를 변경했을 때 EDIT 이벤트를 발생시키는 register_edit_event 메소드를 호출해야 한다. 프로그램 Z18_031을 Z18_032로 복사 생성하여 테스트해보자.
<예제18-9-2 >
REPORT Z18_032 .
~중략~
FORM setting_catalog .
DATA ls_fieldcat TYPE lvc_s_fcat.
ls_fieldcat-fieldname = 'CARRID'.
ls_fieldcat-drdn_hndl = '1'.
ls_fieldcat-drdn_alias = 'X'.
APPEND ls_fieldcat TO gt_fieldcat.ENDFORM.
~중략~
FORM setting_dropdown .
DATA: lt_dropdown TYPE lvc_t_dral,
ls_dropdown TYPE lvc_s_dral.
ls_dropdown-handle = '1'.
ls_dropdown-int_value = 'AA'.
ls_dropdown-value = 'AA : American Airlines'.
APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '1'.
ls_dropdown-int_value = 'AZ'.
ls_dropdown-value = 'AZ : Alitalia'.
APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '1'.
ls_dropdown-int_value = 'UA'.
ls_dropdown-value = 'UA : United Airlines'.
APPEND ls_dropdown TO lt_dropdown.
CALL METHOD g_grid->set_drop_down_table
EXPORTING
2
3
ENDFORM. " setting_dropdown
CALL METHOD grid1->register_edit_event
EXPORTING
i_event_id = cl_gui_alv_grid=>mc_evt_modified.
CALL METHOD grid1->set_table_for_first_display
</예제>
<결과18-9-2 >