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 레이어로 데
이 글에서 다루는 것 SAPUI5/OpenUI5 애플리케이션을 부트스트랩(bootstrap)하는 방식은 크게 두 가지로 나뉩니다. 하나는 SAP가 운영하는 CDN( sapui5.hana.ondemand.com 또는 openui5.hana.ondemand.com )에서 런타임 리소스를 직
이 글에서 다루는 범위와 도달 목표 SAPUI5 애플리케이션에서 배열(컬렉션) 데이터를 화면에 표시할 때 개발자가 가장 자주 마주치는 의사결정은 "어떤 바인딩 방식을 선택할 것인가"입니다. 같은 Product 배열을 두고도 인덱스로 직접 꺼낼 수도 있고, 컨테이너 전체에 컨텍스트를 묶어
1. SY-TABIX 의존의 문제점 오래된 ABAP 코드를 들여다보면 거의 모든 내부 테이블 조작이 SY-TABIX 와 SY-SUBRC 를 중심으로 돌아간다. 예를 들어 READ TABLE ... TRANSPORTING NO FIELDS 로 인덱스를 확보한 뒤 그 값을 즉시 다른 명령에
1. 수동 오류 수집의 문제점 UI5 애플리케이션을 처음 작성할 때 가장 흔히 마주치는 안티 패턴은 컨트롤러마다 onError , onValidationError , onParseError 핸들러를 따로 두고 sap.m.MessageBox.error() 를 호출하는 방식입니다. 입력 필
개요 및 이 글의 목표 SAP UI5 애플리케이션을 개발하다 보면 백엔드가 항상 JSON이나 OData를 내려주지는 않습니다. 레거시 ERP 인터페이스, 외부 카탈로그 시스템, RSS/Atom 피드, SOAP 응답, 또는 ABAP에서 직접 직렬화한 XML 응답을 그대로 화면에 묶어야 할
개요와 이번 글에서 다루는 것 CAP(Cloud Application Programming Model) for Node.js 서비스를 운영하다 보면 클라이언트에 "이 주문은 재고가 부족합니다", "이 고객 등급은 할인이 적용되지 않습니다" 같은 메시지를 전달해야 하는 경우가 자주 발생합
개요 및 이 글에서 다룰 내용 CAP(Cloud Application Programming Model) for Node.js에서 srv.run() 은 서비스 인스턴스를 통해 CQN(Core Query Notation) 쿼리를 직접 실행하는 핵심 API입니다. 이 글에서는 트랜잭션 컨텍스
예외 처리를 빼먹으면 진짜 큰일 납니다 HANA SQLScript로 작성한 프로시저가 운영 환경에서 갑자기 멈추고, 수천 건의 SalesOrder가 절반만 처리된 채 롤백되는 상황을 본 적이 있나요? 이 글은 SQLScript의 예외 처리(Exception Handling) 메커니즘을
PersistenceService란? CAP for Java에서 PersistenceService 는 데이터베이스에 직접 접근할 수 있는 타입 안전 영속성 API입니다. 일반적인 CqnService와 달리 이벤트 핸들러를 우회해 DB에 바로 쿼리를 실행합니다. 주로 커스텀 핸들러 내부에
면접에서 꼭 나오는 질문 ABAP 면접에서 가장 자주 나오는 질문 중 하나는 내부 테이블의 종류와 차이 입니다. 단순 암기가 아니라 성능 차이까지 설명할 수 있어야 합니다. STANDARD TABLE 순차 검색(O(n)). 삽입 순서 유지. 중복 허용. 소량 데이터나 순서가 중요할 때
BTP Generative AI Hub LLM 통합 시 실수 TOP 3 SAP BTP Generative AI Hub는 OpenAI, Anthropic, Google 등 다양한 LLM을 단일 API로 호출할 수 있게 해주는 서비스입니다. 하지만 비즈니스 앱에 통합할 때 흔히 발생하는 실
SQLScript에서 예외 처리를 빠뜨리면? HANA SQLScript로 프로시저를 작성할 때, 예외 처리를 생략하면 어떤 일이 벌어질까요? 트랜잭션 롤백 없이 데이터가 반쪽만 저장되거나, 오류 메시지 없이 프로세스가 멈추는 상황이 발생합니다. 실제 운영 환경에서는 디버깅조차 어려운 큰
에러 처리, 매번 따로 짜고 있진 않나요? CAP for Java 프로젝트가 커지면, 서비스마다 try-catch 반복하게 됩니다. Global Exception Handler 로 한 곳에서 처리하면 코드도 줄고, 클라이언트 응답도 일관됩니다. 핵심 구조 Spring의 @Controll
왜 S/4HANA 마이그레이션이 실패할까? S/4HANA 전환 프로젝트의 60% 이상이 예상보다 지연되거나 비용이 초과됩니다. 문제는 기술이 아니라 사전 준비 부족입니다. 마이그레이션 전 반드시 확인해야 할 3가지 체크포인트를 정리했습니다. 체크포인트 1: 커스텀 코드 분석 ECC에서
컴포넌트 간 통신, 왜 까다로울까요? UI5 앱이 커지면 부모→자식 모델 바인딩만으로는 부족합니다. 형제 뷰나 독립된 컨트롤러 간 데이터 전달 시 직접 참조를 남발하면 의존성 지옥에 빠집니다. EventBus는 이 문제를 Publish/Subscribe 패턴으로 해결합니다. 발행(Pub
Function과 Action, 뭐가 다른가? RAP(RESTful ABAP Programming) BDEF에서 function 과 action 은 둘 다 커스텀 오퍼레이션처럼 보이지만 근본적인 차이가 있다. Function은 읽기 전용 , Action은 상태 변경 이다. 이 구분을 무
이 글이 답하는 질문 CAP Java에서 System.out.println 뭐가 문제인가? SLF4J 어떻게 쓰나? 실무에서 꼭 알아야 할 logging 패턴 3가지는? println을 쓰면 안 되는 이유 로그 레벨 없음 — DEBUG/INFO/WARN/ERROR 구분 불가 운영 환경에
Formatter란? UI5 Formatter는 모델 데이터를 화면에 표시하기 전에 변환하는 함수입니다. 날짜 포맷 변경, 상태 코드 → 라벨 변환, 조건부 색상 적용 등 다양한 뷰 로직을 처리합니다. 기본 타입의 한계 sap.ui.model.type.Date 같은 빌트인 타입은 단순

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