SAP/ABAP

SAP ABAP SELECTION-SCREEN LIST BOX (리스트박스) / 드롭박스(DROPBOX) 만드는 법 알아보기

살구 연구소장 2026. 7. 15. 00:00

안녕하세요 

 

이번 포스팅은 SAP ABAP SELECTION-SCREEN LIST BOX (리스트박스) / 드롭박스(DROPBOX) 만드는 법 알아보도록 하겠습니다.

 

일단 사람마다 부르는 이름이 달라서 제목에 두개를 다 적었습니다.

 

개발을 다 한 모습은 SELECTION-SCREEN에 리스트박스를 만들 수 있습니다.

 

만드는 법

 

변수선언 부분입니다.

TYPE-POOLS: vrm. 

  DATA : gv_list_name  TYPE vrm_id,
         gv_list_type  TYPE vrm_values,
         gv_list_value LIKE LINE OF gv_list_type.

 

SCR -> 스크린을 선언하는 부분입니다.

개발룰마다 다르지만 TOP에 선언되어있는 경우도 있습니다.

아 그리고 지금 AS~~ 회색표시가 되었는데 다 적어줘야 리스트박스가 나옵니다.

PARAMETERS     : p_list AS LISTBOX VISIBLE LENGTH 20 OBLIGATORY.

 

 

메인레포트 부분입니다.

ABAP EVENT - INITIALIZATION 부분에 넣어줘야합니다. 

초기 세팅 부분이기 때문입니다.

*&---------------------------------------------------------------------*
*&  INITIALIZATION
*&---------------------------------------------------------------------*
INITIALIZATION.
  PERFORM set_list_box.
  CLEAR : gv_list_type, gv_list_name, gv_list_value.

  gv_list_name       = 'P_LIST'.
  gv_list_value-key  = '1'.
  gv_list_value-text = 'LIST1'.
  APPEND gv_list_value TO gv_list_type.

  gv_list_name       = 'P_LIST'.
  gv_list_value-key  = '2'.
  gv_list_value-text = 'LIST2'.
  APPEND gv_list_value TO gv_list_type.

  gv_list_name       = 'P_LIST'.
  gv_list_value-key  = '3'.
  gv_list_value-text = 'LIST3'.
  APPEND gv_list_value TO gv_list_type.

  " GV_LIST_VALUE-KEY 값이 "1" 선택이됨
  p_list = '1'.

 

그리고 또 ABAP EVENT쪽에 AT SELECTION-SCREEN ON VALUE REQUEST FOR "리스트박스변수명"

그 밑에 아래에 FUNCTION을 넣어줍니다.

  CALL FUNCTION 'VRM_SET_VALUES'
    EXPORTING
      id     = gv_list_name
      values = gv_list_type.

 

 

이렇게 위에서 아래로 그대로 COPY 하면서 내려오시면 리스트 박수를 만들수 있고

GV_LIST_VALUE-KEY값으로 나중에 로직을 컨트롤하면됩니다.

예를 들자면

CASE P_LIST.

  WHEN '1'.

      로직1

   WHEN '2'.

      로직2

ENDCASE.

 

이렇게 하시면 됩니다.

 

감사합니다.