안녕하세요~
공부를 하다가 몇번 걸리적 거리긴 했지만 그러려니 넘어가다가
계속 찝찝해서 기본적인것이지만 확실하게 알고 넘어가고자 이렇게 문의드립니다
예제에서는 Structure에서 선언하고 이용하는 문장이 나와있는데요
TYPES structure_type TYPE struct.
DATA wa TYPE struct_type.
에서요 꼭 이중으로 TYPE을 만들고 DATA로 선언해야 하나요??
그러니깐 바로 DATA wa TYPE struct.
요렇게 하면 쓸수가 없는것인가요?? ^^;;;
이것과 관련된 내용중에
스트럭쳐는 ABAP상에서 복잡한 구조체 TYPE이 존재하지 않는다고 하여서 TYPES구문이나 Table Dictionary를
생성해야 한다고 하는데요
꼭 structure는 저렇게 해야하는 룰이 있다는거겠죠??
그렇다면 Transparent table역시 스트럭쳐와 같은 룰을 쓰는걸까요??
제생각에는 Transparent table은 바로 갖다가 쓸수 있을것 같은데;;
아직 확실하게 체계가 안잡혀서요;; 죄송합니다;;
그럼 수고해 주세요~^^;
감사합니다~
공부를 하다가 몇번 걸리적 거리긴 했지만 그러려니 넘어가다가
계속 찝찝해서 기본적인것이지만 확실하게 알고 넘어가고자 이렇게 문의드립니다
예제에서는 Structure에서 선언하고 이용하는 문장이 나와있는데요
TYPES structure_type TYPE struct.
DATA wa TYPE struct_type.
에서요 꼭 이중으로 TYPE을 만들고 DATA로 선언해야 하나요??
그러니깐 바로 DATA wa TYPE struct.
요렇게 하면 쓸수가 없는것인가요?? ^^;;;
이것과 관련된 내용중에
스트럭쳐는 ABAP상에서 복잡한 구조체 TYPE이 존재하지 않는다고 하여서 TYPES구문이나 Table Dictionary를
생성해야 한다고 하는데요
꼭 structure는 저렇게 해야하는 룰이 있다는거겠죠??
그렇다면 Transparent table역시 스트럭쳐와 같은 룰을 쓰는걸까요??
제생각에는 Transparent table은 바로 갖다가 쓸수 있을것 같은데;;
아직 확실하게 체계가 안잡혀서요;; 죄송합니다;;
그럼 수고해 주세요~^^;
감사합니다~
이해하고 계신 개념이 100% 맞습니다.
굳이 스트럭쳐 타입을 생성하여 데이터를 선언하는 것은, 동일한 구조를 프로그램 내에서 여러번 사용하는 경우가 자주 발생하기때문입니다.
또한 테이블도 type 과 같은 방식으로 사용할수 있습니다. 그러나 프로그램내에서 필요한것은 여러 테이블에서 가져오는 경우가 많기때문에 구조체를 생성하게 되는거죠. 이 구조체는 SE11에서 생성하게 됩니다. 이렇게 생성된 ABAP Dictionary 구조체(struct)는 열프로그램에서 사용할수 있겠죠.
정리하자면.
1. 프로그램내에서 구조체 타입을 생성하는 경우는 프로그램 내에서만 사용이 가능하며, 동일한 구조를 여러번 사용할 수 있기때문에 선언하여 사용한다.
2. SE11에서 생성한 STRUCTR는 모든 프로그램에서 사용하며, 여러 프로그램에서 자주 사용되게 되는 구조를 선언하여 사용하게 된다.
예를들어 인사정보는 여러 테이블에 데이터가 저장되지만 프로그램에서 필요한 구조는 하나 라고 하면 구조체를 생성하여 사용한다.
지금 이해하신정도로 개념을 잡고 계속 실습하다 보면 확실히 개념이 잡힐겁니다... 열심이네요.