Jenkins·Piper로 ABAP CI 자동 빌드·테스트 3단계 #shorts #SAP #ABAP
abapGit, Jenkins, SAP Piper를 연결해 ABAP 코드 푸시 시 자동으로 빌드와 단위 테스트를 실행하는 CI 파이프라인 구성 3단계를 다룹니다.
abapGit, Jenkins, SAP Piper를 연결해 ABAP 코드 푸시 시 자동으로 빌드와 단위 테스트를 실행하는 CI 파이프라인 구성 3단계를 다룹니다.
UI5 QUnit 단위 테스트에서 sinon Stub과 Spy를 활용해 외부 의존 없이 함수를 모킹·감시하는 3단계 방법을 다룹니다.
placeholder
ABAP DAC(Data Access Class) 패턴으로 DB 의존을 분리하는 3단계 가이드입니다.
작성 중...
작성 중...
UI5 모듈 API 설계 — public vs private 분리 패턴
작성 중...
ABAP에서 동기 CALL FUNCTION 대신 cl_background_jobs로 비동기 백그라운드 잡을 처리하는 방법을 알아봅니다.
1. 개요 및 핵심 포인트 SAPUI5 / OpenUI5 애플리케이션의 부트스트랩 단계는 사용자가 화면을 보기까지 걸리는 첫 번째 병목입니다. 동기(synchronous) manifest 로드 방식은 코드가 단순하지만 브라우저 메인 스레드를 차단하고, 점차 deprecated 처리되어
1. 개요 및 핵심 포인트 UI5 애플리케이션을 BTP에 배포하면 사용자가 페이지를 열 때마다 sap-ui-core.js , Component-preload.js , 컨트롤 라이브러리 등 수백 KB의 정적 리소스가 네트워크로 흘러갑니다. 이 트래픽을 줄이고 초기 로딩을 1초 이하로 끌어
개요 및 핵심 포인트 ABAP 애플리케이션의 응답 속도는 데이터베이스 왕복 횟수에 크게 좌우됩니다. 코드성 테이블이나 자주 조회되는 마스터 데이터를 매번 DB에서 읽어오면 네트워크 지연과 락 경합이 누적되어 트랜잭션 처리량이 떨어집니다. SAP NetWeaver Application S
1. 개요 및 핵심 포인트 대용량 테이블을 한 번에 로드하면 메모리 폭증과 응답 지연이 발생합니다. ABAP SQL에서는 OFFSET ... FETCH NEXT ... ROWS ONLY 구문으로 페이지 단위 조회가 가능하며, 페이지 깊이가 커질수록 OFFSET이 비싸지는 한계를 보완하기
개요 및 핵심 포인트 ABAP의 RAISE EXCEPTION 명령은 단순히 오류를 던지는 것 이상의 의미를 가집니다. TYPE 으로 어떤 예외 클래스를 발생시킬지, MESSAGE 로 사용자에게 보여줄 메시지를 어떻게 첨부할지, RESUMABLE 로 호출자가 실행을 이어갈 수 있도록 허용
ABAP 제네릭 타입 심층 다이브 - TYPE ANY와 동적 데이터 처리 ABAP 개발에서 같은 로직을 여러 구조체나 테이블에 반복 적용해야 하는 상황은 매우 흔합니다. 예를 들어, 어떤 내부 테이블이 들어오든 특정 필드 값을 추출해 로그를 남기는 유틸리티 메서드를 작성한다고 가정해 봅
개요 및 핵심 체크리스트 ABAP에서 중첩 구조체를 다룰 때 모든 하위 컴포넌트는 부모 구조체와 동일한 연속 메모리 블록에 한꺼번에 할당됩니다. 이는 작은 구조에서는 문제가 없지만, 거대한 sub-structure를 자주 사용하지 않거나, 자기참조(self-referential) 트리·
왜 ABAP에서 Optional Return이 중요한가 ABAP 메서드를 설계할 때 가장 자주 마주치는 고민 중 하나는 "리턴값을 강제할 것인가, 선택적으로 둘 것인가"입니다. 자바나 C++에서는 리턴값을 무시하면 컴파일러 경고가 나오거나 명시적인 캐스팅이 필요한 경우가 많지만, ABA
왜 Embedded Steampunk가 등장했는가 S/4HANA Cloud Private Edition과 On-Premise 시스템에서 클린코어(Clean Core) 원칙을 강제하기 위해 도입된 개발 모델이 바로 Embedded Steampunk 입니다. 기존의 Classic ABAP은
이 글에서 다룰 것 sap.m.MultiInput 은 사용자가 여러 값을 토큰(Token) 형태로 입력하고 시각적으로 관리할 수 있는 컨트롤입니다. 검색 필터, 태그 입력, 수신자 목록처럼 "값을 하나씩 추가/제거하면서 전체 목록을 유지"해야 하는 UI에서 표준처럼 사용됩니다. 본문에서
1. 개요 및 이 글의 목표 ABAP 객체지향 설계에서 클래스 간 결합도를 낮추는 두 가지 대표적인 기법이 의존성 주입(Dependency Injection, DI) 과 서비스 로케이터(Service Locator) 패턴입니다. 두 기법 모두 "객체가 자신이 필요로 하는 의존 객체를 직