ABAP 개발을 핟 보면 사용자들이 데이터 입력하는 텍스트 박스를 많이 만들게 된다. 그러한 데이터를 입력하는 박스 중에서 사용자가 임의로 넣는 것이 아닌 정해진 값만 넣게 해야 하는 방법중 하나가 Dropdown List 를 만드는 것이다. 다른 말로 Combo box 라고도 하는데 사용자가 넣어야 하는 것을 선택할 수 있게 하는 것이다.
이렇게 되면 사용자의 입력 오류를 예방 할 수 있고 또 개발자가 오류 값들에 대한 예외처리 하는 로직도 줄일 수 있어서 효과적이다. ABAP에서는 이러한 Dropdown List 를 만드는 방법을 2가지 소개 하고자 한다.
1. Element -> Domain 에 정의를 해서 리스트를 출력한다.
이것은 텍스트 필드에 사용하는 element 의 domain에 정의를 하는 것이다. 이 방법은 고정적인 값(절대 변하지 않는..) 을 넣어주면 간단하게 Dropdown List 를 구성할 수 있다. 그러나 뭔가 다른게 추가 해야 한다면 CTS를 반영하여 넘겨야하는 단점이 있다. ( 꼭! 절대 변할일 없다고 해 놓고 변한다..)
위에 예제 사진은 입력된 값이 없지만 Element -> Domain 을 통해서 등록 할 수 있다.
2. VRM_SET_VALUES' function 을 사용하여 Dropdown list 를 구성한다.
사용자가 임의로 (또는 동적으로) Dropdown list 를 구성할 수 있다. 필요에 따라 사용자 따라 변경이 가능하니 이 방법을 사용하면 다양항 상황에 대응을 할 수 있다. 아래 코드를 보면 쉽게 이해 할 수 있다. ltab 이라는 Internal table 은 key 와 text로 구성되어 있는데 이 테이블에 key, text 를 한쌍으로 append 시킨 이후에 VRM_SET_VALUES function 을 사용하여 추가해 주면 된다.
DATA ltab TYPE vrm_values WITH HEADER LINE. " SHIFT TYPE TEXT CLEAR: ltab, ltab[]. ltab-key = 'D'. ltab-text = 'DAY'. APPEND ltab. ltab-key = 'N'. ltab-text = 'NIGHT'. APPEND ltab. CALL FUNCTION 'VRM_SET_VALUES' EXPORTING id = 'TXT_DAY_TYPE' values = ltab[].
'SAP > ABAP' 카테고리의 다른 글
ABAP 개발자의 시작 (0) | 2015.04.06 |
---|---|
ABAP 메모리상의 프로그램 로컬 변수 Local Variable 접근하기 (0) | 2015.02.25 |
ABAP 간단한 결과 내용을 ALV 팝업으로 출력하기 (0) | 2015.02.06 |
ABAP BDC 동일한 Work Order 수행시 오류 발생(IW32) (0) | 2015.02.05 |
ABAP Call Screen 100 실행 후 Write 구문 출력하기 (0) | 2015.01.26 |
ABAP Stored Procedure 호출방법 (0) | 2015.01.15 |
ABAP 스크린 제목에 & 넣는 방법 (0) | 2014.12.16 |
ABAP Class ALV Checkbox 변경시 Data Changed Event 실행 (0) | 2014.12.15 |
ABAP Class ALV Cell 별 색상 넣기 (0) | 2014.12.10 |
ABAP 파일 업로드, 다운로드시 파일 선택 팝업 생성 (0) | 2014.11.18 |