CS Student’s SAP&Tech Journey✨

[SAP] 로컬타입(LOCAL TYPES)과 글로벌타입(GLOBAL TYPES) 본문

SAP/데이터 타입 Data Type

[SAP] 로컬타입(LOCAL TYPES)과 글로벌타입(GLOBAL TYPES)

인포마틱 2025. 1. 30. 21:18

ABAP에서는 LOCAL TYPES(로컬 타입)GLOBAL TYPES(글로벌 타입)을 사용하여 데이터 타입을 정의할 수 있습니다. 두 개념의 차이를 이해하면 보다 효율적인 프로그램을 작성할 수 있습니다.

 

 


 

1. LOCAL TYPES(로컬 타입)란?

로컬 타입은 특정 프로그램 내부에서만 사용 가능한 데이터 타입입니다.
TYPES 키워드를 사용하여 정의합니다.

TYPES: ty_amount TYPE P DECIMALS 2,
       ty_name   TYPE C LENGTH 20.
  • 개별 프로그램 내부에서만 사용 가능
  • 기술적 정보만 포함 (데이터 형식, 길이 등)
  • 다른 프로그램에서는 사용 불가
  • 선언된 프로그램을 벗어나면 인식되지 않음

 

예제

TYPES: ty_counter TYPE I.
DATA gv_count TYPE ty_counter.
gv_count = 10.
WRITE: 'Counter Value:', gv_count.

 

 

2. GLOBAL TYPES(글로벌 타입)란?

글로벌 타입은 ABAP Dictionary(SE11)에서 정의된 데이터 타입으로, 모든 프로그램에서 사용할 수 있습니다.
ABAP Dictionary(SE11)에서 정의됩니다.

DATA gv_airline TYPE s_carr_id.
  • 기술적 정보 + 의미적 정보 포함 (데이터 형식, 길이, 의미 등)
  • 여러 프로그램에서 공통으로 사용 가능
  • F4 HELP와 같은 기능 제공 가능
DATA gv_airline TYPE s_carr_id.
WRITE: 'Airline Code:', gv_airline.

 

📌  ABAP Dictionary 데이터 타입

ABAP Dictionary(DDIC)에서 사용되는 데이터 타입은 데이터 관리 및 프로그래밍에서 핵심적인 역할을 합니다.

  • Data Element:
    • 필드의 데이터 타입, 길이, 도메인 등을 정의.
    • 직원 이름(EMP_NAME)을 정의하려면 데이터 엘리먼트(ZEMP_NAME)를 생성
  • Structure:
    • 여러 데이터 엘리먼트를 모아 하나의 레코드 구조를 정의.
    • 직원 정보(EMPLOYEE)의 구조를 정의하려면 구조체(ZEMPLOYEE)를 생성
  • Table Type:
    • 구조체를 기반으로 테이블(반복 데이터)의 형식을 정의.
    • 다수의 직원 정보를 처리하려면 테이블 타입(ZEMPLOYEE_TT)을 생성

 

 

3. LOCAL TYPES vs. GLOBAL TYPES 차이점 정리

타입 LOCAL TYPES GLOBAL TYPES
선언 위치 프로그램 내부 (TYPES) ABAP Dictionary (SE11)
사용 범위 선언된 프로그램 내부에서만 사용 모든 프로그램에서 사용 가능
포함 정보 기술적 정보만 포함 기술적 정보 + 의미적 정보 포함
F4 HELP 제공 불가능 가능