본문 바로가기
SAP/ABAP

필드심볼(ASSIGNING FIELD-SYMBOL)과 구조체(INTO) 차이점

by 꿈청(꿈꾸는청년) 2021. 3. 28.
반응형

필드심볼(ASSIGNING FIELD-SYMBOL)과 구조체(INTO) 차이점

 

 

두 개는 비슷하지만 다른 점을 찾아볼 건데요.

 

일반적으로는 LOOP를 돌릴 때  한 라인을 담는 '접시'의 역할로 많이 사용하는데요

 

예시를 보면서 두 개의 차이점을 설명하겠습니다.

 

TOP (Global Variable)

 

 

 

1. 필드심볼 활용

LOOP AT ASSIGNNING FIELD-SYMBOL

출력화면

 

 

2. 구조체 활용

LOOP AT INTO

출력화면

 

 

차이점을 아시겠나요?

 

ASSIGNING FIELD-SYMBOL 필드심볼을 활용하면 KOREA_DATE 데이터가 있고 

 

INTO 구조체를 사용했을 경우 KOREA_DATE가 없는 것을 볼 수 있습니다. 

 

왜 그럴까요?

 

ASSIGNING FIELD-SYMBOL 필드심볼은 기본적으로 '주소값'을 가리킵니다. 즉,

 

필드심볼을 사용하게 되면 GT_LIST 인터널테이블이 있는 주소를 직접 할당하기 때문에 데이터가 변경된 것입니다.

 

하지만 구조체의 경우는 GS_LIST <--> GT_LIST 주소랑은 아무런 상관관계가 없기 때문에 GS_LIST가 변경되었다 해도

 

GT_LIST에 아무런 영향을 끼치지 않는거죠

 

그렇다면 INTO 구조체를 사용하였을 경우 어떻게 변경해줄 수 있을까요?

 

MODIFY ITAB FROM WA

 

출력화면

 

변경된 것을 확인할 수 있습니다.

 

이제 차이점을 조금 아시겠나요? ^^

 

더 궁금하신 점이 있으시면 댓글 달아주세요

반응형

댓글