CORRESPONDING 복사 실수 3가지 — 큰일 납니다 #shorts #SAP #ABAP
왜 같은 이름의 필드인데도 값이 비어 있을까 ABAP 개발자라면 한 번쯤은 겪었을 상황이다. CORRESPONDING 한 줄로 깔끔하게 구조체를 복사했는데, 디버거를 열어보니 분명히 양쪽에 있는 필드 하나가 비어 있다. 컴파일 에러도 없고, 런타임 덤프도 없다. 그저 조용히 잘못된 값이
왜 같은 이름의 필드인데도 값이 비어 있을까 ABAP 개발자라면 한 번쯤은 겪었을 상황이다. CORRESPONDING 한 줄로 깔끔하게 구조체를 복사했는데, 디버거를 열어보니 분명히 양쪽에 있는 필드 하나가 비어 있다. 컴파일 에러도 없고, 런타임 덤프도 없다. 그저 조용히 잘못된 값이
개요 및 이 글에서 다룰 범위 SAP S/4HANA로 전환된 환경에서 재무 전표(FI Document) 라인 아이템을 조회할 때, 과거처럼 BSEG 클러스터 테이블을 직접 SELECT 하는 방식은 더 이상 권장되지 않습니다. 대신 SAP는 I_JournalEntryItem 이라는 표준
개요 및 이 글에서 다룰 내용 ABAP에서 조건 분기를 표현할 때 가장 익숙한 도구는 IF ... ELSEIF ... ENDIF 입니다. 그러나 단순히 변수 하나에 값을 채우기 위해 5~6줄의 IF 블록을 반복해서 작성하다 보면 코드는 빠르게 비대해지고, 한눈에 의도를 파악하기 어려워집
개요 및 이 글에서 얻을 것 ABAP 7.40 이후 도입된 표현식 지향 프로그래밍(expression-oriented programming) 은 코드를 간결하게 만들었지만, 한 줄에 여러 계산을 욱여넣다 보면 오히려 가독성이 떨어지는 역설이 생깁니다. VALUE , REDUCE , FI
개요와 이 글에서 다루는 범위 SAP S/4HANA 환경에서 회계 전표 헤더 정보를 조회할 때 과거에는 BKPF 테이블을 직접 SELECT 하는 방식이 일반적이었습니다. 그러나 가상 데이터 모델(VDM)이 도입된 이후로는 I_JournalEntry CDS View가 표준 접근 경로로 자
개요 및 이번 예제에서 다룰 내용 ABAP 7.40 SP08부터 도입된 FOR ... GROUPS BY 표현은 내부 테이블을 키 기반으로 그룹화하고 각 그룹별로 집계·요약 데이터를 한 번의 표현으로 생성할 수 있게 해주는 강력한 구문입니다. 기존에는 COLLECT , LOOP AT ..
개요 및 학습 포인트 ABAP 7.52부터 정식 지원되는 FOR ... THEN ... UNTIL 표현식은 단순한 반복 카운터를 넘어, 수학적 수열(arithmetic/geometric sequence)을 한 줄의 인라인 표현식으로 만들어내는 강력한 기능입니다. 전통적인 DO ... E
개요 및 도입 ABAP에서 연속된 숫자 시퀀스나 날짜 범위를 내부 테이블로 만들어야 하는 상황은 의외로 자주 발생합니다. 월별 매출 집계 슬롯, 회계연도 12개 기간, 발주일로부터 D+30까지의 일자 배열, 페이지네이션 인덱스 등이 대표적입니다. 전통적으로 DO ... ENDDO 루프로
개요와 이번 글에서 다루는 범위 SAP S/4HANA의 배송(Delivery) 영역은 SD(Sales & Distribution)와 MM(Materials Management)의 교차점에 위치하며, 주문에서 출고까지의 흐름을 추적하는 핵심 트랜잭션 데이터입니다. 전통적으로 LIK
개요와 이번 글에서 다루는 범위 SAP S/4HANA의 배송(Delivery) 영역은 SD(Sales & Distribution)와 MM(Materials Management)의 교차점에 위치하며, 주문에서 출고까지의 흐름을 추적하는 핵심 트랜잭션 데이터입니다. 전통적으로 LIK
이 글에서 다루는 내용과 체크포인트 RAP(ABAP RESTful Application Programming Model)에서 Dynamic Feature Control은 인스턴스별로 필드의 readonly/mandatory 여부나 액션의 활성화 여부를 런타임에 결정하는 강력한 메커니즘입
이 글에서 다루는 내용과 도달 지점 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
1. BOPF 라이프사이클 구조 — 과거의 표준 S/4HANA 초기와 ECC 기반 Fiori 1.0 시대를 거쳐온 개발자라면 BOPF(Business Object Processing Framework)는 익숙한 이름일 것입니다. BOPF는 비즈니스 오브젝트의 트랜잭션 처리를 일관된 방식
개요 및 학습 흐름 SAP RAP(RESTful ABAP Programming Model)에서 비즈니스 키(primary key)를 어느 시점에 확정할 것인가는 트랜잭션 설계의 근본 결정 사항입니다. RAP는 이를 위해 Early Numbering과 Late Numbering이라는 두
개요 및 핵심 포인트 이 글은 SAP S/4HANA의 표준 CDS View인 I_SupplierInvoice 를 RBKP 테이블 구조와 FI(Financial Accounting) 연계 관점에서 다룹니다. MM-IV(Invoice Verification) 프로세스에서 생성된 공급업체 인
placeholder
개요와 이 글에서 얻어갈 것 ABAP RESTful Application Programming Model(RAP)을 처음 다루는 개발자가 가장 자주 묻는 질문 중 하나는 "내 코드 어디에도 COMMIT WORK 가 없는데 왜 DB에 데이터가 저장되어 있는가?"이다. 전통적인 ABAP 개
개요 및 학습 체크리스트 ABAP 7.40 이후 도입된 VALUE 연산자는 내부 테이블이나 구조체를 선언과 동시에 채워 넣을 수 있게 해주는 인라인 생성 표현식입니다. 기존에는 빈 테이블을 만든 뒤 APPEND 문장을 여러 번 반복해야 했지만, 이제는 한 줄의 표현식으로 동일한 작업을