SAP 개념 정리 2. 제어문과 반복문

Ada·2024년 9월 12일

SAP ABAP

목록 보기
9/21

1. 제어문

1.1 IF 조건문

ABAP에서 조건을 평가할 때 IF 문을 사용하며, 자바와 유사하게 ELSEIF, ELSE를 사용할 수 있다. 다만, ENDIF로 블록을 종료해야 한다.

사용 상황: 특정 조건에 따라 다른 로직을 실행하고자 할 때 사용된다. 예를 들어, 데이터베이스에서 조회한 결과에 따라 다른 처리를 할 때 유용한다.

IF lv_value > 100.
  WRITE: '값이 100보다 큽니다.'.
ELSEIF lv_value = 100.
  WRITE: '값이 정확히 100입니다.'.
ELSE.
  WRITE: '값이 100보다 작습니다.'.
ENDIF.

1.2 CASE 문

CASE 문은 하나의 변수를 여러 값과 비교할 때 사용된다. 자바의 switch와 동일한 역할을 한다.

사용 상황: 단일 조건이 여러 값 중 하나에 해당할 때 다양한 처리를 하기 위해 사용된다. 특히 코드의 가독성을 높이는 데 유리하다.

CASE lv_status.
  WHEN 'A'.
    WRITE: '상태 A입니다.'.
  WHEN 'B'.
    WRITE: '상태 B입니다.'.
  WHEN OTHERS.
    WRITE: '알 수 없는 상태입니다.'.
ENDCASE.

2. 반복문

2.1 LOOP AT

LOOP AT은 내부 테이블을 순회하는 데 사용된다. 자바의 for-each와 유사하게, 내부 테이블의 각 행을 가져와 처리할 수 있다.

사용 상황: 데이터베이스에서 조회한 결과나, 여러 행의 데이터를 순차적으로 처리할 때 사용된다.

LOOP AT lt_table INTO ls_line.
  WRITE: / ls_line.
ENDLOOP.

2.2 DO 반복문

DO는 고정된 횟수만큼 반복할 때 사용된다. 자바의 for 문과 유사하지만, 종료 조건 없이 횟수만 지정하는 방식이다.

사용 상황: 일정 횟수만큼 반복하여 작업을 수행해야 할 때 유용하다. 예를 들어, 10번의 시도 내에서 작업을 완료하려는 상황에서 사용될 수 있다.

DO 10 TIMES.
  WRITE: / '반복 횟수:', sy-index.
ENDDO.
profile
백엔드 프로그래머

0개의 댓글