SERIES_GENERATE vs 캘린더 테이블 — 3가지 차이 #shorts #SAP #HANA
📖 개요 및 이 글에서 다루는 내용 매출 리포트를 만들 때 주문이 없는 날짜가 통째로 사라져 차트가 끊겨 보인 경험이 있다면, 이 글이 해결책이 됩니다. SAP HANA의 SERIES_GENERATE 계열 함수는 시작값·종료값·증가 간격만 지정하면 날짜, 타임스탬프, 숫자 시퀀스를 테
📖 개요 및 이 글에서 다루는 내용 매출 리포트를 만들 때 주문이 없는 날짜가 통째로 사라져 차트가 끊겨 보인 경험이 있다면, 이 글이 해결책이 됩니다. SAP HANA의 SERIES_GENERATE 계열 함수는 시작값·종료값·증가 간격만 지정하면 날짜, 타임스탬프, 숫자 시퀀스를 테
SAP GRC Access Control과 액세스 거버넌스가 필요한 이유 SOX(사베인스-옥슬리법)나 내부회계관리제도 감사에서 가장 자주 지적되는 항목이 바로 권한 부여 프로세스의 통제 부재 입니다. "누가, 언제, 어떤 근거로, 누구의 승인을 받아 이 권한을 받았는가"에 답하지 못하면
📖 개요: Cross-App Navigation에서 파라미터가 왜 생명선인가 SAP Fiori Launchpad(FLP) 환경에서는 하나의 업무가 여러 앱을 넘나들며 완성됩니다. 판매 오더 목록 앱에서 특정 오더를 선택해 청구서 조회 앱으로 이동할 때, 오더 번호 같은 컨텍스트 파라미
📖 개요와 목표 CAP Node.js 프로젝트에서 jest만 설치하고 서비스 핸들러를 테스트하면 service is undefined , no model loaded 같은 에러로 시작부터 막히는 경우가 많습니다. 이 글은 구매 주문(PurchaseOrder) 서비스를 예제로, @sap
1. 대용량 테이블의 조회 성능 문제 — 왜 파티셔닝이 필요한가 SAP HANA 컬럼 스토어 테이블은 인메모리 구조 덕분에 기본 조회 성능이 뛰어나지만, 데이터가 수억 건 단위로 쌓이기 시작하면 상황이 달라집니다. 가장 먼저 부딪히는 것은 단일 컬럼 스토어 테이블(또는 파티션)당 약 2
버튼이 화면에 아예 나타나지 않는 이유 — 흔한 실패 시나리오 RAP(ABAP RESTful Application Programming Model)으로 List Report를 만들다 보면 "테이블 위쪽 툴바에 커스텀 버튼 하나만 추가하고 싶은데 아무리 해도 안 보인다"는 상황을 자주 만
📖 개요와 이 글의 목표 SAPUI5로 List Report 화면을 freestyle로 직접 그리다 보면 필터바, 테이블, 변형 관리(Variant Management), 초안(Draft) 처리까지 반복 구현하게 됩니다. Fiori Elements는 이 반복을 어노테이션 기반 템플릿으
개요 — jest만으로는 왜 CAP 테스트가 실패하는가 SAP CAP(Cloud Application Programming Model) 프로젝트에서 jest를 설치하고 서비스 핸들러를 테스트하려다 Cannot read properties of undefined , No service d
RAP BO를 테스트하지 않으면 생기는 일 — 이 글의 목표 RAP(ABAP RESTful Application Programming Model)으로 Business Object를 만들다 보면 Validation, Determination, Action 로직이 Behavior Imple
RAP BO를 테스트하지 않으면 생기는 일 — 이 글의 목표 RAP(ABAP RESTful Application Programming Model)으로 Business Object를 만들다 보면 Validation, Determination, Action 로직이 Behavior Imple
📖 이 글에서 다루는 내용과 목표 UI5 앱에서 버튼 라벨과 메시지를 뷰에 하드코딩하면, 영어 사용자에게도 한국어 화면이 그대로 노출되고 문구 하나를 바꿀 때마다 뷰 파일을 전부 뒤져야 합니다. 이 글은 SAPUI5의 i18n(ResourceModel) 모델과 .properties 파
📖 개요 — 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
1. CASE TYPE OF가 필요한 상황과 배경 상속 계층을 설계하다 보면 결국 마주치는 순간이 있습니다. 부모 클래스 타입의 참조 변수 하나에 여러 자식 객체가 담겨 흘러 들어오고, 그중 특정 타입일 때만 다르게 처리해야 하는 상황입니다. ABAP 7.40 이전에는 이럴 때 TRY
1. Window 함수가 필요한 순간 — 서브쿼리 지옥에서 벗어나기 SAP HANA에서 "카테고리별 매출 상위 3개 제품"을 뽑아야 할 때, Window 함수를 모르면 보통 상관 서브쿼리(correlated subquery)나 셀프 조인으로 해결하게 됩니다. 문제는 이 방식이 행마다 서
📖 개요와 이 글의 목표 RAP(ABAP RESTful Application Programming Model)로 앱을 만들 때 가장 조용히, 그러나 가장 크게 사고가 나는 지점이 날짜/시간 필드입니다. 한국 서버에서 잘 돌던 앱이 독일 사용자에게는 "어제 생성된 주문"으로 보이는 문제