아직도 앱서버에서 처리? SQLScript 3가지 #shorts #SAP #HANA
이 글이 답하는 질문 SQLScript 프로시저 기본 구조는? TABLE TYPE으로 여러 행을 반환하려면? DECLARE, IF 절차형 구문은 어떻게 쓰나요? 프로시저 기본 구조 BEGIN-END 블록에 IN/OUT 파라미터를 선언하고 로직을 작성합니다. CREATE OR REPLAC
이 글이 답하는 질문 SQLScript 프로시저 기본 구조는? TABLE TYPE으로 여러 행을 반환하려면? DECLARE, IF 절차형 구문은 어떻게 쓰나요? 프로시저 기본 구조 BEGIN-END 블록에 IN/OUT 파라미터를 선언하고 로직을 작성합니다. CREATE OR REPLAC
이 글이 답하는 질문 Calculation View가 SQL View와 구체적으로 뭐가 다른가? 어떤 상황에서 Calculation View를 써야 하나? 처음 만들 때 어떤 순서로 접근하나? 직접 해보기 SQL View vs Calculation View 차이 -- SQL View:
Fiori에서 ARIA가 없으면 벌어지는 일 SAP Fiori 앱에 ARIA 속성을 빠뜨리면 스크린 리더 사용자는 버튼이 존재하는지조차 알 수 없습니다. 단순한 권고 사항이 아닙니다. 유럽 EAA(European Accessibility Act) 2025, 미국 Section 508 등
이 글이 답하는 질문 여러 Component로 쪼개진 UI5 앱에서, 서로를 직접 참조하지 않고 데이터를 주고받으려면 어떻게 해야 하나? EventBus의 channelId와 eventId는 어떤 단위로 설계해야 충돌 없이 운영할 수 있나? subscribe를 걸어 둔 뒤 뷰가 dest
Custom Action이 필요한 순간 CAP for Java에서 표준 CRUD만으로는 부족할 때 Custom Action을 사용합니다. 주문 승인, 결제 처리, 외부 시스템 호출처럼 특정 비즈니스 로직을 전용 API 엔드포인트로 노출할 수 있습니다. CDS 모델에서 Action 선언
SAP BTP에서 XSUAA(User Account and Authentication)는 OAuth2 기반 인증의 핵심이다. 그런데 설정 하나만 틀려도 앱 전체 인증이 멈춘다. 실무에서 반복되는 실수 3가지를 정리했다. 실수 1 — xs-security.json scope를 role t
External vs Internal Numbering RAP에서 엔티티를 생성할 때 키(Key) 값을 누가 결정하느냐에 따라 두 방식으로 나뉩니다. External Numbering 은 클라이언트(UI/API 호출자)가 키를 직접 지정하고, Internal Numbering 은 서버가
Expression Binding이란? UI5의 Expression Binding은 XML View 안에서 JavaScript 표현식을 직접 실행할 수 있는 기능입니다. {= ... } 문법을 사용하며, 단순한 조건 처리나 문자열 조합을 위해 Controller에 formatter 함수
ABAP 오브젝트를 GitHub으로 관리하는 abapGit 설치부터 팀 협업까지.
이 글이 답하는 질문 HANA Plan Visualizer가 Explain Plan과 뭐가 다른가? 쿼리가 느릴 때 어느 Operator부터 봐야 하나? Estimated vs Actual Row Count 차이가 크면 어떻게 하나? 직접 해보기 1. Plan Visualizer 열기
이 글이 답하는 질문 DB 컬럼을 추가하지 않고 계산된 값을 API 응답에 포함하려면? CDS virtual element와 projection 계산식, 어느 걸 써야 하나? 직접 해보기 1. CDS에서 virtual element 선언 entity에 virtual 키워드를 붙이면 DB
이 글이 답하는 질문 Fiori List Report에서 여러 행을 한 번에 수정하려면? Mass Edit Dialog를 열 때 입력 필드가 비어 있는 이유는? OData $batch 요청을 올바르게 묶는 방법은? 직접 해보기 1. Table MultiSelect 활성화 <!--
이 글이 답하는 질문 Fiori 폼에서 필수 입력 별표(*)는 어떻게 표시하나? Label required 속성만으로 충분한가, 아니면 Input도 건드려야 하나? 저장 버튼 클릭 시 빈 필수 필드를 어떻게 잡나? 직접 해보기 1. XML View — required 한 줄 추가 <
이 글이 답하는 질문 CDS View에 어노테이션만 붙이면 Fiori UI가 자동으로 생기는가? @UI.lineItem, @UI.selectionField가 하는 일은? OData 서비스 없이 Fiori 앱을 연결하려면? CDS Annotation이란 CDS View에 @ 로 시작하는
Fiori Elements vs Freestyle SAP UI5 개발에서 가장 먼저 결정해야 할 것은 Fiori Elements를 쓸지, Freestyle UI5를 쓸지입니다. 선택에 따라 개발 방식이 완전히 달라집니다. Fiori Elements OData 어노테이션 기반으로 UI를
이 글이 답하는 질문 UI5에서 V2 모델과 V4 모델, 코드가 얼마나 다른가? V2 앱을 V4로 바꿀 때 뭐가 달라지나? 언제 V4로 넘어가야 하나? 핵심 차이 한눈에 V2 V4 모델 클래스 odata.v2.ODataModel odata.v4.ODataModel CRUD model.c
어노테이션 기반 Fiori UI란? SAP Fiori의 Annotation Driven UI 는 별도 View XML 없이 OData 메타데이터 어노테이션 한 줄로 리스트·폼·필터를 자동 렌더링합니다. Fiori Elements가 메타데이터를 해석해 UI를 생성하므로 반복 코딩이 사라집
Fragment란 무엇인가 UI5에서 Fragment 는 자체 Controller를 갖지 않는 순수 UI 조각입니다. View와 동일한 XML 문법을 사용하지만, 독립적인 컨트롤러가 없기 때문에 호출하는 View의 Controller에 이벤트 핸들러를 위임합니다. Dialog, Popo
이 글이 답하는 질문 XML Fragment로 재사용 가능한 Dialog를 어떻게 만드나요? Dialog를 매번 새로 생성하면 안 되는 이유는? 직접 해보기 1. ConfirmDialog.fragment.xml <core:FragmentDefinition xmlns="sap.m"
UI5 Routing이 왜 중요한가 SAP UI5에서 화면 전환은 Router와 navTo로 처리합니다. 단순히 화면을 이동할 때 Push와 Replace 중 어떤 방식을 쓰느냐에 따라 뒤로가기 동작이 완전히 달라집니다. manifest.json Routing 설정 먼저 manifest