req.error 써도 왜 안 멈추지? #shorts #SAP #CAPforNode
들어가며: 이 글에서 다루는 것 CAP(Cloud Application Programming Model) Node.js 런타임에서 에러 핸들링은 겉보기엔 단순합니다. req.error() 와 req.reject() 두 API만 알면 될 것 같지만, 실제 프로젝트에서는 "에러를 던졌는데
들어가며: 이 글에서 다루는 것 CAP(Cloud Application Programming Model) Node.js 런타임에서 에러 핸들링은 겉보기엔 단순합니다. req.error() 와 req.reject() 두 API만 알면 될 것 같지만, 실제 프로젝트에서는 "에러를 던졌는데
개요: 왜 Joule에게 같은 질문을 해도 결과가 다를까 SAP Joule은 S/4HANA Cloud, SuccessFactors, SAP Build 등 SAP 애플리케이션 전반에 탑재되는 AI 코파일럿입니다. 그런데 실무에서 Joule을 도입한 팀들이 공통적으로 겪는 문제가 있습니다.
이 글이 답하는 질문 MMBE에서 본 재고와 LS26에서 본 재고가 다르다는 문의는 SAP 물류 운영에서 가장 자주 올라오는 이슈 중 하나입니다. 원인은 대부분 하나로 수렴합니다. IM(Inventory Management)과 WM(Warehouse Management)이 같은 재고를
왜 평가클래스 하나가 회계전표를 바꾸는가 — 이 글에서 다루는 것 구매 담당자가 MIGO로 입고를 저장하는 순간, SAP는 사람에게 계정과목을 묻지 않고 스스로 재고 계정을 골라 회계전표를 만듭니다. 이 자동 판단의 출발점이 자재유형(Material Type)이고, 실제로 계정을 지목하
입고 한 건이 G/L 계정을 스스로 찾아가는 과정, 왜 알아야 하나 MIGO에서 입고를 저장하는 순간 재무 전표가 자동으로 생성되고, 차변에는 재고 계정, 대변에는 GR/IR 계정이 정확히 잡힙니다. 사용자는 계정번호를 한 글자도 입력하지 않았는데 말입니다. 이 글은 그 자동전기의 심장
이 글에서 다룰 것 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