SM13 없이 놓치는 업데이트 실패 3가지 #shorts #SAP #ABAP
업데이트가 실패했는데 화면은 "성공"이라고 말하는 이유 ABAP에서 CALL FUNCTION ... IN UPDATE TASK 로 등록한 업데이트 모듈이 실행 중에 예외로 죽으면, 정작 그 트랜잭션을 실행한 사용자 화면에는 아무 일도 일어나지 않습니다. 사용자는 성공 메시지를 보고 자리
업데이트가 실패했는데 화면은 "성공"이라고 말하는 이유 ABAP에서 CALL FUNCTION ... IN UPDATE TASK 로 등록한 업데이트 모듈이 실행 중에 예외로 죽으면, 정작 그 트랜잭션을 실행한 사용자 화면에는 아무 일도 일어나지 않습니다. 사용자는 성공 메시지를 보고 자리
📖 개요: BAPI는 성공했다는데 테이블엔 데이터가 없다? ABAP 입문자가 가장 자주 겪는 미스터리 중 하나가 이것입니다. BAPI를 호출했고, RETURN에 에러도 없었고, 디버거로 보면 오더 번호까지 반환됐는데 — 정작 VBAK 테이블을 조회하면 아무것도 없습니다. 원인은 대부분
📖 개요: 이 글에서 다루는 것 RAP(RESTful Application Programming Model)에서 Early Numbering 을 직접 구현하면, 사용자가 저장 버튼을 누르기 전에 이미 문서번호가 확정됩니다. 편리해 보이지만, 두 사용자가 동시에 생성 트랜잭션을 시작하는
개요 — 이 글에서 확인할 내용 RAP(ABAP RESTful Application Programming Model)에서 액션이 실패해 트랜잭션 전체가 롤백되었는데, 다음 문서를 생성하면 번호가 하나 건너뛰어 있는 현상을 본 적이 있을 것입니다. 예를 들어 판매오더 SO-1007 생성이
개요와 목표 체크리스트 SAP Joule은 SAP 애플리케이션 전반에 내장되는 생성형 AI 코파일럿입니다. 이 글은 기존 레거시 챗봇(intent/webhook 방식)과 비교하면서, Joule Studio에서 커스텀 액션(Custom Action) 을 등록하고 SAP BTP CAP 서비
📖 개요: Draft 저장 로직, 왜 자꾸 오해가 생길까 SAP CAP(Cloud Application Programming Model) Node.js 런타임에서 Fiori Elements 앱을 만들 때 가장 자주 마주치는 기능이 바로 Draft(초안) 입니다. 어노테이션 한 줄이면
왜 Joule 커스텀 액션인가 SAP Joule은 단순한 사내 챗봇이 아니라, SAP 애플리케이션 전반에 걸쳐 동작하는 코파일럿 계층입니다. 이 글은 Joule Studio에서 커스텀 액션(스킬)을 정의하고 실제 SAP 백엔드 — RAP 액션과 CAP 서비스 — 를 호출하도록 연동하는
📖 개요: 트라이얼 만료, 정말 큰일일까 SAP BTP 트라이얼 계정을 쓰다 보면 어느 날 콕핏 상단에 "트라이얼이 곧 종료됩니다"라는 배너가 뜹니다. 이때 많은 분들이 "큰일 났다, 다 날아가는 건가?"라고 당황하는데, 결론부터 말하면 미리 준비하면 큰일이 아니고, 준비 없이 만료일
이 글이 답하는 질문 예외 클래스를 만들었는데 운영 로그에 메시지가 비어 있는 이유는 무엇인가? RAISE EXCEPTION TYPE 과 RAISE EXCEPTION NEW 는 무엇이 다른가? 예외 클래스 계층을 어디까지 나누고, 어디서 합쳐야 하는가? 호출자가 복구할 수 있는 예외와
📖 개요 — 이 글에서 얻어갈 것 RAP(ABAP RESTful Application Programming Model)으로 트랜잭셔널 앱을 설계할 때 가장 먼저 마주치는 갈림길이 관리형(managed)과 비관리형(unmanaged)의 선택입니다. 관리형은 프레임워크가 CRUD·버퍼·저
왜 CAP Node.js 인증 미들웨어를 다시 봐야 하는가 CAP(Cloud Application Programming Model) Node.js 서비스는 기본적으로 @(requires:'authenticated-user') 같은 CDS 어노테이션만으로도 인증이 걸린 것처럼 보인다. 문
개요: 이 글에서 다루는 내용 SAP BTP에서 CAP(Cloud Application Programming Model) Node.js 프로젝트를 시작할 때 가장 먼저 마주치는 고민은 "폴더를 어떻게 나누고, 어떤 파일을 어디에 두어야 하는가"입니다. CAP는 관례 기반(conventi
새벽 배치가 멈춘 날 — RFC 타임아웃과의 첫 만남 새벽 2시, 물류 시스템의 재고 동기화 배치가 "TIME_OUT" 덤프를 남기고 멈췄다는 알림을 받아본 적이 있다면, 이 글이 도움이 될 것입니다. ERP에서 창고관리 시스템으로 RFC를 호출하는 커스텀 함수모듈 Z_WM_GET_BI
📖 이 글에서 다루는 것 SAP MM 구매 프로세스에서 승인(Release Strategy)을 구매요청(PR)에 걸 것인지 구매오더(PO)에 걸 것인지는 결재 흐름 전체를 좌우하는 설계 결정입니다. S/4HANA 2023 FPS02를 기준으로 두 문서의 승인 구조 차이와 설정 절차,
개요: 왜 트랜잭션 롤백을 정확히 알아야 하는가 CAP(SAP Cloud Application Programming Model) Node.js 런타임은 요청 단위로 트랜잭션을 자동 관리해 줍니다. 덕분에 대부분의 경우 개발자가 커밋과 롤백을 직접 호출할 일이 없지만, 바로 그 편리함 때
이 글이 답하는 질문 BTP 트라이얼은 언제 만료되고, 만료되면 정확히 무엇이 사라지나? "정지"와 "삭제"는 다른 상태인가 — 되살릴 수 있는 구간은 어디까지인가? HANA Cloud 인스턴스는 왜 며칠만 안 써도 멈춰 있나? 날리기 전에 무엇을 백업해 두어야 다시 세울 수 있나? 계
개요 및 이 글에서 다루는 것 SAP CAP(Cloud Application Programming Model) Node.js 런타임에서 Custom Handler를 작성하다 보면, 비즈니스 규칙 위반·외부 시스템 장애·데이터 정합성 문제를 어떻게 클라이언트에 전달할지 고민하게 됩니다.
📖 개요 — 이 글에서 다루는 것 SAP SD에서 판매 문서를 하나 만들려면 반드시 영업영역(Sales Area) 을 통과해야 합니다. 영업영역은 판매조직(VKORG), 유통경로(VTWEG), 제품군(SPART) 세 요소의 조합 이며, 이 조합이 고객마스터 접근, 가격 조건, 판매전표
📖 개요와 이 글의 목표 SAP QM(품질관리)에서 검사로트(Inspection Lot)는 "이 재고를 품질검사 대상으로 잡았다"는 문서입니다. 실무에서 가장 많이 받는 질문이 "입고했는데 왜 검사로트가 안 생기죠?"인데, 원인은 거의 항상 세 가지 조건 중 하나가 빠져 있기 때문입니
이 글에서 다루는 내용 SAP를 처음 시작한 개발자가 가장 먼저 부딪히는 벽은 ABAP 문법이 아니라 수백 개의 트랜잭션 코드 입니다. SE11과 SE16은 뭐가 다른지, 덤프가 나면 ST22를 봐야 하는지 SM21을 봐야 하는지, 테이블 데이터는 SM30으로 고치는 게 맞는지 — 실무