
입력값 자동 채움? RAP Determination 한 줄로 끝 #shorts #SAP #ABAP
RAP Determination이란? RAP에서 Determination은 사용자가 특정 필드를 입력했을 때 다른 필드를 자동으로 계산하거나 채워주는 메커니즘입니다. Validation이 값을 검증한다면, Determination은 값을 생성합니다. 언제 쓰나요? 주문 생성 시 총액 자

RAP Determination이란? RAP에서 Determination은 사용자가 특정 필드를 입력했을 때 다른 필드를 자동으로 계산하거나 채워주는 메커니즘입니다. Validation이 값을 검증한다면, Determination은 값을 생성합니다. 언제 쓰나요? 주문 생성 시 총액 자

전통 LOOP AT의 문제 ABAP의 고전적인 LOOP AT 구문은 내부 테이블을 순회하면서 새 테이블을 만들 때 코드가 장황해집니다. 워크 에리어 선언, APPEND, ENDLOOP까지 최소 5~6줄이 필요합니다. DATA lt_result TYPE TABLE OF zs_result.

CDS Scalar Function이란? CDS View 내부에서 호출할 수 있는 재사용 가능한 계산 로직입니다. 동일한 계산식을 여러 CDS View에 반복 작성하는 대신, 한 번 정의한 함수를 어디서든 참조할 수 있습니다. 구성 요소 Scalar Function은 두 부분으로 이루어

데이터 일관성 없이 저장하면? RAP에서 Validation을 구현하지 않으면 잘못된 금액, 빈 필드, 논리 오류가 그대로 DB에 저장됩니다. 저장 전 체크 없이는 데이터 정합성을 보장할 방법이 없습니다. Behavior Definition 선언 Behavior Definition에서

RAP Managed란? ABAP RAP(RESTful Application Programming Model)에서 managed 키워드 하나면 Create, Read, Update, Delete — 모든 CRUD 로직을 SAP 프레임워크가 자동 처리합니다. 직접 코드를 짤 필요가 없습니

CREATE OBJECT vs NEW — 무엇이 다른가 ABAP 7.40부터 NEW 키워드로 객체를 한 줄에 생성할 수 있습니다. 기존 CREATE OBJECT 와 비교하면 코드가 확연히 간결해집니다. 기존 방식 — CREATE OBJECT DATA: lo_flight TYPE REF
CTE란 무엇인가 CTE(Common Table Expression)는 ABAP SQL에서 WITH 절을 사용해 임시 결과 집합을 정의하는 기능입니다. 복잡한 중첩 서브쿼리를 평탄화해 가독성을 높이고, 동일 서브쿼리의 반복 작성을 줄여줍니다. ABAP 7.50 이상에서 지원되며, Ope

전통 방식: LOOP로 합계 구하기 ABAP 개발자라면 내부 테이블의 합계를 구할 때 아래 패턴을 자주 씁니다. DATA lv_total TYPE p DECIMALS 2. LOOP AT lt_orders INTO DATA(ls_order). lv_total = lv_total + ls_

전통 LOOP, 너무 길지 않나요? 내부 테이블의 합계를 구하는 코드, 보통 이렇게 작성합니다. 변수 선언, 초기화, LOOP, 누적, ENDLOOP까지 다섯 줄 이상이 필요하죠. DATA(lt_orders) = VALUE tt_orders( ( amount = 100 ) ( amoun

Side Effects란? RAP Behavior Definition에서 side effects 는 특정 필드가 변경될 때 다른 필드를 자동으로 다시 읽어오는 선언적 메커니즘입니다. UI가 필드 변경을 감지하면 백엔드에서 지정된 대상 필드를 재조회해 화면을 갱신합니다. 수동 Refres

RAP Validation이 없으면 생기는 일 RAP(RESTful ABAP Programming) 기반 앱에서 Validation을 구현하지 않으면, 잘못된 데이터가 데이터베이스에 그대로 저장된다. 예를 들어 수량이 음수이거나, 날짜 범위가 역전된 주문이 버젓이 생성될 수 있다. Va

기존 방식 vs VALUE #( ) 비교 ABAP에서 내부 테이블에 데이터를 채울 때 기존 방식은 CLEAR·MOVE·APPEND를 매번 반복해야 했습니다. 행이 10개면 30줄이 넘는 코드가 생깁니다. " 기존 방식 (3줄 × n행) CLEAR ls_order. ls_order-id

중첩 서브쿼리, 정말 읽을 수 있나요? ABAP 개발 중 SELECT 문 안에 SELECT가 또 들어가고, 그 안에 또 들어가는 코드를 본 적 있나요? 작성한 본인도 일주일 뒤에 보면 해석이 어렵습니다. ABAP 7.50 이상에서는 CTE(Common Table Expression)를

CTE란 무엇인가 ABAP SQL 7.4부터 지원하는 WITH 절을 사용하면, 복잡한 쿼리를 이름 있는 임시 결과셋으로 분해할 수 있습니다. CTE(Common Table Expression)는 중첩 서브쿼리 대신 가독성과 재사용성을 크게 높여주는 도구입니다. 중첩 서브쿼리 방식 SEL

ABAP SQL Window Function 이란? ABAP 7.4부터 SELECT 안에서 Window Function 을 직접 쓸 수 있습니다. 행 단위 계산(순위·누계·이동평균)을 서브쿼리 없이 해결합니다. ROW_NUMBER — 부서별 급여 순위 SELECT carrid, paym

CAP for Node.js의 cds.ql로 SQL 집계 쿼리를 작성하는 실전 패턴을 다룹니다. GROUP BY·HAVING·COUNT·SUM·AVG 집계 함수 활용법, WHERE vs HAVING 차이, 서브쿼리 인라인 패턴, Late materialization 원칙까지 판매 대시보

@Component + implements EventHandler 두 마커의 조합으로 CAP Java 런타임이 Spring 컴포넌트 스캔에서 핸들러를 자동 발견하는 메커니즘, @ServiceName/@Before/@On/@After 라우팅 테이블 구축 원리, @HandlerOrder 실

S/4HANA 확장 방식 3가지 완벽 비교 S/4HANA 프로젝트에서 확장성 방식 선택을 잘못하면 업그레이드마다 재작업이 발생합니다. Key User, In-App(ABAP Cloud), Side-by-Side(BTP) 세 가지의 차이를 정확히 파악해야 합니다. Key User Exte

CAP Java Multitenancy — 90%가 놓치는 핵심 3가지 CAP for Java에서 멀티테넌시를 구현할 때 대부분 MTX Sidecar 설정에서 막힙니다. 2026년 4월 릴리스 기준으로 놓치기 쉬운 핵심 포인트를 정리했습니다. 1. MTX Sidecar 헬스체크 타임아웃

RAP Validation에서 on SAVE와 on MODIFY 이벤트를 잘못 선택하면 UX 버그와 성능 이슈가 생깁니다. 두 이벤트의 호출 시점, BDEF 선언 문법, ABAP 구현 패턴, 흔한 실수 3가지를 실전 코드로 정리합니다.