Event Mesh — Durable vs Direct 구독 #shorts #SAP #BTP
이 글에서 다룰 것 BTP에서 마이크로서비스를 REST 호출 체인으로만 엮으면 한 서비스의 장애가 전체로 번집니다. SAP Event Mesh는 이 결합을 끊는 Pub/Sub 계층입니다. 이 글은 토픽(topic) 구조, 큐(queue) 설정, 구독(subscription) 패턴 세 축
이 글에서 다룰 것 BTP에서 마이크로서비스를 REST 호출 체인으로만 엮으면 한 서비스의 장애가 전체로 번집니다. SAP Event Mesh는 이 결합을 끊는 Pub/Sub 계층입니다. 이 글은 토픽(topic) 구조, 큐(queue) 설정, 구독(subscription) 패턴 세 축
이 글이 답하는 질문 화면에 값을 그대로 뿌리는 경우는 거의 없습니다. 상태 코드를 한글로 바꾸고, 금액에 통화를 붙이고, 조건에 따라 색을 달리해야 합니다. 이때 선택지가 둘 있습니다. XML 뷰 안에 표현식을 직접 쓰는 방법과, 자바스크립트 함수로 빼는 방법입니다. 둘 다 되기 때문
📖 개요: 사용자가 온프레미스로 안 넘어갈 때 어디부터 봐야 하는가 SAP BTP 앱에서 온프레미스 S/4HANA를 호출할 때 Principal Propagation(주체 전파)을 켜면, 클라우드에서 로그인한 사용자의 신원이 백엔드까지 그대로 전달되어 백엔드 권한(PFCG)으로 데이터
왜 Destination 인증 방식 선택이 중요한가 SAP BTP에서 외부 시스템을 호출할 때 Destination Service는 "어디로, 어떤 자격으로" 연결할지를 정의합니다. 문제는 인증 타입을 무엇으로 고르느냐에 따라 백엔드 감사 로그에 남는 주체 가 완전히 달라진다는 점입니다
이 글이 답하는 질문 입고 처리를 분명히 했는데 창고 담당자는 "재고가 안 보인다"고 하고, 구매 담당자는 "왜 아직 송장 처리가 안 되냐"고 합니다. 시스템을 열어보면 수량은 분명히 들어와 있습니다. 이런 상황의 대부분은 어떤 이동유형으로 입고했는지 에서 갈립니다. 입고를 한 번에 끝
이 글에서 다루는 내용과 도달 목표 SAP CO(관리회계)에서 월말 결산 때 공통비를 코스트센터 간에 넘기는 대표적인 두 가지 방식이 분배(Distribution)와 배부(Assessment)입니다. 이름이 비슷해 혼용되기 쉽지만, 원가요소(Cost Element)를 다루는 방식이 근본
📖 왜 원가요소를 두 종류로 나누는가 SAP CO(관리회계)를 처음 설정하다 보면 반드시 마주치는 질문이 있습니다. "비용 계정이 이미 FI에 있는데 왜 원가요소를 또 만들고, 심지어 1차와 2차로 나누는가?" 이 글은 그 설계 철학을 파고들어, 1차 원가요소(Primary Cost
이 글에서 다루는 내용 CAP for Java 이벤트 핸들러를 작성하다 보면 "지금 들어온 요청이 어떤 엔티티를, 어떤 키로, 어떤 조건으로 조회하는가"를 알아야 하는 순간이 반드시 옵니다. 이때 cqn.toString() 결과를 문자열로 잘라 쓰는 코드는 당장은 동작해도 확장 시 반드
개요: 왜 모든 오류가 500으로 나가는가 CAP Java로 서비스를 개발하다 보면, 핸들러 안에서 발생한 예외가 아무 처리 없이 그대로 올라가 클라이언트에게 500 Internal Server Error 로 반환되는 상황을 자주 만납니다. 재고 부족처럼 명백한 "업무 오류"조차 500
이 글이 답하는 질문 목록에서 상세 화면으로 넘어가는 것까지는 잘 됩니다. 그런데 같은 상세 화면을 "필터 조건 없이" 열어야 하는 요건이 생기면 갑자기 라우트가 안 잡힙니다. 주소창에 값 하나가 빠졌을 뿐인데 빈 화면이 뜨거나 notFound로 떨어집니다. 원인은 대부분 라우트 패턴에
📖 개요 — 정산을 안 하면 무슨 일이 생기는가 내부오더(Internal Order)는 마케팅 행사, 설비 소모성 수리, 사내 프로젝트처럼 임시로 원가를 모아두는 그릇입니다. 그런데 이 그릇은 어디까지나 중간 집계 객체 라서, 기말에는 모아둔 원가를 최종 수신자(코스트센터, 자산, G
📖 개요 RAP(ABAP RESTful Application Programming Model)에서 Behavior Pool은 BO의 두뇌 역할을 합니다. 프로젝트가 커지면 LHC_ 로컬 핸들러 클래스 하나에 FOR MODIFY, FOR READ, FOR DETERMINE, FOR VA
이 글이 답하는 질문 비용 전표를 입력할 때 "이 비용을 코스트센터에 담아야 하나, 내부오더로 받아야 하나"에서 멈칫하는 순간이 있습니다. 둘 다 CO에서 비용을 받는 원가대상이고, 둘 다 실적을 조회할 수 있으며, 둘 다 예산을 걸 수 있습니다. 그래서 처음에는 아무 쪽이나 써도 될
📖 개요 — 마감 기간이 왜 두 개인가 월초마다 반복되는 미스터리가 있습니다. 회계팀은 분명히 전기기간을 열어놨다고 하는데, 자재 입고(MIGO)를 치면 "기간이 마감되었습니다" 메시지가 뜨는 상황입니다. 원인은 SAP ERP(ECC 6.0)와 S/4HANA가 FI 전기기간(OB52)
📖 왜 JPY 청구서가 100배로 찍혔을까 일본 법인 청구서에 12,500엔이 나가야 하는데 화면에는 125엔, IDoc에는 1,250,000엔이 찍히는 사고. ABAP 금액 처리에서 가장 자주 터지는 유형이며, 원인은 거의 항상 하나입니다. 통화별 소수 자릿수를 정의하는 TCURX
📖 개요: 왜 "그냥 12로 나누면" 안 되는가 자재를 낱개(EA)로 관리하면서 출하는 박스(KAR), 창고 적치는 팔레트(PAL)로 하는 것은 물류 현장의 일상입니다. 이때 ABAP 개발자가 가장 흔히 저지르는 실수가 lv_box = lv_ea / 12 같은 하드코딩 나눗셈입니다.
📖 개요 — 이 글에서 다루는 것 SAP FI의 G/L 계정은 크게 미결 관리(Open Item Management, OIM) 계정 과 일반(잔액 관리) 계정 으로 나뉩니다. 같은 잔액이라도 두 유형은 "잔액을 어떻게 검증하고 소멸시키는가"가 완전히 다릅니다. 이 글은 SAP S/4H
📖 개요: 선급금이 외상매입금이 아닌 다른 계정에 잡히는 이유 SAP FI에서 벤더에게 선급금을 지급하고 나서 재무제표나 G/L 잔액을 조회하면, 분명 벤더 앞으로 전기했는데 외상매입금 계정이 아닌 전혀 다른 계정에 금액이 표시되는 것을 보게 됩니다. 처음 접하면 "전기가 잘못된 건가
📖 개요 — 이 글에서 확인할 것 수출 대금 청구 전표를 USD로 입력했는데, 원화(KRW) 금액과 그룹통화(EUR) 금액이 각각 다른 환율로 계산된 것처럼 보인 적이 있다면, 원인은 대부분 환산 시점과 환산 기준의 차이 에 있습니다. SAP FI는 하나의 전표에 최소 두 개, 많게는
개요: 검증 "없이" 열어둔 인터페이스가 만드는 사고 외부 시스템에서 회사코드, 플랜트, 판매조직 같은 조직 코드가 넘어오는 인터페이스를 만들 때, "호출하는 쪽이 알아서 맞는 값을 보내겠지"라고 가정하는 순간 사고의 씨앗이 심어집니다. RFC나 API로 노출된 함수는 화면 로직을 거치