ABAP 테이블 APPEND STRUCTURE 방법

사용 중인 테이블에 추가로 필드를 덧붙이는 테이블 APPEND STRUCTURE 방법에 대해서 정리해 보았습니다.

일반 테이블에 필드를 추가하는 것과 달리 구조체(STRUCTURE)를 추가하는 방식으로, 이를 통해 기존 테이블의 구조를 확장할 수 있습니다.

SAP CBO 테이블 뿐만 아니라 스탠다드 테이블에도 추가가 가능하며, 일반적으로는 스탠다드 테이블에 많이 활용하는 편입니다.

APPEND STRUCTURE

APPEND STRUCTURE는 table enhancement 기능 중에 하나 입니다.

이 기능을 사용하려면 enhancement category가 can be enhanced로 되어 있어야 합니다.

관련글 : SAP 테이블 생성 방법(+유용한 옵션 설명)

다음과 같이 생성일, 생성 시간, 생성자를 관리하는 구조(strucure) 생성을 예시로 들어보겠습니다.

CDATE TYPE CDATE,      "생성일
CTIME TYPE CTME,        "생성시간
CNAME TYPE CREUSRNAME, "생성자

추가할 STRUCTURE 생성 방법

append structure 버튼을 눌러 신규 structure를 생성합니다.

APPEND STRUCTURE 생성 방법

생성일, 시간, 생성자 등을 관리하기 위해 다음과 같은 구조를 만들어 활성화 합니다.

추가할 필드 정의

그러나 추가한 CDATE, CTIME, CNAME 필드에 Warning이 발생합니다.

APPEND STRUCTURE Warning

APPEND STRUCTURE 경고 메시지

Warning 의 의미는 다음과 같습니다.

  • 일반적으로 append structure는 스탠다드를 enhance할 때 사용됩니다.
  • 만약에 CDATE 등의 ZZ, YY로 시작하지 않는다면, 향후 업그레이드시에 SAP에서 사용”될 수 있는” Naming rule입니다. 즉, SAP에서는 추가된 구조에 어떤 필드 네이밍으로 사용되고 있는지 모르니 주의하라는 메시지 입니다.
  • 우리가 추가한 필드명이 공교롭게도 SAP 업그레이드시에 동일한 이름의 필드가 추가된다면 오류가 발생하게 될 것입니다.
  • 그러므로 ZZ 혹은 YY로 시작하는 네이밍으로 필드를 추가합니다. 즉, ZZ, YY로 시작하지 않으면 모두 경고가 발생합니다.

ZZ 필드로 변경

append structure 사용시 주요 특징

append structure의 특징을 정리해 보도록 하겠습니다.

하나의 스트럭쳐는 하나의 테이블 혹은 스트럭쳐에만 append 할 수 있습니다. 즉, 1:1 관계만 형성됩니다.

APPEND STRUCTURE는 항상 새로운 구조를 만들어야 한다

따라서 동일한 structure를 여기저기서 component화하여 사용한다면 .include를 사용해야 합니다.

그러므로 다른 테이블에 동일한 구조를 append 한다 할지라도, 다른 Structure를 만들어 사용해야 합니다.

하나 이상의 structure를 append 할 수 있습니다. 예를 들면 zstruct1, zstruct2 처럼 한 개이상의 structure를 append 할 수 있습니다.

2개 이상의 STRUCTURE 추가가 가능

특히, 스탠다드의 경우 include를 사용할 수 없기 때문에 append structure를 통해 customerzing 해야 합니다.

하지만 ERP 업그레이드 시에 영향을 받지 않으므로 하위 버전 스탠다드 테이블을 append 하여 structure를 추가했어도 업그레이드 이후 유지 됩니다.

또, 만약에 table에 VARC, LCHR, LRAW같은 Long character 필드가 있다면 append structure 기능은 사용할 수 없습니다.

LONG CHARACTER 필드는 추가할 수 없음

또, APPEND STRUCTURE로 추가되는 필드는, 항상 테이블의 마지막에 위치(append)합니다.


이상으로 SAP ABAP 테이블 APPEND STRUCTURE 기능을 활용하여 테이블을 확장하는 방법에 대해서 알아보았습니다.

테이블 확장과 관련된 좀 더 자세한 사항은 아래의 SAP 공식 문서를 참고하시기 바랍니다.

관련 글 : Append Structures

함께 보면 좋은 글

SAP Debugger Work Area – New Tool 활용 커스터마이징

SAP Where used list 사용처 찾기

SAP ABAP 유지보수뷰 티코드 연결 방법