라우트 늘어날수록 이렇게 정리해요? — UI5 Route Group #shorts #SAP #UI5
개요 SAPUI5/OpenUI5 애플리케이션의 규모가 커지면 manifest.json 의 routing 섹션도 빠르게 비대해집니다. 특히 모듈별로 /products/list , /products/detail/{id} , /products/edit/{id} 처럼 동일한 URL 접두어를 공
개요 SAPUI5/OpenUI5 애플리케이션의 규모가 커지면 manifest.json 의 routing 섹션도 빠르게 비대해집니다. 특히 모듈별로 /products/list , /products/detail/{id} , /products/edit/{id} 처럼 동일한 URL 접두어를 공
ABAP 제네릭 타입 심층 다이브 - TYPE ANY와 동적 데이터 처리 ABAP 개발에서 같은 로직을 여러 구조체나 테이블에 반복 적용해야 하는 상황은 매우 흔합니다. 예를 들어, 어떤 내부 테이블이 들어오든 특정 필드 값을 추출해 로그를 남기는 유틸리티 메서드를 작성한다고 가정해 봅
개요 및 달성 목표 SAPUI5에서 Subroutes는 하나의 URL 패턴이 여러 개의 View를 동시에 활성화시키는 중첩 라우팅 메커니즘입니다. 주문 목록과 상세 화면을 한 화면에 나란히 보여주는 Master-Detail 패턴, 또는 좌측 카테고리 트리와 우측 콘텐츠를 동시에 유지하는
개요 및 핵심 체크리스트 ABAP에서 중첩 구조체를 다룰 때 모든 하위 컴포넌트는 부모 구조체와 동일한 연속 메모리 블록에 한꺼번에 할당됩니다. 이는 작은 구조에서는 문제가 없지만, 거대한 sub-structure를 자주 사용하지 않거나, 자기참조(self-referential) 트리·
왜 ABAP에서 Optional Return이 중요한가 ABAP 메서드를 설계할 때 가장 자주 마주치는 고민 중 하나는 "리턴값을 강제할 것인가, 선택적으로 둘 것인가"입니다. 자바나 C++에서는 리턴값을 무시하면 컴파일러 경고가 나오거나 명시적인 캐스팅이 필요한 경우가 많지만, ABA
개요 및 다룰 내용 SAP UI5 SPA(Single Page Application)에서 URL 하나가 곧 화면의 상태이자 진입점이 됩니다. 주문 상세, 상품 조회, 고객 카드 등 수십~수백 종의 화면을 정적으로 라우팅 테이블에 나열하는 것은 비현실적이기 때문에, sap.m.routin
왜 Hash Router가 SPA의 심장인가 SAPUI5 애플리케이션은 단일 페이지 애플리케이션(SPA)이다. 브라우저는 한 번 index.html을 받은 뒤 더 이상 서버에 페이지를 요청하지 않는다. 그렇다면 "목록 화면에서 상세 화면으로 이동"이라는 행위는 도대체 어떻게 일어나는 것
개요 및 운영 가시성 확보 체크포인트 SAP Cloud ALM은 SAP BTP 및 RISE with SAP 환경에서 운영 단계의 가시성을 한 곳으로 모으는 클라우드 네이티브 관리 도구입니다. 온프레미스 시대의 Solution Manager가 담당하던 모니터링·이벤트 관리·작업 추적을 재
왜 UploadCollection이 필요한가 SAP UI5 기반 비즈니스 애플리케이션에서 파일 업로드는 단순한 첨부 기능을 넘어, 송장 스캔본, 계약서 PDF, 제품 이미지, 품질 검사 사진 등 핵심 트랜잭션의 일부로 다뤄지는 경우가 많습니다. sap.m.upload.UploadColl
들어가며 — 왜 CDS 성능 힌트가 중요한가 HANA 기반 ABAP 개발에서 CDS 뷰는 단순한 SELECT 래퍼가 아닙니다. ABAP RAP, Fiori Elements, OData 서비스의 모든 데이터 흐름이 CDS를 통과하기 때문에, 뷰 한 개의 실행 계획이 어긋나면 화면 로딩이
왜 Embedded Steampunk가 등장했는가 S/4HANA Cloud Private Edition과 On-Premise 시스템에서 클린코어(Clean Core) 원칙을 강제하기 위해 도입된 개발 모델이 바로 Embedded Steampunk 입니다. 기존의 Classic ABAP은
이 글에서 다룰 것 sap.m.MultiInput 은 사용자가 여러 값을 토큰(Token) 형태로 입력하고 시각적으로 관리할 수 있는 컨트롤입니다. 검색 필터, 태그 입력, 수신자 목록처럼 "값을 하나씩 추가/제거하면서 전체 목록을 유지"해야 하는 UI에서 표준처럼 사용됩니다. 본문에서
UI5 Image/Badge — sap.m.Image 기본 선언, BadgeCustomData로 배지 오버레이, 표현식 바인딩으로 카운트 0이면 자동 숨김까지 3단계로 정리합니다. YouTube: https://youtube.com/shorts/EiRwfJRcgQg
ABAP DB Hints — %_HINTS HDB로 인덱스 강제 지정, 조인 전략 힌트로 실행계획 제어, ADT HANA Plan Visualizer 검증까지 3단계로 정리합니다. YouTube: https://youtube.com/shorts/p1KeUV-az6k
1. 개요 및 이 글의 목표 ABAP에서 서로 다른 프로그램, 서브루틴, 함수 모듈, 다이얼로그 사이에 임시 데이터를 주고받아야 하는 상황은 빈번하게 발생합니다. 파라미터로 직접 전달할 수 없는 컨텍스트(예: SUBMIT 호출, CALL TRANSACTION, 모달 팝업 종료 후 결과
1. 개요 및 이 글의 목표 ABAP 객체지향 설계에서 클래스 간 결합도를 낮추는 두 가지 대표적인 기법이 의존성 주입(Dependency Injection, DI) 과 서비스 로케이터(Service Locator) 패턴입니다. 두 기법 모두 "객체가 자신이 필요로 하는 의존 객체를 직
1. 개요 및 이 글의 목표 ABAP Objects의 Singleton 패턴 은 특정 클래스의 인스턴스가 단일 세션 내에서 단 하나만 존재하도록 보장하는 객체 생성 패턴입니다. 설정 관리자, 캐시, 로거, 데이터베이스 연결과 같이 시스템 전반에서 동일한 상태를 공유해야 하는 컴포넌트를
1. 개요 및 이 글의 목표 ABAP CDS(Core Data Services)는 단순한 데이터베이스 뷰 정의 언어가 아니라, SAP HANA 옵티마이저에게 의도를 전달하는 선언적 메타데이터 계층 이다. CDS 어노테이션을 적절히 활용하면 같은 SELECT 문이라도 실행 계획이 달라지고
1. 개요 및 이 글의 목표 ABAP CDS(Core Data Services)는 데이터 모델링 계층을 SAP HANA 데이터베이스에 가깝게 끌어올린 핵심 기술입니다. 그런데 데이터 모델이 강력해질수록 "누가 어떤 행(row)을 볼 수 있는가"라는 질문이 더 중요해집니다. ABAP CD
1. 개요 및 이 글의 목표 조직도, 자재명세서(BOM), 비용 센터, 카테고리 트리처럼 "한 행이 다른 행을 부모로 가리키는" 데이터는 전통적인 SQL JOIN만으로 다루기 매우 까다롭습니다. 깊이가 가변적이고, 재귀적으로 모든 후손을 찾거나 특정 노드의 모든 조상을 끌어와야 하는 요