CLEAR는 변수의 내용을 초기화하는 명령어입니다. 변수 타입에 따라 다음과 같이 초기화됩니다:
사용 예시:
DATA: lv_number TYPE i VALUE 10,
lv_string TYPE string VALUE 'Hello',
lt_table TYPE TABLE OF scarr.
* 변수 초기화
CLEAR lv_number. "lv_number는 이제 0
CLEAR lv_string. "lv_string은 이제 ''(빈 문자열)
* 특정 필드만 초기화
CLEAR: lv_number, lv_string.
* 내부 테이블의 모든 레코드 삭제 (테이블은 유지)
CLEAR lt_table.
REFRESH는 내부 테이블의 모든 레코드를 삭제하는 명령어입니다. CLEAR와 유사하지만 오직 내부 테이블에만 사용할 수 있습니다.
사용 예시:
DATA: lt_flights TYPE TABLE OF sflight,
lt_carriers TYPE TABLE OF scarr.
* 테이블 데이터 초기화
REFRESH lt_flights.
REFRESH lt_carriers.
* 또는 더 현대적인 방식:
CLEAR lt_flights.
| 특성 | CLEAR | REFRESH |
|---|---|---|
| 사용 범위 | 모든 데이터 타입(변수, 구조체, 테이블 등) | 내부 테이블만 |
| 효과 | 초기값으로 설정 | 테이블의 모든 레코드 삭제 |