CDS 내장 함수 30초 정리 — SUBSTRING부터 CAST까지 #shorts #SAP #ABAP
개요 및 이 글에서 얻어갈 것 ABAP CDS(Core Data Services)는 단순한 SELECT 래퍼가 아니라, HANA Calculation Engine에서 직접 실행되는 강력한 데이터 모델링 레이어입니다. 그 중에서도 Built-in Functions 는 ABAP 레이어로 데
개요 및 이 글에서 얻어갈 것 ABAP CDS(Core Data Services)는 단순한 SELECT 래퍼가 아니라, HANA Calculation Engine에서 직접 실행되는 강력한 데이터 모델링 레이어입니다. 그 중에서도 Built-in Functions 는 ABAP 레이어로 데
개요 및 이 글에서 다루는 것 ABAP CDS(Core Data Services)에서 금액 필드를 다룰 때 가장 까다로운 부분은 통화(Currency) 처리입니다. 한 회사가 KRW, USD, EUR을 동시에 다룰 때 단순한 DECIMAL 필드만으로는 의미가 불완전합니다. 이 글에서는
개요와 이 글에서 다루는 범위 ABAP Test Cockpit(이하 ATC)은 ABAP 코드의 정적 분석과 품질 게이트(Quality Gate) 역할을 담당하는 SAP의 코드 검사 프레임워크입니다. 이 글에서는 ABAP Cloud(Steampunk, BTP ABAP Environment
개요 및 이 글에서 다루는 범위 SAP RAP(ABAP RESTful Application Programming Model) 기반의 Fiori Elements 앱에서 사용자가 입력 필드를 클릭하면 나타나는 F4 도움말(Value Help)을 CDS 어노테이션만으로 구현하는 실전 예제입니

2026년 5월 29일 AI 업계는 모델 성능 경쟁과 가격 경쟁, 그리고 거버넌스 정비가 동시에 맞물리는 격동의 하루를 보냈습니다. Anthropic은 Claude Opus 4.8을 출시하며 OpenAI와 Google을 동시에 겨냥했고, 중국 AI 진영은 가격 파괴 전략으로 글로벌 시장
이 글에서 다루는 것 SAPUI5/OpenUI5 애플리케이션을 부트스트랩(bootstrap)하는 방식은 크게 두 가지로 나뉩니다. 하나는 SAP가 운영하는 CDN( sapui5.hana.ondemand.com 또는 openui5.hana.ondemand.com )에서 런타임 리소스를 직
이 글의 개요와 도달 지점 ABAP RESTful Application Programming Model(RAP)에서 Bound Action은 특정 비즈니스 객체 인스턴스에 묶여 동작하는 동작 단위입니다. 단순한 토글 버튼이라면 파라미터 없이도 충분하지만, 실무에서는 "승인하되 코드와 코
이 글에서 다루는 내용 ABAP RESTful Application Programming Model(RAP)에서 Draft Activate는 사용자가 작성 중인 데이터를 임시 저장(Draft)했다가 검증을 거쳐 정식 데이터(Active)로 전환하는 핵심 시나리오입니다. Fiori Ele
이 글에서 얻어갈 것 · 동시 편집 충돌 시나리오 정리 SAP S/4HANA Cloud 또는 ABAP Cloud 기반의 RAP(ABAP RESTful Application Programming) 환경에서 여러 사용자가 동일한 비즈니스 객체를 동시에 수정하려고 할 때 발생하는 데이터 정합
이 글의 목표와 체크포인트 SAPUI5의 sap.m.List 에서 단순 정렬을 넘어 의미 있는 그룹으로 묶어 보여주는 작업은 실무에서 매우 자주 등장합니다. 이 글은 SalesOrder(판매 주문) 리스트를 SalesOrg(판매 조직) 단위로 그룹핑하는 시나리오를 통해, Sorter 의
RAP 권한 모델의 두 축 — Global과 Instance RAP(RESTful Application Programming Model)에서 권한 체크는 두 단계로 분리됩니다. Global Authorization은 사용자가 해당 BO의 특정 오퍼레이션을 "원천적으로" 수행할 수 있는지
RAP Draft 메커니즘과 Discard의 의미 ABAP RAP(RESTful Application Programming Model)에서 Draft는 사용자가 작업 중인 데이터를 일시적으로 보관하는 기능입니다. RAP 런타임은 활성(active) 인스턴스와 드래프트(draft) 인스턴
딥 구조체가 메모리에서 어떻게 동작하는가 ABAP 내부 테이블의 한 라인이 또 다른 내부 테이블이나 STRING을 필드로 가지는 구조를 딥 구조체(Deep Structure)라고 부릅니다. 평범하게 보이지만 메모리 관점에서는 라인마다 별도의 힙(heap) 블록을 잡기 때문에, 수만 라인
1. SY-TABIX 의존의 문제점 오래된 ABAP 코드를 들여다보면 거의 모든 내부 테이블 조작이 SY-TABIX 와 SY-SUBRC 를 중심으로 돌아간다. 예를 들어 READ TABLE ... TRANSPORTING NO FIELDS 로 인덱스를 확보한 뒤 그 값을 즉시 다른 명령에
1. 수동 오류 수집의 문제점 UI5 애플리케이션을 처음 작성할 때 가장 흔히 마주치는 안티 패턴은 컨트롤러마다 onError , onValidationError , onParseError 핸들러를 따로 두고 sap.m.MessageBox.error() 를 호출하는 방식입니다. 입력 필
내부 테이블 선형 탐색의 성능 문제 대규모 트랜잭션을 다루는 ABAP 프로그램에서 가장 흔히 발견되는 병목은 의외로 데이터베이스 조회가 아니라 메모리 위에 올라온 내부 테이블의 비효율적인 탐색입니다. STANDARD TABLE은 기본적으로 인덱스가 없으므로 READ TABLE WITH
이 글에서 다루는 범위와 도달 목표 실무에서 자재 수량을 다루다 보면 EA(개) , BOX(박스) , PAL(파레트) , KG , G 처럼 서로 다른 단위가 한 테이블에 섞여 있습니다. 이때 개발자는 종종 ABAP 측에서 LOOP 를 돌리며 환산 비율을 곱하는 코드를 작성합니다. 이 글
TCURR 직접 조회의 함정 — 환율 변환이 망가지는 순간 실무에서 가장 흔하게 발견되는 ABAP 안티 패턴 중 하나가 TCURR 테이블을 직접 SELECT 하는 코드입니다. 환율은 단순히 "1 USD = 1,350 KRW" 같은 숫자 한 개가 아닙니다. SAP의 환율 데이터는 EXCH
개요와 이 글에서 다루는 범위 SAP UI5 애플리케이션이 OData 서비스를 호출할 때, 마스터-디테일 화면에서 가장 자주 발생하는 성능 병목이 바로 N+1 쿼리 문제입니다. 판매 오더 목록을 가져온 뒤 각 오더의 고객 정보를 따로따로 조회하면 100건 목록에 101번의 HTTP 요청
개요 및 이 글에서 다루는 내용 ABAP 7.40 SP08 이후 도입된 INTO @DATA(...) 인라인 선언은 SELECT 문 시점에 결과 변수의 타입을 자동 추론하여, 별도의 TYPES / DATA 선언 없이도 즉시 사용 가능한 변수를 만들어줍니다. 이 글은 판매 오더(SalesO