데이터 처리와 모델링

박재완·2025년 1월 25일

SAP ABAP (1 ~ 8일차)

목록 보기
2/8

1. Defining Elementary Data Objects

  • 기본 데이터 객체란?
    Elementary Data Objects는 ABAP에서 가장 기본적인 데이터 단위로, 특정 데이터 유형을 가지는 변수입니다.
  • 주요 개념
    • 데이터 타입:
      • Predefined Data Types: SAP에서 제공하는 데이터 타입 (e.g., CHAR, NUMC, INT4, DEC, FLOAT).
      • 사용자 정의 타입: TYPES 문을 사용해 정의.
    • 변수 선언:
      • DATA 키워드를 사용하여 변수 선언 (예: DATA lv_name TYPE CHAR10.).
    • 상수 정의:
      • CONSTANTS 키워드를 사용해 상수를 선언 (예: CONSTANTS lc_pi TYPE DECIMALS VALUE '3.14'.).
    • 리터럴 사용:
      • 숫자, 문자, 날짜, 시간 등을 하드코딩 값으로 사용 가능 (예: '2025-01-25').

2. Using Basic ABAP Statements

  • ABAP 기본 문장 개요
    ABAP에서 데이터 처리와 제어를 위한 필수적인 기본 문장들입니다.
    주요 ABAP 문장:
    1. 데이터 선언 및 초기화:
      • DATA 문으로 변수 선언 (예: DATA lv_num TYPE I.).
      • CLEAR 문으로 변수 초기화 (예: CLEAR lv_num.).
    2. 데이터 이동:
      • MOVE 또는 = 연산자를 사용해 변수 간 값 이동 (예: lv_num = 10.).
    3. 조건문:
      • IF, ELSEIF, ELSE, ENDIF를 사용 (예: IF lv_num > 10. WRITE: 'Greater than 10'. ENDIF.).
    4. 반복문:
      • DO ... ENDDO 또는 WHILE 문으로 반복 실행.
    5. 출력문:
      • WRITE 문으로 데이터 출력 (예: WRITE: / 'Hello ABAP'.).
    6. 데이터 변경:
      • APPEND, DELETE, MODIFY 문으로 데이터 처리.
  • 활용 예제:
    DATA lv_name TYPE CHAR20 VALUE 'John'.
    WRITE: / 'Hello', lv_name.

3. Explaining Data Models

  • 데이터 모델이란?
    데이터 모델은 시스템의 데이터 구조를 정의하고, 데이터를 효율적으로 저장 및 관리하기 위해 설계된 체계입니다.
    ABAP에서 데이터 모델은 주로 테이블, , 관계로 구성됩니다.

  • SAP 데이터 모델의 구성 요소

    1. 투명 테이블 (Transparent Tables):
      SAP 시스템의 물리적 테이블로, 데이터가 데이터베이스에 1:1로 저장됩니다.
      • 예: 고객 마스터 데이터(KNA1).
    2. 클러스터 테이블 (Cluster Tables):
      데이터가 압축되어 저장되는 논리적 테이블.
      • 여러 레코드가 하나의 테이블로 병합.
    3. 풋 테이블 (Pooled Tables):
      여러 테이블이 하나의 데이터베이스 테이블에 저장.
    4. 뷰 (Views):
      여러 테이블의 데이터를 연결하여 보여주는 논리적 표현 (예: Database Views, Projection Views).
  • 데이터 모델 설계 과정

    1. 요구 사항 분석: 데이터의 입력, 저장, 출력 조건 파악.
    2. ERD 작성: 엔터티-관계 모델을 통해 데이터 간의 관계 정의.
    3. 테이블 설계: 필요한 투명 테이블 및 뷰 정의.
    4. ABAP 딕셔너리 구현: 도메인, 데이터 요소, 테이블 정의.
  • 예제 시나리오: 고객 데이터 모델

    • 고객 정보를 저장하는 테이블 (KNA1).
    • 고객 주문 정보를 저장하는 테이블 (VBAK, VBAP).
    • 두 테이블 간의 관계를 정의하여 데이터 조회 가능.

예제: 데이터 모델링과 기본 데이터 처리 통합

DATA: lv_customer_name TYPE CHAR50,
      lv_customer_id   TYPE NUMC10.

" 고객 이름과 ID 초기화
lv_customer_name = 'Alice'.
lv_customer_id = '12345'.

" 고객 정보 출력
WRITE: / 'Customer Name:', lv_customer_name,
       / 'Customer ID:', lv_customer_id.
profile
안녕하세요!

0개의 댓글