아직도 MOVE? CONV 타입 변환 실수 3가지 #shorts #SAP #ABAP
개요 및 이 글에서 얻어갈 것 ABAP에서 타입 변환은 가장 빈번하게 일어나는 작업이지만, 동시에 가장 많은 런타임 오류( CX_SY_CONVERSION_NO_NUMBER , CX_SY_CONVERSION_OVERFLOW )를 일으키는 영역입니다. 7.40 이전에는 MOVE 또는 단순
개요 및 이 글에서 얻어갈 것 ABAP에서 타입 변환은 가장 빈번하게 일어나는 작업이지만, 동시에 가장 많은 런타임 오류( CX_SY_CONVERSION_NO_NUMBER , CX_SY_CONVERSION_OVERFLOW )를 일으키는 영역입니다. 7.40 이전에는 MOVE 또는 단순
개요 및 이 글에서 다루는 내용 SAP S/4HANA 환경에서 자재 마스터를 다루다 보면 자재 유형(Material Type, MTART)이 거의 모든 비즈니스 로직의 분기점이 됩니다. 완제품(FERT), 원자재(ROH), 반제품(HALB), 서비스(DIEN) 등 자재 유형에 따라 수량
1. Additional Binding이 필요한 이유 — 실무에서 마주치는 상황 SAP S/4HANA Cloud 또는 ABAP Platform 2023 이상에서 RAP(RESTful Application Programming Model)로 Business Object를 개발하다 보면,
MRP 영역(MRP Area)이란 무엇인가 MRP(Material Requirements Planning, 자재 소요량 계획)는 SAP S/4HANA의 핵심 공급망 기능 중 하나로, 생산·구매·재고를 통합적으로 계획하는 엔진입니다. 전통적으로 MRP는 플랜트(Plant) 단위로 수행되었
Mapping 절이 필요한 이유 — DB 컬럼명과 CDS 필드명 불일치 문제 SAP RAP(RESTful Application Programming Model)에서 비즈니스 오브젝트를 설계하다 보면, 데이터베이스 테이블의 컬럼명이 짧고 함축적인 이름(예: MANDT , SOITEM_ID
Deep Insert가 필요한 이유 — 기존 방식의 한계 전형적인 주문 처리 화면을 떠올려 봅시다. 사용자는 SalesOrder 헤더를 입력하고, 그 아래에 여러 줄의 OrderItem을 함께 채워 넣은 뒤 한 번의 저장 버튼으로 모두 등록하길 원합니다. 그런데 OData V2 시절 흔
1. %control이란 무엇인가 — RAP의 부분 업데이트 철학 SAP RAP(RESTful ABAP Programming Model)은 OData v4 기반의 트랜잭션 처리를 위해 설계되었습니다. OData v4의 PATCH 요청은 PUT과 달리 "리소스의 일부만 갱신한다"는 의미를
개요 및 이 글에서 다룰 내용 SAP RAP(RESTful ABAP Programming Model)에서 Behavior 핸들러는 각각 독립적인 메서드로 호출되며, 같은 트랜잭션 안에서도 핸들러 간 직접적인 변수 공유가 불가능합니다. 특히 Determination 단계에서 계산한 값이나
test
이 글에서 다루는 내용과 도달 지점 SAP RAP(RESTful Application Programming Model)에서 %cid 는 단일 트랜잭션 내에서 아직 데이터베이스에 커밋되지 않은 신규 인스턴스를 식별하기 위한 임시 키(temporary key)입니다. 특히 부모-자식 관계를
이 글이 답하는 질문 레거시 ABAP 코드를 유지보수하다 보면 MOVE ?TO 나 ?= 연산자로 객체 참조를 다루는 패턴을 흔히 만납니다. 이런 코드는 ABAP 7.40 이후 도입된 CAST 연산자로 대체되어야 합니다. 단순한 문법 변경이 아니라 가독성, 표현식 기반 프로그래밍, 인라인
개요 및 이 글에서 다룰 것 SAP BTP에서 가장 흔하게 발생하는 운영 장애 중 하나가 Quota 초과 입니다. 갑자기 서비스 인스턴스를 만들 수 없거나, 앱 배포가 실패하거나, 라이선스 비용이 예상보다 폭증하는 상황을 사전에 막으려면 Entitlement 구조와 Cockpit 운영,
콘텐츠 준비 중입니다.
abapGit, Jenkins, SAP Piper를 연결해 ABAP 코드 푸시 시 자동으로 빌드와 단위 테스트를 실행하는 CI 파이프라인 구성 3단계를 다룹니다.
UI5 모듈 API 설계 — public vs private 분리 패턴
1. 개요 및 핵심 포인트 UI5 애플리케이션을 BTP에 배포하면 사용자가 페이지를 열 때마다 sap-ui-core.js , Component-preload.js , 컨트롤 라이브러리 등 수백 KB의 정적 리소스가 네트워크로 흘러갑니다. 이 트래픽을 줄이고 초기 로딩을 1초 이하로 끌어
개요 및 핵심 포인트 SAPUI5/OpenUI5 애플리케이션에서 라우팅은 단순한 페이지 전환을 넘어 뷰 인스턴스의 생명주기(Lifecycle) 를 직접 제어하는 핵심 메커니즘입니다. 기본적으로 UI5 라우터는 한 번 생성된 뷰를 메모리에 캐시(cache)하여 재방문 시 빠르게 보여주지만
왜 Embedded Steampunk가 등장했는가 S/4HANA Cloud Private Edition과 On-Premise 시스템에서 클린코어(Clean Core) 원칙을 강제하기 위해 도입된 개발 모델이 바로 Embedded Steampunk 입니다. 기존의 Classic ABAP은
1. 개요 및 이 글의 목표 ABAP 객체지향 설계에서 클래스 간 결합도를 낮추는 두 가지 대표적인 기법이 의존성 주입(Dependency Injection, DI) 과 서비스 로케이터(Service Locator) 패턴입니다. 두 기법 모두 "객체가 자신이 필요로 하는 의존 객체를 직
1. 개요 및 이 글의 목표 ABAP Objects의 Singleton 패턴 은 특정 클래스의 인스턴스가 단일 세션 내에서 단 하나만 존재하도록 보장하는 객체 생성 패턴입니다. 설정 관리자, 캐시, 로거, 데이터베이스 연결과 같이 시스템 전반에서 동일한 상태를 공유해야 하는 컴포넌트를