Interface View 직접 노출하면 큰일 #shorts #SAP #RAP
개요 및 핵심 포인트 SAP RAP(RESTful ABAP Programming Model)에서 CDS 뷰는 단순히 "데이터를 보여주는 SQL 래퍼"가 아닙니다. RAP의 계층 아키텍처에서 Interface View와 Projection View는 명확히 분리된 역할을 가지며, 이 분리
개요 및 핵심 포인트 SAP RAP(RESTful ABAP Programming Model)에서 CDS 뷰는 단순히 "데이터를 보여주는 SQL 래퍼"가 아닙니다. RAP의 계층 아키텍처에서 Interface View와 Projection View는 명확히 분리된 역할을 가지며, 이 분리
개요 및 도입 ABAP에서 연속된 숫자 시퀀스나 날짜 범위를 내부 테이블로 만들어야 하는 상황은 의외로 자주 발생합니다. 월별 매출 집계 슬롯, 회계연도 12개 기간, 발주일로부터 D+30까지의 일자 배열, 페이지네이션 인덱스 등이 대표적입니다. 전통적으로 DO ... ENDDO 루프로
1. SAP OData 서비스 개발의 역사와 패러다임 전환 SAP의 ABAP 기반 서비스 개발은 지난 15년간 큰 변화를 겪었습니다. 초기 SAP NetWeaver Gateway가 등장하면서 SAP는 SOAP 기반 RFC/BAPI 호출에서 벗어나 OData(REST 기반) 프로토콜을 표
개요와 이 글에서 다룰 내용 RAP(ABAP RESTful Application Programming Model)에서 데이터를 읽는 작업은 단순해 보이지만, 실제 트랜잭션 처리에서는 두 가지 전혀 다른 의미를 갖습니다. 단순 조회용 READ ENTITIES 와 수정을 전제로 한 READ
개요 및 이 글에서 다루는 것 SAP RAP(ABAP RESTful Application Programming Model)을 처음 시작하면 "도대체 어디부터 손을 대야 하지?"라는 질문이 가장 먼저 떠오릅니다. CDS View, Behavior Definition(BDEF), Behav
개요 및 학습 흐름 SAP RAP(RESTful ABAP Programming Model)에서 비즈니스 키(primary key)를 어느 시점에 확정할 것인가는 트랜잭션 설계의 근본 결정 사항입니다. RAP는 이를 위해 Early Numbering과 Late Numbering이라는 두
개요와 이 글에서 얻어갈 것 ABAP RESTful Application Programming Model(RAP)을 처음 다루는 개발자가 가장 자주 묻는 질문 중 하나는 "내 코드 어디에도 COMMIT WORK 가 없는데 왜 DB에 데이터가 저장되어 있는가?"이다. 전통적인 ABAP 개
VALUE 연산자가 등장한 배경 ABAP 개발자라면 누구나 한 번쯤 내부 테이블을 채우기 위해 APPEND 구문을 수십 줄씩 반복해 본 경험이 있을 것입니다. 작업 영역(work area)을 선언하고, 필드별로 값을 할당한 뒤, 테이블에 APPEND하고, CLEAR로 초기화하는 패턴은
1. Managed vs Unmanaged — 무엇이 다른가 SAP의 ABAP RESTful Application Programming Model(이하 RAP)은 비즈니스 객체의 동작을 구현하는 두 가지 주요 시나리오를 제공합니다. Managed 시나리오에서는 RAP Framework가
1. Unmanaged RAP가 등장한 배경 ABAP RESTful Application Programming Model(RAP)은 S/4HANA Cloud 및 ABAP Platform 2022 이상에서 비즈니스 객체를 선언적으로 정의하기 위한 프레임워크입니다. 일반적으로 신규 개발이라
외부 API를 OData 표면으로 끌어올리는 RAP Custom Entity의 가치 SAP S/4HANA 또는 BTP ABAP Environment에서 RAP(ABAP RESTful Application Programming Model) 기반으로 Fiori 앱을 만들다 보면, 데이터 소
큰일 났습니다, 당신의 Root View Entity가 잘못 설계됐다면 "분명히 CDS View Entity로 모델링은 끝났는데, 왜 Fiori Elements 화면에서 자식 데이터가 안 나오죠?", "왜 Draft가 활성화 안 되죠?", "왜 트랜잭션 동작이 부모-자식 단위로 묶이지
1. Additional Binding이 필요한 이유 — 실무에서 마주치는 상황 SAP S/4HANA Cloud 또는 ABAP Platform 2023 이상에서 RAP(RESTful Application Programming Model)로 Business Object를 개발하다 보면,
Mapping 절이 필요한 이유 — DB 컬럼명과 CDS 필드명 불일치 문제 SAP RAP(RESTful Application Programming Model)에서 비즈니스 오브젝트를 설계하다 보면, 데이터베이스 테이블의 컬럼명이 짧고 함축적인 이름(예: MANDT , SOITEM_ID
1. Service Definition이 필요한 이유 SAP S/4HANA Cloud 또는 ABAP Platform 환경에서 RAP(ABAP RESTful Application Programming Model)를 다루다 보면, 비즈니스 로직을 캡슐화한 CDS 뷰를 외부 시스템이 사용할
이 글에서 다루는 것 SAP HANA를 비롯한 모든 관계형 데이터베이스에서 데이터를 안전하게 변경하려면 트랜잭션(Transaction) 개념을 반드시 이해해야 합니다. 이 글은 SQL의 COMMIT 과 ROLLBACK 을 활용해 트랜잭션을 제어하는 방법을 실무 시나리오 중심으로 설명합니
개요 및 학습 포인트 ABAP 7.40 이후 도입된 DATA(...) 인라인 선언은 변수 타입을 컴파일러가 컨텍스트로부터 자동 추론하게 해주는 기능입니다. 기존에는 모든 변수를 DATA 절에서 미리 명시적으로 선언해야 했고, 타입을 별도 TYPES 로 정의하거나 데이터 사전(DDIC)을
1. SmartFilterBar 커스텀 필터가 필요한 이유 SAP UI5의 sap.ui.comp.smartfilterbar.SmartFilterBar 는 OData 서비스의 메타데이터( $metadata )를 읽어 필터 UI를 자동으로 그려주는 컴포넌트입니다. 엔티티의 속성(Proper
개요 및 학습 포인트 ABAP Analytical Query는 CDS View 위에 다차원 분석(Dimension/Measure) 모델을 얹어, Fiori Elements의 Analytical List Page(ALP)에서 차트와 테이블이 자동 생성되도록 만드는 패턴입니다. 매출/판매량
개요 및 학습 체크리스트 ABAP Analytical Query(분석 쿼리)는 SAP S/4HANA 및 BTP ABAP Environment에서 Fiori 분석 앱, Embedded Analytics, SAC Live Connection 등에 데이터를 공급하는 핵심 빌딩 블록입니다. 이