콘텐츠로 이동

SET_MODEL_SORTER

목적

Sort 기능이 없는 UI에서도 바인딩된 데이터를 정렬하고 그룹화하기 위한 메서드입니다.


주요 단계

1. "SET_MODEL_SORTER" Method를 UI의 특정 이벤트에 추가

  • BUTTON 클릭 이벤트에 SET_MODEL_SORTER Method를 연결합니다.

버튼 이벤트에 Method 추가

<사진 1> UI의 버튼 이벤트에 Method를 추가하는 과정 화면


2. "SET_MODEL_SORTER" Method 실행

  • Sort 기능이 없는 UI에서도 정렬이 가능합니다.

ABAP Source Code 예시

METHOD EV_MODEL_SORT.

  DATA: LS_SORTER TYPE /U4A/S0083.
  DATA: LT_SORTER TYPE /U4A/Y0083.
*---------------------------------------------------------------

  " APPEND LT_SORTER DATA.
  LS_SORTER-FIELD_NAME    = 'VALUE'.
  LS_SORTER-IS_DESCENDING = 'X'.
  LS_SORTER-ISNUM         = 'X'.

  APPEND LS_SORTER TO LT_SORTER.
  CLEAR LS_SORTER.

  "MODEL_SORTER
  CALL METHOD /U4A/CL_UTILITIES=>SET_MODEL_SORTER
    EXPORTING
      IO_VIEW       = ME->/U4A/IF_SERVER~AR_VIEW
      I_UIID        = 'TABLE1'   " UI ID
      I_AGGR_NAME   = 'items'    " Aggregation Name (소문자 필수)
      IT_SORTER     = LT_SORTER  " [U4A] Sorter Info Table type
      I_GROUP_FIELD = 'VALUE'.   " Group Field Name

ENDMETHOD.

"SET_MODEL_SORTER" 파라미터 정의

Name Description
I_UIID 데이터가 바인딩된 UI의 INSTANCE ID 이름
I_AGGR_NAME UI 데이터 바인딩 Aggregation 이름 (소문자 필수)
IT_SORTER 정렬 기준 테이블
I_GROUP_FIELD 그룹화 기준이 되는 FIELD 이름

IT_SORTER 테이블 필드 상세 설명

Name Description
FIELD_NAME 정렬 기준이 되는 FIELD 명
IS_DESCENDING 정렬 방식 (X: 내림차순, ' ': 오름차순)
ISNUM 숫자 타입 여부 (X: 숫자, ' ': 문자)

3. 애플리케이션 실행 및 버튼 클릭

  • SET_MODEL_SORTER Method 동작을 확인합니다.

Method 실행 화면

<사진 2> 버튼 클릭시 Method 실행 화면


4. 결과 확인

  • Table 결과가 Value 값으로 내림차순 정렬되고,
  • 같은 Value 값은 그룹화됩니다.

정렬 및 그룹화 결과

<사진 3> Method 동작 결과로 정렬 및 그룹화된 화면