SAP/ABAP
[ABAP] SELECTION SCREEN에서 LISTBOX와 WHERE절
승민아
2025. 2. 26. 10:32
쿼리를 날릴때 LISTBOX에서
Business 고객인지 Private 고객인지 체크박스의 내용으로
쿼리의 조건문을 동적으로 생성할 일이 있다.
SELECTION SCREEN에서 LISTBOX 파라미터는 위와같이 선언한다.
*이후 코드에서 변수명 PA_CUS가 PA_CUSTP로 변경됨을 유의
Range Variable을 이용해서
아무것도 선택되지 않았을때 모든 검색을
선택된 내용에 대해선 조건 검색을 이뤄지게 할 수 있다.
Range Variable의 Internal Table에 어떠한 조건 내용도 없다면
모든 내용들을 검색해오기 때문에 이 상황에 적합하다.
Business 고객인지 Private 고객인지에 대한 선택이 존재할때 조건문을 통해
LISTBOX에서 선택된 내용에 대한 값은 LOW에 값이 들어가므로
LISTBOX 변수명-LOW로 선택된 값을 Range Variable에 이용할 수 있다.
SELECT 쿼리의 조건문에 RangeVairable을 사용해주면
LISTBOX에 선택된 값이 없다면 모든 내용 검색을
LISTBOX에 선택되 값이 있다면 해당 값으로 조건절을 걸 수 있다.