LIPS JOIN 90%가 놓치는 실수 — I_DeliveryItem CDS #shorts #SAP #ABAP
개요 및 이 글에서 얻어갈 것 SAP S/4HANA 환경에서 배송(Outbound Delivery) 데이터를 조회할 때, 여전히 관행처럼 LIPS(배송 아이템)와 LIKP(배송 헤더) 물리 테이블을 직접 SELECT하는 코드가 많습니다. 이 접근은 몇 년 전까지는 사실상 표준이었지만,
개요 및 이 글에서 얻어갈 것 SAP S/4HANA 환경에서 배송(Outbound Delivery) 데이터를 조회할 때, 여전히 관행처럼 LIPS(배송 아이템)와 LIKP(배송 헤더) 물리 테이블을 직접 SELECT하는 코드가 많습니다. 이 접근은 몇 년 전까지는 사실상 표준이었지만,
개요 및 이 글에서 얻어갈 것 SAP S/4HANA 환경에서 자재 재고를 조회할 때 여전히 MARD 테이블을 직접 SELECT 하는 코드가 남아있는 프로젝트가 많습니다. 하지만 S/4HANA로 넘어오면서 재고 데이터의 저장 구조가 변경되었고, MATDOC 기반의 aggregation 로
이 글에서 다루는 것과 도달 지점 S/4HANA 환경에서 공급사 인보이스(Supplier Invoice, MIRO/MIR7로 등록된 문서)를 조회할 때 여전히 RBKP·RSEG 테이블을 직접 SELECT하는 코드가 많습니다. 이 접근은 R/3 시대의 유산이며, S/4HANA 이후에는 릴
이 글의 방향과 확인 포인트 ABAP 개발자라면 한 번쯤은 "여기서 FIELD-SYMBOLS를 써야 하나, 아니면 REF TO로 참조 변수를 만들어야 하나?" 하는 갈림길에 서게 됩니다. 둘 다 "값을 복사하지 않고 원본을 가리킨다"는 공통점이 있지만, 내부 동작 방식과 적합한 시나리오
개요 및 실습 목표 SAP S/4HANA 도입 이후에도 여전히 많은 개발자가 구매 오더 정보를 조회할 때 EKKO (구매 오더 헤더)와 EKPO (구매 오더 아이템) 테이블을 직접 SELECT 하는 관행을 유지하고 있습니다. 이 방식은 익숙하지만 S/4HANA의 Virtual Data
개요 및 이 글에서 다루는 것 S/4HANA 전환 이후 판매 오더 라인 아이템 조회의 표준 접근 방식은 더 이상 VBAP 직접 SELECT가 아닙니다. SAP는 Virtual Data Model(VDM) 계층에서 I_SalesOrderItem 이라는 CDS 뷰를 제공하며, 이를 통해 필
이 글이 답하는 질문 VBAP를 직접 SELECT하던 코드는 왜 S/4HANA에서 문제가 되는가? I_SalesOrderItem CDS 뷰가 제공하는 필드와 관계 구조는 어떻게 되어 있나? 기존 VBAP 쿼리를 I_SalesOrderItem으로 옮길 때 필드 매핑은 어떻게 하나? 필터/
개요 및 이 글에서 다루는 것 SAP S/4HANA를 다루다 보면 I_Material 과 I_Product 라는 두 개의 CDS 뷰를 자주 마주치게 됩니다. 둘 다 자재 마스터의 헤더 정보를 노출하고, 내부적으로는 대부분 MARA 테이블에서 데이터를 가져옵니다. 그런데도 SAP는 왜 두
이 글에서 다루는 내용과 도달 지점 이 글은 S/4HANA 재무 회계 영역에서 지불 문서(Payment Document)를 조회할 때 흔히 저지르는 실수인 BKPF 테이블 직접 JOIN 방식을 벗어나, SAP가 제공하는 표준 CDS 뷰 I_PaymentDocument 를 활용해 데이터
이 글에서 다루는 범위와 도달점 SAP S/4HANA의 PM(Plant Maintenance) 모듈에서 정비 오더는 설비 고장, 예방 정비, 검사 작업을 관리하는 핵심 트랜잭션 객체입니다. 이 글은 I_MaintenanceOrder CDS 뷰가 레거시 AUFK 테이블을 어떻게 의미론적으
저장 위치(Storage Location)란 — 물류 구조에서의 역할 SAP 물류 모듈에서 저장 위치(Storage Location)는 공장(Plant) 하위에 존재하는 재고 관리의 최소 단위입니다. 하나의 Plant 안에 여러 개의 Storage Location이 존재할 수 있으며,
개요 및 핵심 포인트 구매·조달 모듈에서 공급사(Vendor/Supplier) 정보를 가져올 때 여전히 SELECT * FROM lfa1 코드를 그대로 유지하고 있다면, S/4HANA 전환 시점에 큰 리팩터링 부담을 떠안게 됩니다. SAP는 S/4HANA 이후 Virtual Data M
개요 및 이 글에서 다루는 것 S/4HANA 환경에서 회계 라인 아이템을 조회할 때, 여전히 많은 개발자가 습관적으로 SELECT ... FROM bseg 를 작성합니다. 하지만 S/4HANA에서는 이 접근이 매우 위험합니다. BSEG는 여전히 존재하지만, ACDOCA(Universal
MSEG 직접 조회를 멈춰야 하는 순간 SAP S/4HANA 도입 후에도 자재 문서(GR/GI/전송)를 조회할 때 여전히 MSEG 와 MKPF 를 INNER JOIN 으로 엮는 코드를 자주 만납니다. 이 방식은 ECC 시절에는 표준이었지만, ABAP Cloud 환경에서는 릴리스 미보장·
이 예제로 얻는 것 SAP S/4HANA 환경에서 구매 요청(Purchase Requisition) 데이터를 조회할 때, 전통적으로는 EBAN 테이블을 직접 SELECT 해왔습니다. 하지만 ABAP Cloud, RAP, Fiori Elements 시대에는 I_PurchaseRequisi
이 예제로 무엇을 얻어갈 수 있는가 SAP S/4HANA 환경에서 구매 오더 아이템 데이터를 다룰 때 개발자들이 가장 먼저 마주치는 선택은 "EKPO를 직접 SELECT할 것인가, 아니면 I_PurchaseOrderItem CDS 뷰를 쓸 것인가"입니다. 이 글에서는 S/4HANA Vi
개요와 이 글에서 얻어갈 것 S/4HANA 환경에서 판매 오더 헤더 데이터를 조회할 때 여전히 VBAK 테이블을 직접 SELECT 하는 코드를 자주 보게 됩니다. 하지만 SAP는 S/4HANA 이후로 판매 오더 헤더 정보를 표준 CDS 뷰인 I_SalesOrder 를 통해 노출하도록 아
개요와 이 글에서 얻어갈 것 ABAP CDS 뷰는 SAP S/4HANA 개발의 심장부에 해당합니다. 하지만 CDS 뷰에 담긴 조인 조건, 필드 계산식, 어소시에이션, Access Control 로직이 복잡해질수록 "실제 DB 데이터로만 검증할 수밖에 없다"는 관성이 생깁니다. 그 결과
개요와 이 글에서 다룰 범위 CDS(Core Data Services) 기반 애플리케이션에서 데이터 노출은 뷰 정의만으로 끝나지 않습니다. 어떤 사용자가 어떤 로우(row)를 조회할 수 있는지, 어떤 조직·회사코드·판매조직에 속한 데이터만 볼 수 있는지 결정하는 계층이 필요합니다. 이
이 글에서 다루는 내용과 도달 지점 Fiori Elements 앱에서 사용자가 입력 필드 옆의 돋보기 아이콘(F4)을 눌렀을 때 뜨는 값 도움말(Value Help)은 UX 품질을 좌우하는 핵심 요소입니다. 이 글은 ABAP CDS View에 @Consumption.ValueHelpDe