아직도 APPEND? VALUE 연산자 3가지 패턴 #shorts #SAP #ABAP
개요 및 학습 체크리스트 ABAP 7.40 이후 도입된 VALUE 연산자는 내부 테이블이나 구조체를 선언과 동시에 채워 넣을 수 있게 해주는 인라인 생성 표현식입니다. 기존에는 빈 테이블을 만든 뒤 APPEND 문장을 여러 번 반복해야 했지만, 이제는 한 줄의 표현식으로 동일한 작업을
개요 및 학습 체크리스트 ABAP 7.40 이후 도입된 VALUE 연산자는 내부 테이블이나 구조체를 선언과 동시에 채워 넣을 수 있게 해주는 인라인 생성 표현식입니다. 기존에는 빈 테이블을 만든 뒤 APPEND 문장을 여러 번 반복해야 했지만, 이제는 한 줄의 표현식으로 동일한 작업을

Feature Control이란 무엇이며 왜 필요한가 RAP(ABAP RESTful Application Programming Model)에서 비즈니스 객체를 설계할 때 가장 자주 마주치는 요구사항 중 하나는 "어떤 상태에서는 특정 필드를 수정할 수 없게 막아야 한다", "특정 권한이

VALUE 연산자가 등장한 배경 ABAP 개발자라면 누구나 한 번쯤 내부 테이블을 채우기 위해 APPEND 구문을 수십 줄씩 반복해 본 경험이 있을 것입니다. 작업 영역(work area)을 선언하고, 필드별로 값을 할당한 뒤, 테이블에 APPEND하고, CLEAR로 초기화하는 패턴은

개요와 이 글에서 다루는 범위 ABAP 7.40 이후로 도입된 VALUE 연산자는 내부 테이블과 구조체를 다루는 방식을 근본부터 바꿔놓은 표현식 기반 연산자입니다. 이 글은 APPEND 문을 반복적으로 사용하던 전통적인 방식과 비교하여, 선언과 동시에 데이터를 채워 넣는 인라인 초기화

1. RAP Draft의 역할 — 왜 존재하는가 SAP RAP(RESTful ABAP Programming Model)에서 Draft는 단순한 "임시 저장" 기능이 아닙니다. Fiori Elements UI와 OData V4 백엔드 사이의 상태 관리 계층으로, 사용자가 화면에서 값을 입
1. EKET 테이블이란 무엇인가 — 구매 납기일정의 원본 SAP ERP/S/4HANA의 구매 모듈에서 가장 빈번하게 조회되는 테이블 중 하나가 바로 EKET 입니다. EKET는 "Einkaufsbelegterminierung"의 약어로, 풀어쓰면 Purchasing Document:
OData V2와 V4, 무엇이 어떻게 달라졌나 OData는 SAP가 REST 기반 데이터 액세스 표준으로 채택한 프로토콜이며, 현재 SAP 생태계에는 V2와 V4 두 가지 메이저 버전이 공존합니다. V2는 2010년대 초반부터 SAP Gateway, SAP UI5, Fiori Clas

개요 및 이 글에서 다루는 범위 구매 발주(PO)의 납기는 한 줄이 아니라 여러 라인으로 분할되는 경우가 많습니다. 자재 1000개를 한 번에 받기보다 500개씩 두 차례 나눠 받는 식이죠. 이런 분할 납기 정보를 저장하는 EKET 테이블과, 이를 S/4HANA 환경에서 안전하게 소비할

RAP과 Draft: 왜 처음부터 설계에 포함되었는가 ABAP RESTful Application Programming Model(RAP)을 설계한 SAP 엔지니어링 팀은 단순한 CRUD 프레임워크를 만들고자 했던 것이 아닙니다. 그들이 마주한 문제는 명확했습니다 — 클라우드 환경에서

IF 중첩의 늪 - 코드가 무너지는 순간 ABAP으로 비즈니스 로직을 작성하다 보면 어느 순간 IF/ELSEIF가 5단, 6단까지 중첩되는 코드를 마주하게 됩니다. 주문 상태, 고객 등급, 결제 방식 같은 도메인 분기는 한두 줄로 끝나지 않습니다. 이 글에서는 ABAP 7.4 SP08
1. Managed와 Unmanaged의 갈림길 — 언제 Unmanaged를 선택하는가 RAP(RESTful ABAP Programming Model)는 ABAP Platform 1909 이상(특히 ABAP Cloud 및 S/4HANA 2020+)에서 비즈니스 객체를 선언적으로 정의하는

1. Managed vs Unmanaged — 무엇이 다른가 SAP의 ABAP RESTful Application Programming Model(이하 RAP)은 비즈니스 객체의 동작을 구현하는 두 가지 주요 시나리오를 제공합니다. Managed 시나리오에서는 RAP Framework가

개요 및 핵심 정리 SAP S/4HANA 환경에서 구매 발주(PO)의 납기 관리는 공급망 운영의 핵심입니다. I_ScheduleLine 은 EKET(Scheduling Agreement Schedule Lines) 테이블을 기반으로 하는 표준 CDS View로, 발주 항목별 납기 일정

1. Unmanaged RAP가 등장한 배경 ABAP RESTful Application Programming Model(RAP)은 S/4HANA Cloud 및 ABAP Platform 2022 이상에서 비즈니스 객체를 선언적으로 정의하기 위한 프레임워크입니다. 일반적으로 신규 개발이라

이 글이 답하는 질문 구매 오더 아이템을 조회할 때 EKPO 테이블에 바로 SELECT를 쏘는 코드를 한 번쯤 작성해 보셨을 겁니다. 그런데 SAP S/4HANA로 넘어오면서 표준 가상 데이터 모델(VDM)인 I_PurchaseOrderItem CDS View가 등장했고, 많은 실무 시

이 글이 답하는 질문 CREATE OBJECT와 NEW 연산자, 무엇이 다른가? 기존 코드를 NEW로 리팩토링하려면 어떻게 해야 할까? 예외 처리, 팩토리 패턴, 단위 테스트에서 NEW를 어떻게 활용하나? NEW #(...)으로 타입 추론이 실패하는 이유는? 이 글을 보기 전에 이 글은

외부 API를 OData 표면으로 끌어올리는 RAP Custom Entity의 가치 SAP S/4HANA 또는 BTP ABAP Environment에서 RAP(ABAP RESTful Application Programming Model) 기반으로 Fiori 앱을 만들다 보면, 데이터 소

개요 및 이 글에서 다루는 핵심 포인트 SAP S/4HANA 환경에서 구매 오더 헤더 데이터를 다룰 때, 과거 ABAP 개발자들은 EKKO 테이블을 직접 SELECT 하는 방식에 익숙했습니다. 그러나 S/4HANA 도입 이후 SAP는 VDM(Virtual Data Model) 기반의 C
개요 및 이 글에서 다루는 내용 SAP S/4HANA 환경에서 판매오더, 자재마스터, 생산오더 등 거의 모든 업무 문서에는 수량 단위(Unit of Measure, UoM)가 등장합니다. 그런데 데이터베이스에는 KG , EA , PC , ST 같은 코드 형태로만 저장되어 있어, 사용자

Action 파라미터 설계의 두 갈래 RAP(RESTful ABAP Programming Model)에서 Action을 구현할 때 개발자가 처음 마주치는 질문이 있다. 파라미터를 어디에 어떻게 정의할 것인가. 일반적인 ABAP 개발 경험을 가진 사람이라면 자연스럽게 딕셔너리 구조체(Da