PLAF 없이 계획 오더 조회 3가지 — I_PlannedOrder #shorts #SAP #ABAP
개요 및 핵심 포인트 SAP S/4HANA 환경에서 MRP(Material Requirements Planning) 실행 결과로 생성된 계획 오더(Planned Order)는 PLAF 테이블에 저장됩니다. 과거에는 PLAF 테이블을 직접 SELECT 하거나 BAPI_PLANNEDORDE
개요 및 핵심 포인트 SAP S/4HANA 환경에서 MRP(Material Requirements Planning) 실행 결과로 생성된 계획 오더(Planned Order)는 PLAF 테이블에 저장됩니다. 과거에는 PLAF 테이블을 직접 SELECT 하거나 BAPI_PLANNEDORDE
이 글에서 다루는 내용과 도달 지점 복잡한 분석 쿼리를 작성하다 보면 SELECT 절 안에 또 다른 SELECT가 중첩되고, 동일한 서브쿼리가 두세 번 반복되며, FROM 절에 인라인 뷰가 잔뜩 들어가는 상황을 자주 만나게 됩니다. ABAP 7.50부터 도입된 Open SQL의 WITH
이 글에서 다룰 것 SAP ERP/S/4HANA 환경에서 이익 센터(Profit Center) 데이터를 조회할 때 많은 개발자가 여전히 CEPC 테이블과 CEPCT 텍스트 테이블을 직접 JOIN해 사용합니다. 이 방식은 동작은 하지만 시간 종속(time-dependent) 처리, 다국어
이 글에서 다루는 내용 ABAP 7.40 SP05부터 도입된 @DATA(...) 인라인 선언은 Open SQL의 SELECT 결과를 받기 위해 미리 작업 영역(work area)이나 내부 테이블(internal table) 타입을 선언해야 했던 전통적인 방식을 크게 단순화합니다. 이 글
이 글에서 다루는 것 ABAP 7.40 이상에서 가장 많이 쓰이는 문법 중 하나가 바로 인라인 선언(Inline Declaration)입니다. 특히 Open SQL의 SELECT ... INTO 구문에서 @DATA() 를 활용하면, 결과를 담을 internal table이나 work a
개요 및 이 글에서 다루는 것 ABAP 객체지향에서 상위 클래스 참조를 하위 클래스 참조로 변환하는 다운캐스팅(Downcast)은 다형성을 활용하는 코드에서 반드시 마주치는 작업입니다. 전통적으로 사용해 온 MOVE ?= 또는 ?= 연산자는 한 줄에 변수 선언을 함께 쓰기 어렵고, 예외
개요 및 이 글에서 다룰 내용 S/4HANA 재무 모듈에서 총계정원장(General Ledger) 계정 마스터를 다룰 때 가장 먼저 마주치는 CDS 뷰가 바로 I_GLAccount 입니다. 전통 ABAP에서는 SKA1 (Chart of Accounts 레벨 계정 마스터) 테이블을 직접
이 글에서 다루는 내용 ABAP에서 REF TO 참조 변수는 데이터 객체나 인스턴스를 직접 가리키는 포인터 역할을 합니다. 값 복사가 아닌 참조 전달을 통해 메모리 효율성과 다형성을 동시에 확보할 수 있어, 대용량 내부 테이블 처리·동적 디스패치·Factory 패턴 등 실무 곳곳에서 핵
왜 같은 이름의 필드인데도 값이 비어 있을까 ABAP 개발자라면 한 번쯤은 겪었을 상황이다. CORRESPONDING 한 줄로 깔끔하게 구조체를 복사했는데, 디버거를 열어보니 분명히 양쪽에 있는 필드 하나가 비어 있다. 컴파일 에러도 없고, 런타임 덤프도 없다. 그저 조용히 잘못된 값이
개요 및 이 글에서 다룰 범위 SAP S/4HANA로 전환된 환경에서 재무 전표(FI Document) 라인 아이템을 조회할 때, 과거처럼 BSEG 클러스터 테이블을 직접 SELECT 하는 방식은 더 이상 권장되지 않습니다. 대신 SAP는 I_JournalEntryItem 이라는 표준
개요 및 이 글에서 다룰 내용 ABAP에서 조건 분기를 표현할 때 가장 익숙한 도구는 IF ... ELSEIF ... ENDIF 입니다. 그러나 단순히 변수 하나에 값을 채우기 위해 5~6줄의 IF 블록을 반복해서 작성하다 보면 코드는 빠르게 비대해지고, 한눈에 의도를 파악하기 어려워집
개요 및 이 글에서 다루는 것 ABAP 7.4 이후 도입된 COND 표현식은 전통적인 IF...ELSEIF...ENDIF 블록을 한 줄의 우아한 표현식으로 압축할 수 있는 강력한 기능입니다. 이 글에서는 중첩 조건문을 COND 로 리팩토링하는 방법과 실무 시나리오에서의 적용 패턴을 다룹
개요 및 이 글에서 얻을 것 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 ..
개요와 이 글에서 다루는 범위 판매 계약(Sales Contract)은 고객과 일정 기간 동안 정해진 조건으로 거래하기로 약속한 'Outline Agreement'의 한 종류입니다. S/4HANA에서는 전통적인 VBAK/VBAP 테이블 위에 Virtual Data Model(VDM) 계
개요 및 학습 포인트 ABAP 7.52부터 정식 지원되는 FOR ... THEN ... UNTIL 표현식은 단순한 반복 카운터를 넘어, 수학적 수열(arithmetic/geometric sequence)을 한 줄의 인라인 표현식으로 만들어내는 강력한 기능입니다. 전통적인 DO ... E
개요 및 이 글에서 다루는 내용 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는 명확히 분리된 역할을 가지며, 이 분리
개요 및 도입 ABAP에서 연속된 숫자 시퀀스나 날짜 범위를 내부 테이블로 만들어야 하는 상황은 의외로 자주 발생합니다. 월별 매출 집계 슬롯, 회계연도 12개 기간, 발주일로부터 D+30까지의 일자 배열, 페이지네이션 인덱스 등이 대표적입니다. 전통적으로 DO ... ENDDO 루프로