CDS Draft 활성화 실수 3가지 #shorts #SAP #CAPforNode
📖 개요: Draft 저장 로직, 왜 자꾸 오해가 생길까 SAP CAP(Cloud Application Programming Model) Node.js 런타임에서 Fiori Elements 앱을 만들 때 가장 자주 마주치는 기능이 바로 Draft(초안) 입니다. 어노테이션 한 줄이면
📖 개요: Draft 저장 로직, 왜 자꾸 오해가 생길까 SAP CAP(Cloud Application Programming Model) Node.js 런타임에서 Fiori Elements 앱을 만들 때 가장 자주 마주치는 기능이 바로 Draft(초안) 입니다. 어노테이션 한 줄이면
📖 개요 및 핵심 체크리스트 CAP Java 프로젝트가 커지면 어느 순간 이런 질문이 반복됩니다. "이 필드는 @readonly 로 막아야 하나, 아니면 핸들러에서 검사해야 하나?" "권한은 @requires 인가 @restrict 인가?" 어노테이션은 종류가 많은 데다 이름이 비슷해
📖 개요: 이 글에서 다루는 것 CAP Java 프로젝트에서 CDS 어노테이션은 단순한 메타데이터가 아니라, 런타임 동작(검증·권한·CRUD 제한)과 UI 렌더링을 실제로 바꾸는 선언적 계약입니다. 문제는 "어떤 어노테이션을 CDS에 걸고, 어떤 로직을 Java 핸들러로 내려야 하는가
개요 및 이 글에서 다루는 것 SAP CAP(Cloud Application Programming Model) Node.js 런타임에서 Custom Handler를 작성하다 보면, 비즈니스 규칙 위반·외부 시스템 장애·데이터 정합성 문제를 어떻게 클라이언트에 전달할지 고민하게 됩니다.
들어가며: 이 글에서 다루는 것 CAP(Cloud Application Programming Model) Node.js 런타임에서 에러 핸들링은 겉보기엔 단순합니다. req.error() 와 req.reject() 두 API만 알면 될 것 같지만, 실제 프로젝트에서는 "에러를 던졌는데
📖 개요 — 이 글에서 다루는 것 SAP Fiori elements 기반 앱에서 사용자가 입력하다 만 데이터를 안전하게 임시 저장해 주는 Draft(초안) 패턴은, CAP Node.js에서는 어노테이션 한 줄( @odata.draft.enabled )로 켤 수 있습니다. 그런데 "한
Draft 상태 관리의 핵심: Admin 필드란 무엇인가 SAP RAP(RESTful ABAP Programming Model)에서 Draft 기능은 사용자가 데이터를 편집하는 동안 임시로 보관하고, 여러 세션을 넘나들면서도 작업을 이어갈 수 있게 하는 매우 중요한 메커니즘이다. 이 D
RAP F4 Value Help가 UX와 데이터 무결성에 미치는 영향 Fiori Elements 화면에서 사용자가 입력 필드를 클릭했을 때 뜨는 조회 팝업, 이른바 F4 Help(Value Help)는 단순한 편의 기능이 아닙니다. 이 팝업은 사용자가 잘못된 코드를 입력해서 서버 왕복
개요와 이 글에서 얻어갈 것 CDS(Core Data Services)에서 @Annotation 은 단순한 주석이 아닙니다. Fiori Elements가 자동으로 렌더링하는 리스트 컬럼, OData $metadata에 노출되는 필드의 의미론적 타입, 검색 우선순위, VDM(Virtual
개요 및 목표 SAP S/4HANA Cloud와 On-Premise 환경에서 표준으로 제공되는 Business Object(BO)를 확장할 때, 과거처럼 APPEND 나 소스 수정으로 접근하면 다음 릴리스에서 필드 충돌·활성화 실패·업그레이드 롤백이라는 값비싼 대가를 치릅니다. RAP(
개요 및 이 글에서 다루는 내용 SAP RAP(RESTful ABAP Programming Model)에서 Action은 비즈니스 오브젝트에 상태 변경 로직을 담는 핵심 구성 요소입니다. 하지만 실무에서 Action을 구현할 때 RESULT 파라미터를 제대로 채우지 않아 Fiori El
개요 및 이 글에서 다룰 것 ABAP RESTful Application Programming Model(RAP)에서 비즈니스 오브젝트(BO)에 파일 첨부 기능을 얹는 작업은 겉으로 보면 단순해 보이지만, Stream 어노테이션과 content type 처리를 놓치면 Fiori Elem
개요 및 이 글의 목표 SAP Fiori 앱을 열었을 때 "권한이 없다"는 메시지 대신 빈 화면이나 일부 데이터만 노출되는 경험을 한 적이 있을 것입니다. 이는 Fiori 아키텍처가 여러 계층(Launchpad → ICF → OData → CDS → DB)에서 각각 다른 권한 체크를 수
개요와 이 글에서 얻게 될 것 CAP(SAP Cloud Application Programming Model) 프로젝트를 로컬에서 cds watch 로 개발하다가 BTP HANA Cloud로 전환하는 순간 대다수 개발자가 "connection refused" 혹은 "no such tab
이 글에서 다루는 내용과 도달 지점 SAP RAP(RESTful ABAP Programming Model)로 실무 서비스를 구축하다 보면 CDS View를 왜 여러 층으로 나누는지 궁금해집니다. 특히 Interface View(I_) 와 Consumption View(C_) 는 겉보기에
abapGit이 왜 ABAP 개발자의 필수 도구가 되었는가 ABAP 개발자라면 한 번쯤 이런 경험이 있을 것이다. 트랜스포트 요청(TR)을 잘못 릴리즈해서 코드가 뒤엉키고, 누가 언제 어떤 변경을 했는지 추적할 수 없어 밤을 새운 기억 말이다. abapGit 은 이런 고통을 해결하기 위
개요와 이 글에서 얻어갈 것 ABAP CDS와 RAP(RESTful ABAP Programming Model)를 다루다 보면 association to 와 composition of 두 키워드를 매일 마주치게 됩니다. 문법은 비슷해 보이지만, 두 관계는 라이프사이클(생성/수정/삭제) 관
개요 및 이 글에서 얻어갈 것 CDS(Core Data Services) 뷰를 여러 화면과 리포트에서 재사용하다 보면, 같은 로직인데 필터 값만 다른 뷰를 여러 개 복제하게 되는 상황이 반복됩니다. 예를 들어 "특정 회사코드의 판매오더"를 조회하는 뷰와 "특정 통화의 판매오더"를 조회하
Draft 처리의 필요성과 이 글의 방향 SAP RAP(RESTful ABAP Programming Model)에서 Draft는 사용자가 편집 중인 데이터를 임시로 보관하고, 세션이 끊기더라도 이어서 작업할 수 있게 해주는 핵심 기능입니다. Fiori Elements의 Object Pa
Draft란 무엇인가 — RAP에서의 역할과 필요성 Fiori 기반 엔터프라이즈 애플리케이션에서 사용자가 긴 양식을 작성하다가 브라우저를 닫거나 세션이 끊겼을 때 입력값이 모두 사라진다면 어떨까요? Draft는 바로 이 문제를 해결하기 위해 ABAP RESTful Application