?= 다운캐스트 금지 — CAST 쓰는 이유 #shorts #SAP #ABAP
개요 및 이 글에서 다루는 것 ABAP 객체지향에서 상위 클래스 참조를 하위 클래스 참조로 변환하는 다운캐스팅(Downcast)은 다형성을 활용하는 코드에서 반드시 마주치는 작업입니다. 전통적으로 사용해 온 MOVE ?= 또는 ?= 연산자는 한 줄에 변수 선언을 함께 쓰기 어렵고, 예외
개요 및 이 글에서 다루는 것 ABAP 객체지향에서 상위 클래스 참조를 하위 클래스 참조로 변환하는 다운캐스팅(Downcast)은 다형성을 활용하는 코드에서 반드시 마주치는 작업입니다. 전통적으로 사용해 온 MOVE ?= 또는 ?= 연산자는 한 줄에 변수 선언을 함께 쓰기 어렵고, 예외
개요 및 이 글에서 다룰 내용 S/4HANA 재무 모듈에서 총계정원장(General Ledger) 계정 마스터를 다룰 때 가장 먼저 마주치는 CDS 뷰가 바로 I_GLAccount 입니다. 전통 ABAP에서는 SKA1 (Chart of Accounts 레벨 계정 마스터) 테이블을 직접
이 글에서 다루는 내용 ABAP에서 REF TO 참조 변수는 데이터 객체나 인스턴스를 직접 가리키는 포인터 역할을 합니다. 값 복사가 아닌 참조 전달을 통해 메모리 효율성과 다형성을 동시에 확보할 수 있어, 대용량 내부 테이블 처리·동적 디스패치·Factory 패턴 등 실무 곳곳에서 핵
개요 및 이 글에서 다루는 범위 SAP S/4HANA의 재무회계(FI) 모듈은 전통적으로 BKPF (전표 헤더)와 BSEG (전표 라인)이라는 두 클러스터 테이블에 데이터를 보관해 왔습니다. 그러나 S/4HANA로 전환되면서 SAP는 I_AccountingDocument 를 비롯한 표준
왜 같은 이름의 필드인데도 값이 비어 있을까 ABAP 개발자라면 한 번쯤은 겪었을 상황이다. CORRESPONDING 한 줄로 깔끔하게 구조체를 복사했는데, 디버거를 열어보니 분명히 양쪽에 있는 필드 하나가 비어 있다. 컴파일 에러도 없고, 런타임 덤프도 없다. 그저 조용히 잘못된 값이
개요 및 이 글에서 다룰 범위 SAP S/4HANA로 전환된 환경에서 재무 전표(FI Document) 라인 아이템을 조회할 때, 과거처럼 BSEG 클러스터 테이블을 직접 SELECT 하는 방식은 더 이상 권장되지 않습니다. 대신 SAP는 I_JournalEntryItem 이라는 표준
개요 및 이 글에서 얻을 것 ABAP 7.40 이후 도입된 표현식 지향 프로그래밍(expression-oriented programming) 은 코드를 간결하게 만들었지만, 한 줄에 여러 계산을 욱여넣다 보면 오히려 가독성이 떨어지는 역설이 생깁니다. VALUE , REDUCE , FI
개요와 이 글에서 다루는 범위 SAP S/4HANA 환경에서 회계 전표 헤더 정보를 조회할 때 과거에는 BKPF 테이블을 직접 SELECT 하는 방식이 일반적이었습니다. 그러나 가상 데이터 모델(VDM)이 도입된 이후로는 I_JournalEntry CDS View가 표준 접근 경로로 자
개요와 이 글에서 다루는 범위 판매 계약(Sales Contract)은 고객과 일정 기간 동안 정해진 조건으로 거래하기로 약속한 'Outline Agreement'의 한 종류입니다. S/4HANA에서는 전통적인 VBAK/VBAP 테이블 위에 Virtual Data Model(VDM) 계
개요 및 이 글에서 다루는 내용 SAP RAP(ABAP RESTful Application Programming Model)에서 Behavior Definition(BDEF)을 작성할 때 가장 먼저 마주치는 갈림길이 바로 managed 와 unmanaged 시나리오의 선택입니다. 잘못
개요 및 핵심 포인트 SAP RAP(RESTful ABAP Programming Model)에서 CDS 뷰는 단순히 "데이터를 보여주는 SQL 래퍼"가 아닙니다. RAP의 계층 아키텍처에서 Interface View와 Projection View는 명확히 분리된 역할을 가지며, 이 분리
1. SAP OData 서비스 개발의 역사와 패러다임 전환 SAP의 ABAP 기반 서비스 개발은 지난 15년간 큰 변화를 겪었습니다. 초기 SAP NetWeaver Gateway가 등장하면서 SAP는 SOAP 기반 RFC/BAPI 호출에서 벗어나 OData(REST 기반) 프로토콜을 표
개요 I_BillingDocument는 SAP S/4HANA의 표준 인터페이스 뷰(Interface View)로, 전통적인 SD 모듈의 청구 문서 헤더 테이블 VBRK를 가상 데이터 모델(VDM, Virtual Data Model)로 추상화한 핵심 CDS 뷰입니다. 이 글에서는 VBRK
개요와 이 글에서 다룰 내용 RAP(ABAP RESTful Application Programming Model)에서 데이터를 읽는 작업은 단순해 보이지만, 실제 트랜잭션 처리에서는 두 가지 전혀 다른 의미를 갖습니다. 단순 조회용 READ ENTITIES 와 수정을 전제로 한 READ
개요와 이번 글에서 다루는 범위 SAP S/4HANA의 배송(Delivery) 영역은 SD(Sales & Distribution)와 MM(Materials Management)의 교차점에 위치하며, 주문에서 출고까지의 흐름을 추적하는 핵심 트랜잭션 데이터입니다. 전통적으로 LIK
개요와 이번 글에서 다루는 범위 SAP S/4HANA의 배송(Delivery) 영역은 SD(Sales & Distribution)와 MM(Materials Management)의 교차점에 위치하며, 주문에서 출고까지의 흐름을 추적하는 핵심 트랜잭션 데이터입니다. 전통적으로 LIK
개요 및 이 글에서 다루는 것 SAP RAP(ABAP RESTful Application Programming Model)을 처음 시작하면 "도대체 어디부터 손을 대야 하지?"라는 질문이 가장 먼저 떠오릅니다. CDS View, Behavior Definition(BDEF), Behav
이 글에서 다루는 내용과 도달 지점 BOPF(Business Object Processing Framework)를 수년간 다뤄온 개발자가 RAP(ABAP RESTful Application Programming Model)로 넘어올 때 가장 먼저 부딪히는 벽은 라이프사이클의 재구성 입니
개요 및 이 글에서 다룰 내용 S/4HANA 환경에서 판매 오더 아이템 데이터를 다루는 일은 매우 빈번합니다. 전통적으로는 VBAP 테이블을 직접 SELECT 했지만, S/4HANA에서는 가상 데이터 모델(VDM)인 I_SalesOrderItem CDS 뷰를 통해 동일한 데이터에 의미론
1. 이 글에서 다루는 범위와 도달 지점 S/4HANA 환경에서 판매 오더 아이템 정보를 조회할 때, 더 이상 VBAP 테이블을 직접 SELECT하는 것은 권장되지 않습니다. 대신 SAP가 제공하는 가상 데이터 모델(Virtual Data Model, VDM) 계층의 I_SalesOrd