
라우팅하면 이전 뷰는 어디로 가요? — UI5 Cache Lifecycle #shorts #SAP #UI5
개요 및 핵심 포인트 SAPUI5/OpenUI5 애플리케이션에서 라우팅은 단순한 페이지 전환을 넘어 뷰 인스턴스의 생명주기(Lifecycle) 를 직접 제어하는 핵심 메커니즘입니다. 기본적으로 UI5 라우터는 한 번 생성된 뷰를 메모리에 캐시(cache)하여 재방문 시 빠르게 보여주지만

개요 및 핵심 포인트 SAPUI5/OpenUI5 애플리케이션에서 라우팅은 단순한 페이지 전환을 넘어 뷰 인스턴스의 생명주기(Lifecycle) 를 직접 제어하는 핵심 메커니즘입니다. 기본적으로 UI5 라우터는 한 번 생성된 뷰를 메모리에 캐시(cache)하여 재방문 시 빠르게 보여주지만

개요 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에서 표준처럼 사용됩니다. 본문에서
ABAP Facade 패턴 — RFC 직접 호출의 복잡성을 zcl_order_facade로 캡슐화, 호출부는 place_order 하나로 단순화, 생성자 주입으로 Mock 테스트까지 3단계로 정리합니다. YouTube: https://youtube.com/shorts/rZ9xXjZd5t
UI5 Image/Badge — sap.m.Image 기본 선언, BadgeCustomData로 배지 오버레이, 표현식 바인딩으로 카운트 0이면 자동 숨김까지 3단계로 정리합니다. YouTube: https://youtube.com/shorts/EiRwfJRcgQg
ABAP Parallel Processing — CALL FUNCTION IN TASK로 RFC 병렬 분기, WAIT UNTIL로 결과 수집, 태스크 수 제한과 독립 커밋 주의사항까지 3단계로 정리합니다. YouTube: https://youtube.com/shorts/NpPKqcIUI
UI5 StepInput — min/max/step으로 허용 범위 설정, liveChange/change 이벤트 처리, 모델 바인딩 Constraints 유효성 처리까지 3단계로 정리합니다. YouTube: https://youtube.com/shorts/SVYZy_DeEhA
ABAP DB Hints — %_HINTS HDB로 인덱스 강제 지정, 조인 전략 힌트로 실행계획 제어, ADT HANA Plan Visualizer 검증까지 3단계로 정리합니다. YouTube: https://youtube.com/shorts/p1KeUV-az6k
1. 개요 및 이 글에서 얻어갈 것 ABAP Unit 테스트는 단순히 cl_abap_unit_assert 를 호출하는 것만으로 끝나지 않습니다. 동일한 테스트 메서드라도 실행 순서 에 따라 결과가 달라지는 경우가 빈번하게 발생하는데, 이를 순서 의존성(Test Order Dependen
1. 개요 및 이 글에서 얻어갈 것 SAPUI5에서 날짜를 다루는 컨트롤은 여러 가지가 있지만, 화면에 항상 달력을 펼쳐 두고 사용자가 즉시 날짜를 클릭하도록 유도해야 한다면 sap.ui.unified.Calendar 가 가장 적합합니다. sap.m.DatePicker 가 입력 필드를