CAP 영속성 API — 개발자 90%가 놓친다 #shorts #SAP #CAPforJava
PersistenceService란? CAP for Java에서 PersistenceService 는 데이터베이스에 직접 접근할 수 있는 타입 안전 영속성 API입니다. 일반적인 CqnService와 달리 이벤트 핸들러를 우회해 DB에 바로 쿼리를 실행합니다. 주로 커스텀 핸들러 내부에
PersistenceService란? CAP for Java에서 PersistenceService 는 데이터베이스에 직접 접근할 수 있는 타입 안전 영속성 API입니다. 일반적인 CqnService와 달리 이벤트 핸들러를 우회해 DB에 바로 쿼리를 실행합니다. 주로 커스텀 핸들러 내부에
이 글이 답하는 질문 CAP에서 외부 OData 서비스를 연결하려면? 서드파티 API를 CAP 쿼리처럼 쓸 수 있나? RemoteService 3단계 1. CDS에서 외부 서비스 선언 // srv/external.cds using { northwind } from '../srv/exte
Principal Propagation이란? SAP BTP에서 외부 백엔드 시스템을 호출할 때, 현재 로그인한 사용자의 ID를 그대로 전달 하는 메커니즘입니다. 이게 없으면 기술 사용자(Technical User)로만 연결되어 감사 추적(Audit Trail)이 불가능 합니다. 왜 문제
외부 서비스가 죽으면? CAP Java에서 외부 REST API를 호출할 때 해당 서비스가 응답하지 않으면 스레드가 블로킹되고, 요청이 쌓여 결국 전체 서비스가 다운 됩니다. Circuit Breaker는 이 장애 전파를 막는 패턴입니다. Resilience4j 3가지 상태 Closed
MTA(Multi-Target Application)란? SAP BTP에서 여러 모듈(백엔드, 프론트엔드, DB)을 하나의 패키지로 묶어 배포하는 표준 방식입니다. 핵심은 mta.yaml 파일 한 장입니다. mta.yaml 기본 구조 _schema-version: "3.1" ID: my
왜 Destination Service인가? CAP 프로젝트에서 외부 URL을 코드에 직접 박으면 환경마다 배포 설정을 바꿔야 하고 자격증명이 노출됩니다. BTP Destination Service를 쓰면 URL·인증 정보를 Cockpit에서 관리하고 코드는 이름만 참조합니다. mta.
CSV Seed란? CAP for Node.js 프로젝트에서 db/data/ 폴더에 CSV 파일을 놓으면 cds deploy 또는 cds run 시 자동으로 초기 데이터를 로드합니다. 별도 SQL 스크립트나 Migration 파일 없이 테스트 데이터와 마스터 데이터를 빠르게 투입할 수
이 글이 답하는 질문 SQLScript 프로시저 기본 구조는? TABLE TYPE으로 여러 행을 반환하려면? DECLARE, IF 절차형 구문은 어떻게 쓰나요? 프로시저 기본 구조 BEGIN-END 블록에 IN/OUT 파라미터를 선언하고 로직을 작성합니다. CREATE OR REPLAC
이 글이 답하는 질문 BTP 서비스 카탈로그에서 인스턴스를 만들 때 초보자가 하는 실수는? 서비스 인스턴스 생성 후 앱에 연결하려면 뭐가 더 필요한가? 서비스 플랜 차이를 모르고 선택하면 어떤 문제가 생기나? 실수 1 — 서비스 플랜을 아무거나 고름 BTP Service Catalog에
이 글이 답하는 질문 CAP 프로젝트에서 초기 데이터를 자동으로 로드하려면? CSV Seed 파일명은 어떻게 지어야 하나? 초기 데이터 로드가 안 될 때 어디를 봐야 하나? CSV Seed란 CAP(Cloud Application Programming Model)에서 앱 시작 시 DB에
이 글이 답하는 질문 DB 컬럼을 추가하지 않고 계산된 값을 API 응답에 포함하려면? CDS virtual element와 projection 계산식, 어느 걸 써야 하나? 직접 해보기 1. CDS에서 virtual element 선언 entity에 virtual 키워드를 붙이면 DB
이 글이 답하는 질문 SAP 개발을 VSCode에서 시작하려면 뭘 설치해야 하나요? CAP, Fiori, ABAP 각각 어떤 확장이 필요한가요? Eclipse ADT 없이 SAP 개발이 가능한가요? 직접 해보기 1. CAP 개발 — CDS Language Support # VSCode
BTP에서 Buildpack이란? SAP BTP Cloud Foundry 환경에서 앱을 배포할 때, Buildpack은 실행 환경을 자동으로 구성해 주는 도구입니다. 코드만 push하면 Buildpack이 런타임·의존성을 알아서 설치하고 앱을 기동합니다. 별도 Dockerfile 없이도
이 글이 답하는 질문 CAP Node.js 앱을 SaaS로 만들려면 무엇이 필요한가? @sap/cds-mtxs 가 하는 일은 무엇인가? 테넌트 구독(Subscribe)부터 데이터 격리까지 어떻게 동작하는가? Single-tenant vs Multi-tenant 단일 테넌트 CAP 앱은
CAP Pagination이란 SAP CAP for Node.js에서 OData 요청 시 $top과 $skip 파라미터로 페이지네이션을 구현합니다. CAP 런타임이 자동으로 처리합니다. OData 쿼리 파라미터 // 첫 번째 페이지 (10개) GET /Books?$top=10&$skip
CAP Localized Data란 CAP for Node는 다국어 데이터를 손쉽게 처리하기 위해 localized 키워드와 @cds.localized 어노테이션을 제공합니다. 엔티티 필드에 localized 를 붙이면 CAP 런타임이 자동으로 보조 텍스트 테이블을 생성하고, OData
이 글이 답하는 질문 CAP에서 Bound Action과 Unbound Action은 어떻게 다른가? 언제 Bound를 쓰고 언제 Unbound를 써야 하나? CDS 선언과 Node.js 핸들러는 어떻게 작성하나? Bound vs Unbound — 결정적 차이 Bound Action 은
TL;DR CAP for Node.js의 Draft Handling은 Fiori에서 사용자가 아직 확정하지 않은 임시 데이터를 관리하는 패턴입니다. CDS 어노테이션으로 활성화하고, SAVE/Activate 핸들러로 검증과 확정을 구현합니다. 이 글이 답하는 질문 CAP Draft Ha
TL;DR CAP for Node.js에서 before , on , after 핸들러는 실행 시점이 다릅니다. 검증은 before, 비즈니스 로직은 on, 후처리는 after에 넣는 것이 원칙입니다. 이 글이 답하는 질문 CAP Handler의 before/on/after는 언제 실행되
CAP for Node.js 앱의 Approuter(xs-app.json) 라우트 설정 실수가 어떻게 인증을 통째로 우회시키는지 분석하고, 안전한 authenticationType·destination·csrfProtection 구성 패턴을 실전 코드로 정리합니다.