CAP Buffer vs ReadableStream 차이 #shorts #SAP #CAP
이 글이 답하는 질문 CAP Node.js 서비스에서 수백 MB짜리 PDF·이미지·CSV를 응답할 때 Buffer로 통째로 읽어 메모리가 터진 경험이 있다면, 이 글이 해결책입니다. ReadableStream 기반 스트리밍 응답으로 메모리 사용량을 일정하게 유지하는 방법을 다룹니다. C
이 글이 답하는 질문 CAP Node.js 서비스에서 수백 MB짜리 PDF·이미지·CSV를 응답할 때 Buffer로 통째로 읽어 메모리가 터진 경험이 있다면, 이 글이 해결책입니다. ReadableStream 기반 스트리밍 응답으로 메모리 사용량을 일정하게 유지하는 방법을 다룹니다. C
📖 이 글에서 다루는 내용과 목표 UI5 앱에서 버튼 라벨과 메시지를 뷰에 하드코딩하면, 영어 사용자에게도 한국어 화면이 그대로 노출되고 문구 하나를 바꿀 때마다 뷰 파일을 전부 뒤져야 합니다. 이 글은 SAPUI5의 i18n(ResourceModel) 모델과 .properties 파
1. Execution Plan을 못 읽으면 왜 큰일인가 SAP HANA는 인메모리 컬럼 스토어 덕분에 웬만한 쿼리는 빠르게 처리하지만, 데이터가 수억 건으로 늘어나거나 조인이 복잡해지면 "HANA인데 왜 느리지?"라는 상황이 반드시 옵니다. 이때 감으로 인덱스를 추가하거나 힌트를 남발
📖 개요 — SE80 경험자가 ADT 첫날 마주치는 3가지 벽 아직도 SE80에서 더블클릭으로 모든 개발을 하고 있다면, RAP(RESTful ABAP Programming Model)을 시작하는 순간 벽에 부딪히게 됩니다. CDS View Entity, Behavior Definit
1. ST01이 필요한 이유 — SU53의 한계와 트레이스의 힘 권한 오류가 발생하면 대부분의 관리자는 SU53부터 실행합니다. 그러나 SU53은 해당 사용자의 마지막 실패한 권한 체크 하나 만 보여줍니다. 실제 업무 트랜잭션은 한 번의 실행에서 수십 개의 AUTHORITY-CHECK를
📖 이 글에서 다루는 내용과 목표 온프레미스 Fiori Launchpad를 시스템마다 따로 관리하다 보면 카탈로그·역할·테마가 제각각 흩어지고, S/4HANA·SuccessFactors·커스텀 UI5 앱을 한 화면에 모으는 일이 점점 어려워집니다. SAP Build Work Zone,
Integration Suite 운영의 숨겨진 위험 SAP BTP Integration Suite(Cloud Integration 캐퍼빌리티)로 iFlow를 배포하고 나면 "연결됐으니 끝"이라고 생각하기 쉽습니다. 하지만 실제 운영 환경에서는 수신 시스템의 일시적 다운, 인증서 만료,
SOD란 무엇인가 — 직무 분리가 무너지면 벌어지는 일 SOD(Segregation of Duties, 직무 분리)는 한 사람이 하나의 비즈니스 프로세스를 처음부터 끝까지 혼자 처리하지 못하도록 권한을 나누는 내부통제 원칙입니다. 예를 들어 공급업체 마스터를 생성하는 사람 이 대금 지급
📖 개요: 이 글에서 다루는 것 서브쿼리가 3중, 4중으로 중첩된 HANA SQL을 유지보수해 본 적이 있다면, WITH 절(CTE, Common Table Expression)이 왜 "가독성 끝판왕"이라 불리는지 바로 공감할 수 있습니다. 이 글은 SAP HANA(온프레미스 2.0
📖 개요: 이 글에서 다루는 것 SAP UI5 초급 개발자가 가장 자주 저지르는 실수 중 하나는 addPage() 나 to() 호출로 화면을 직접 밀어 넣는 방식입니다. 이렇게 만들면 브라우저 뒤로 가기 버튼이 동작하지 않고, URL을 복사해 공유해도 항상 첫 화면만 열립니다. 이 글
1. CASE TYPE OF가 필요한 상황과 배경 상속 계층을 설계하다 보면 결국 마주치는 순간이 있습니다. 부모 클래스 타입의 참조 변수 하나에 여러 자식 객체가 담겨 흘러 들어오고, 그중 특정 타입일 때만 다르게 처리해야 하는 상황입니다. ABAP 7.40 이전에는 이럴 때 TRY
1. Window 함수가 필요한 순간 — 서브쿼리 지옥에서 벗어나기 SAP HANA에서 "카테고리별 매출 상위 3개 제품"을 뽑아야 할 때, Window 함수를 모르면 보통 상관 서브쿼리(correlated subquery)나 셀프 조인으로 해결하게 됩니다. 문제는 이 방식이 행마다 서
이 글에서 다루는 내용 월요일 아침, 급여 마감 담당자가 "로그인이 안 돼요"라고 외치는 순간 Basis 담당자의 하루가 시작됩니다. SU01은 SAP NetWeaver AS ABAP의 사용자 계정을 생성·수정·잠금 해제하는 핵심 트랜잭션이며, 계정 잠금 대응 속도가 곧 업무 연속성입니
📖 개요: 인증 없는 CAP 서비스가 위험한 이유 CAP(Cloud Application Programming Model) 서비스는 어노테이션 한 줄 없이도 배포가 됩니다. 문제는 바로 그 지점입니다. @requires 가 없는 서비스는 BTP에 올라간 순간부터 OData 엔드포인트
📖 개요 — 이 글에서 다루는 내용 ABAP 시스템에서 외부 REST API를 호출해야 하는 순간은 반드시 옵니다. 환율 조회, 배송 추적, 사내 미들웨어 연동까지, 온프레미스 SAP ECC / S/4HANA(온프레미스) 환경에서는 CL_HTTP_CLIENT 가 사실상 표준 진입점입니
📖 개요: 이 글에서 다루는 내용 SAP Fiori에서 마스터-디테일 화면을 만들 때 가장 흔한 고민은 "리스트에서 항목을 클릭하면 전체 화면이 Object Page로 넘어가 버려서 목록 맥락을 잃는다"는 점입니다. Flexible Column Layout(이하 FCL)을 적용하면 별
1. RAP에서 집계 데이터가 필요한 이유 RAP(ABAP RESTful Application Programming Model)로 만든 트랜잭션 앱은 개별 레코드의 생성·수정에는 강하지만, 실무에서는 "이번 달 영업조직별 매출 합계", "고객별 주문 건수" 같은 집계 관점 의 화면이 반
📖 개요: 이 글에서 다루는 내용 비용 센터 계층, 예산 항목 트리, 프로젝트 WBS처럼 부모-자식 관계가 재귀적으로 반복되는 데이터 는 엔터프라이즈 애플리케이션에서 가장 자주 등장하는 구조 중 하나입니다. 그런데 RAP(RESTful ABAP Programming Model)은 기본
📖 이 글에서 다루는 것 SAP 권한 설계의 중심에는 PFCG(Profile Generator) 트랜잭션이 있습니다. 같은 PFCG 안에서도 Single Role, Composite Role, Derived Role은 내부 동작과 적용 시점이 완전히 다르며, 이 선택을 잘못하면 권한
📖 개요: MTX 없이 멀티테넌트를 만들면 벌어지는 일 SaaS 제품을 CAP(Cloud Application Programming Model)으로 만들 때 가장 먼저 부딪히는 벽이 멀티테넌시입니다. "테이블에 tenant_id 컬럼 하나 추가하면 되지 않나?"라는 접근은 초기에 빠르