값을 메서드나 함수로 전달할 때 사용된다. 즉, 호출하는 쪽에서 값을 제공하고, 그 값을 함수나 메서드로 보내는 역할을 한다.
메서드나 함수가 처리한 결과 값을 호출하는 쪽으로 다시 전달할 때 사용된다. 즉, 메서드나 함수가 값을 계산하거나 처리한 후 반환하는 역할을 한다.
여기서는 데이터를 호출자가 함수나 메서드로 보낸다. 함수는 그 값을 내부에서 사용하지만 결과를 반환하지는 않는다.
CALL FUNCTION 'DISPLAY_MESSAGE'
EXPORTING
message_text = '안녕하세요!'. " 메시지를 함수로 보낸다
여기서 message_text는 '안녕하세요!'라는 값을 담고 있고, 이 값이 함수로 전달된다.
함수는 이 값을 받아서 메시지를 출력하는 역할을 한다. 값을 보내기만 하고, 결과는 반환되지 않는다
여기서는 함수가 호출자에게 값을 반환한다. 즉, 호출자는 값을 보내지 않고, 함수가 계산한 결과만 받는다.
CALL FUNCTION 'GET_TOTAL_AMOUNT'
IMPORTING
total_amount = result_variable. " 함수가 계산한 값을 받아 저장
total_amount는 함수에서 반환한 값으로, 함수가 계산한 결과가 result_variable에 저장된다.
호출자는 값을 보내지 않고, 함수가 제공하는 결과만 받는다.
이 상황에서는 데이터를 함수로 보내고 그 데이터를 사용해 계산된 결과를 다시 반환받는다. 즉, 양방향으로 데이터가 흐른다.
CALL FUNCTION 'CALCULATE_TOTAL'
EXPORTING
price = 100 " 가격을 함수로 보냄
IMPORTING
total = total_price. " 총 가격을 받아옴
price는 호출자가 함수로 보내는 값이다. 예를 들어, 100이라는 값을 함수로 보내는 것이다.
total은 함수가 처리한 후 반환하는 값이다. 예를 들어, 세금이 추가된 총 가격을 계산하여 total_price에 저장한다.
여기서 데이터가 양방향으로 흐른다: 호출자가 100을 보내고, 함수는 이를 바탕으로 총 가격을 반환한다.
CREATE OBJECT g_container
EXPORTING
container_name = g_cont_name.
여기서 g_cont_name은 값을 함수로 전달하는 변수이다. 컨테이너의 이름을 설정하기 위해 g_cont_name 값을 컨테이너 객체로 보낸다.
CREATE OBJECT는 객체를 생성하는 명령이다. 여기서는 g_container라는 컨테이너 객체를 생성하고 있다.
EXPORTING: g_cont_name이라는 값을 컨테이너 객체로 전달한다. 즉, 컨테이너의 이름을 설정하기 위해 g_cont_name 값을 보내는 것이다.
g_cont_name은 값을 전달하는 변수이다. 이 값이 컨테이너 객체로 전달되어 컨테이너의 이름으로 설정된다.
CREATE OBJECT는 새로운 컨테이너 객체를 생성하고, 그 객체에 전달된 값을 이용해 설정을 한다.
EXPORTING: 값을 함수나 메서드로 전달한다. (예: 내가 값을 주는 역할)
IMPORTING: 함수나 메서드에서 처리한 결과를 반환받는다. (예: 내가 결과를 받는 역할)
EXPORTING과 IMPORTING을 동시에 사용: 값을 함수로 보내고, 함수가 처리한 결과를 다시 반환받는다. (예: 값을 주고, 결과를 받는 양방향 흐름)
그리고 CREATE OBJECT 코드에서 g_cont_name은 값을 객체에 전달하는 변수. 이 값은 컨테이너의 이름으로 사용됨.