SAP HANA CLOUD

[SAP RAP] 클래스의 역할 및 구조

선짱 2025. 12. 16. 11:29
반응형

 

ZBP 클래스 vs. ZCL 클래스 비교

ZBP ZCL호출하여 사용하는 Helper/Utility 관계가 일반적

 

ZBP 클래스 (Behavior Pool Class)

Business Object의 행동을 구현하는 것이 유일한 목적.

기능 : EML (Entity Manipulation Language), Validation, Determination, Feature Control, Authorization.

반드시 cl_abap_behavior_handler 상속받아야함

 

ZCL 클래스 비교 (일반 ABAP 클래스)

모든 ABAP 기능(DML, 외부 호출, 복잡한 계산 로직 등)을 자유롭게 구현.

 


 

 

1.    PUBLIC SECTION. (공개 인터페이스)

클래스 외부, 클래스 내부, 상속 클래스 모두 접근 가능.

-      TYPES:

외부 프로그램이 데이터를 주고받을 때 어떤 형식으로 보내야 하는지 알려주기 위함

-      CLASS-METHODS:

싱글톤(Singleton) 패턴으로 설계함.

싱글톤은 시스템 내에 클래스 인스턴스를 오직 하나만 존재하도록 보장하는 패턴.

-      METHODS:

클래스를 만드는 목적 자체가 외부 프로그램이 특정 기능을 사용할 수 있도록 하는 것

API 클래스의 경우, PUBLIC SECTION사용 설명서이자 호출 창구 역할

 

 

1.    PROTECTED SECTION. (상속 관련 구현)

클래스를 상속받는 서브 클래스와의 관계를 위해 사용됩니다. RAP의 경우, Behavior Handler Class (cl_abap_behavior_handler 상속)에서 자주 사용됩니다.

 

2.    PRIVATE SECTION. (내부 구현)

클래스 외부에서는 절대 접근할 수 없습니다.

외부에 노출되거나 변경되어서는 안 되는 클래스의 내부 상태(Internal State)를 저장하는 속성을 정의합니다. (: 내부 저장 테이블)

 

 

 

 


 

 

LHC 클래스 Local Handler Class
Behavior Handler / 생성 로직 실행 및 MODIFY ENTITIES 호출

예를들어..
DETERMINATION (자동 값 계산)
VALIDATION (데이터 검증)
ACTION (버튼 클릭 로직)


LSC 클래스 Local Saver Class 
최종 DB 업데이트
커스텀 테이블에 최종 MODIFY/INSERT 실행

예를들어..
Late Numbering

 

 

 

 

 

반응형