Behavior Pool 몰아넣기 vs 그룹 분리 #shorts #SAP #RAP
📖 개요 RAP(ABAP RESTful Application Programming Model)에서 Behavior Pool은 BO의 두뇌 역할을 합니다. 프로젝트가 커지면 LHC_ 로컬 핸들러 클래스 하나에 FOR MODIFY, FOR READ, FOR DETERMINE, FOR VA
📖 개요 RAP(ABAP RESTful Application Programming Model)에서 Behavior Pool은 BO의 두뇌 역할을 합니다. 프로젝트가 커지면 LHC_ 로컬 핸들러 클래스 하나에 FOR MODIFY, FOR READ, FOR DETERMINE, FOR VA
📖 왜 JPY 청구서가 100배로 찍혔을까 일본 법인 청구서에 12,500엔이 나가야 하는데 화면에는 125엔, IDoc에는 1,250,000엔이 찍히는 사고. ABAP 금액 처리에서 가장 자주 터지는 유형이며, 원인은 거의 항상 하나입니다. 통화별 소수 자릿수를 정의하는 TCURX
📖 개요 — 이 글에서 다루는 것 SAP FI의 G/L 계정은 크게 미결 관리(Open Item Management, OIM) 계정 과 일반(잔액 관리) 계정 으로 나뉩니다. 같은 잔액이라도 두 유형은 "잔액을 어떻게 검증하고 소멸시키는가"가 완전히 다릅니다. 이 글은 SAP S/4H
개요: 검증 "없이" 열어둔 인터페이스가 만드는 사고 외부 시스템에서 회사코드, 플랜트, 판매조직 같은 조직 코드가 넘어오는 인터페이스를 만들 때, "호출하는 쪽이 알아서 맞는 값을 보내겠지"라고 가정하는 순간 사고의 씨앗이 심어집니다. RFC나 API로 노출된 함수는 화면 로직을 거치
📖 개요: 자연어 한 문장으로 SAP 업무를 움직이기 SAP 업무 자동화라고 하면 지금까지는 트랜잭션 코드(T-Code)를 외우고, 배치 잡을 걸고, 필요하면 ABAP 커스텀 개발까지 하는 그림이 일반적이었습니다. 이 글은 SAP의 생성형 AI 코파일럿인 Joule 을 SAP BTP
이 글이 답하는 질문 CREATE OBJECT 와 ?= 조합, 문법상 유효한데 왜 바꾸라고 할까? NEW 는 두 줄을 한 줄로 줄이는 것 이상의 가치가 있을까? CAST 와 ?= 는 뭐가 다르고, 다운캐스트 덤프는 어떻게 막을까? 변수를 구현 클래스 대신 인터페이스 타입으로 잡으면 뭐가
📖 개요: CAP Java 트랜잭션 롤백, 왜 자꾸 어긋나는가 SAP CAP(Cloud Application Programming Model) for Java는 개발자가 트랜잭션 경계를 직접 열고 닫지 않아도 되도록 ChangeSet 컨텍스트 라는 추상화를 제공합니다. 편리하지만, 이
📖 개요 및 핵심 체크리스트 SAP BTP(Business Technology Platform)를 처음 접하는 개발자 대부분은 "일단 무료 계정부터 만들자"로 시작합니다. 그런데 Trial과 Free Tier의 차이를 모른 채 계정을 만들면, 90일 뒤 작업물이 사라지거나, 리전을 잘
📖 이 글에서 다루는 것 RAP(ABAP RESTful Application Programming Model)으로 첫 앱을 만들면 대부분 코드 문법보다 활성화(Activate) 순서 에서 먼저 넘어집니다. CDS View는 멀쩡한데 Behavior Definition(BDEF)이 활성
개요 — 이 글에서 다루는 것 S/4HANA 전환 프로젝트에서 SAP Readiness Check 리포트를 열었을 때 Custom Code 영역이 빨간불로 가득한 경험은 대부분의 마이그레이션 팀이 겪는 통과 의례입니다. 이 글은 ECC 6.0에서 S/4HANA(2022/2023 에디션
📖 개요 및 핵심 체크포인트 ECC 시절에 만든 Classic BAdI와 CMOD/SMOD 기반 확장 코드를 그대로 S/4HANA로 가져오면, 컴파일은 통과해도 런타임에서 조용히 무너지는 경우가 많습니다. S/4HANA(예: S/4HANA 2023 On-Premise)에서는 커널 기반
📖 개요 및 이 글에서 얻을 수 있는 것 PFCG에서 역할을 만들 때마다 권한 오브젝트를 수동으로 하나씩 추가하고 계신가요? 그 방식은 당장은 빠르지만, 트랜잭션이 수백 개로 늘어나면 어떤 권한이 왜 들어갔는지 아무도 모르는 상태가 됩니다. 이 글은 SU24(권한 제안값 유지보수)를
버튼이 화면에 아예 나타나지 않는 이유 — 흔한 실패 시나리오 RAP(ABAP RESTful Application Programming Model)으로 List Report를 만들다 보면 "테이블 위쪽 툴바에 커스텀 버튼 하나만 추가하고 싶은데 아무리 해도 안 보인다"는 상황을 자주 만
📖 개요: 왜 Cloud의 권한은 "다르게" 설계되었나 ECC나 온프레미스 S/4HANA에서 PFCG로 권한을 관리해 온 실무자가 S/4HANA Cloud Public Edition을 처음 만나면 가장 먼저 당황하는 지점이 바로 권한 체계입니다. SU01도, PFCG 프로파일 생성도,
📖 개요 — SE80 경험자가 ADT 첫날 마주치는 3가지 벽 아직도 SE80에서 더블클릭으로 모든 개발을 하고 있다면, RAP(RESTful ABAP Programming Model)을 시작하는 순간 벽에 부딪히게 됩니다. CDS View Entity, Behavior Definit
📖 개요: 이 글에서 다루는 것 SAP UI5 초급 개발자가 가장 자주 저지르는 실수 중 하나는 addPage() 나 to() 호출로 화면을 직접 밀어 넣는 방식입니다. 이렇게 만들면 브라우저 뒤로 가기 버튼이 동작하지 않고, URL을 복사해 공유해도 항상 첫 화면만 열립니다. 이 글
1. CASE TYPE OF가 필요한 상황과 배경 상속 계층을 설계하다 보면 결국 마주치는 순간이 있습니다. 부모 클래스 타입의 참조 변수 하나에 여러 자식 객체가 담겨 흘러 들어오고, 그중 특정 타입일 때만 다르게 처리해야 하는 상황입니다. ABAP 7.40 이전에는 이럴 때 TRY
📖 개요: 이 글에서 다루는 내용 SAP Fiori에서 마스터-디테일 화면을 만들 때 가장 흔한 고민은 "리스트에서 항목을 클릭하면 전체 화면이 Object Page로 넘어가 버려서 목록 맥락을 잃는다"는 점입니다. Flexible Column Layout(이하 FCL)을 적용하면 별
📖 개요 — 이 글에서 다루는 것 SAP ERP 시절부터 유통 채널(Distribution Channel)은 TVTW 테이블에 저장되고, 텍스트는 TVTWT 에서 별도로 조회하는 방식이 일반적이었습니다. S/4HANA(온프레미스 및 Cloud 에디션)에서는 이 방식 대신 VDM(Vir
📖 개요와 이 글에서 다루는 내용 SAP S/4HANA에서 설비 정비·현장 서비스가 끝나면 "실제로 무엇을 얼마나 수행했는가"를 기록하는 문서가 서비스 확정(Service Confirmation) 입니다. 이를 조회하는 표준 릴리스 CDS 뷰가 I_ServiceConfirmation