RAP Validation 빠뜨리면 큰일 #shorts #SAP #ABAP
RAP Validation이 필요한 이유 SAP RAP(RESTful ABAP Programming)에서 Validation은 데이터 일관성을 보장하는 핵심 메커니즘입니다. 검증 로직 없이 저장하면 잘못된 데이터가 DB까지 그대로 들어가버립니다. 특히 날짜 범위, 필수값, 참조 무결성은
RAP Validation이 필요한 이유 SAP RAP(RESTful ABAP Programming)에서 Validation은 데이터 일관성을 보장하는 핵심 메커니즘입니다. 검증 로직 없이 저장하면 잘못된 데이터가 DB까지 그대로 들어가버립니다. 특히 날짜 범위, 필수값, 참조 무결성은

Open SQL — 이식성의 대가 ABAP Open SQL은 DB 종류에 무관하게 동작한다. SAP NetWeaver가 내부적으로 DB 방언으로 변환해 Oracle, MSSQL, HANA 모두 같은 코드가 돌아간다. 대신 이 추상화 레이어가 성능 최적화 여지를 줄인다. " Open SQ
ABAP Cloud vs Standard — 뭐가 다른가? ABAP를 오래 써왔다면 한 번쯤 들었을 키워드: ABAP Cloud . 기존 Standard ABAP와 뭐가 다른지, 왜 갑자기 중요해진 건지 핵심만 정리했다. 핵심 차이: Released API만 허용 ABAP Standar
RAP Action이 뭔가요? RAP(RESTful ABAP Programming)에서 Action은 CRUD 외의 비즈니스 로직을 처리하는 오퍼레이션입니다. 버튼 클릭 한 번으로 "승인", "취소", "전기" 같은 작업을 수행할 때 사용합니다. Action에는 크게 두 종류가 있습니다

ABAP Unit Test에서 DB 의존 코드를 Mock Framework로 테스트하는 방법 — cl_osql_test_environment, cl_abap_testdouble 실전 가이드

RAP Action이란? RAP(RESTful Application Programming) 모델에서 Action은 CRUD 외 커스텀 비즈니스 로직을 실행하는 오퍼레이션입니다. OData V4로 노출되며 Fiori Elements 버튼에 자동 연결됩니다. Bound vs Unbound

RAP 두 가지 시나리오 ABAP RAP에는 Managed와 Unmanaged 두 가지 구현 방식이 있습니다. 처음 RAP를 배울 때는 Managed만 쓰지만, 실무에서는 반드시 Unmanaged를 선택해야 하는 상황이 생깁니다. Managed Scenario SAP 프레임워크가 CRU

AMDP란? ABAP Managed Database Procedure의 약자입니다. 복잡한 집계나 분석 계산을 ABAP 레이어 대신 HANA DB 안에서 직접 실행하도록 위임하는 방법입니다. 대용량 데이터 처리 시 네트워크 트래픽을 줄이고 DB 엔진의 성능을 최대로 활용할 수 있습니다.

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