솔루션 홈
판매 분석

SAP 수주잔고 경과분석 점검 — 시간이 지날수록 위험해지는 주문부터 가른다

수주잔고를 경과구간으로 나눠보면, 그저 쌓여 있는 것과 정말 정체된 것이 갈립니다

수주잔고는 그 자체로는 문제가 아닙니다. 방금 들어온 주문도, 석 달째 그대로인 주문도 똑같이 "잔고"로 잡히기 때문입니다. 문제는 시간이 지나도 줄어들지 않는 잔고, 그리고 그 반대로 수주량보다 더 많이 나가버린 잔고입니다. 두 경우 모두 한 줄짜리 합계표에서는 보이지 않습니다.

수주 품목별로 수주수량과 출하수량을 대사해 수주잔고를 계산하고, 수주일로부터 경과한 일수를 구간으로 나눠 영업조직별로 집계한 뒤, 45일 이상 출하 이력이 없거나 출하량이 수주량을 초과한 것으로 보이는 건을 자동으로 가려내는 화면을 OpenUI5 화면으로 확장했습니다. 실제 구동 화면 3종을 함께 공개합니다.

SAP 표준 기능을 그대로 이어받은 부분

  • 수주 목록 조회 — 판매오더 목록의 표준 화면(VA05)이 가진 수주수량·수주금액을 그대로 이어받습니다
  • 미출하 현황 조회 — 출하 모니터의 표준 화면(VL06O)으로 출하수량과 최종 출하일을 확인합니다
  • 수주 상세 조회 — 판매오더 조회의 표준 화면(VA03)으로 개별 건을 재확인합니다
항목내용
업무 영역영업(SD) · 판매 분석
관련 기준서- (판매 분석 — 수주잔고 경과관리)
Namespacezui5.orderbook
셸 구조조회조건 영역(우측 조회) + 명세·경과구간별 집계·영업조직별 요약 3개 탭, 행 클릭 상세 Dialog
화면 수조회 화면 1개(탭 3개) + 상세 다이얼로그
SAP 표준 T-codeVA05 · VL06O · VA03
데이터 연동 방식OData V2 — 화면 블록마다 엔티티셋에 직접 바인딩
성격조회·대사·점검형 — 지연·초과 사유 확인과 후속 조치는 화면 밖에서 담당 부서가 수행
UI 테마sap_horizon 단일 적용

실제 화면 3종 둘러보기

조회조건을 그대로 두고 조회하면 전체 수주잔고 명세가 뜹니다 → 경과구간별 집계 탭에서 영업조직별 잔고비율을 보고 → 영업조직별 요약 탭에서 점검필요 건수를 확인합니다.

아래는 실제로 앱을 실행해 기능을 눌러 가며 캡처한 화면입니다. 이미지를 클릭하면 원본 크기로 확대됩니다.

Main.view.xml
수주잔고 명세 화면 — 조회조건과 명세 목록
메인화면 — 전체 수주잔고 명세. 수주수량·출하수량·수주잔고수량·수주잔고금액·경과일수·경과구간·점검상태가 한 화면에 뜹니다. 조회 버튼은 조회조건 영역 오른쪽 끝에 있습니다.
경과구간별 집계
경과구간별 집계 화면
경과구간별 집계 — 영업조직 x 경과구간(0~30/31~60/61~90/90일 초과)별로 수주금액·출하금액·수주잔고금액과 잔고비율을 나란히 봅니다.
수주잔고 상세
수주잔고 상세 다이얼로그
수주잔고 상세 — 행을 클릭하면 해당 수주 품목의 수주일·희망납기일·최종출하 경과·점검사유가 다이얼로그로 펼쳐집니다.

사용 방법

  1. 영업조직·고객군·경과구간·점검상태(모두 선택)를 필요에 따라 입력합니다. "전체"를 그대로 두면 전체 수주잔고가 조회 대상입니다.
  2. 조회 버튼은 조회조건 입력 필드 줄의 가장 오른쪽에 있습니다. 자재 입력란에서 Enter 키를 눌러도 같은 조회가 실행됩니다. 화면을 열면 전체 조건 기준으로 자동 조회됩니다.
  3. 수주잔고 명세 탭 제목 옆 괄호 안의 숫자로 현재 조회된 건수를 확인합니다.
  4. 탭을 옮겨 수주잔고 명세 → 경과구간별 집계 → 영업조직별 요약 순으로 봅니다.
  5. 수주잔고 명세에서 행을 클릭하면 상세 다이얼로그가 열립니다.
  6. 수주잔고 명세 탭 우측 상단 CSV 내려받기(UTF-8 BOM)로 현재 조회조건 기준 결과를 저장할 수 있습니다.

경과·초과 판정 기준

판정 조건결과 상태사용자 조치
수주잔고수량 > 0 이고 최종 출하 후 45일 이상 경과(또는 출하 이력 없음)점검 필요납기·재고·생산 일정을 재확인하고 지연 사유를 점검
출하수량이 수주수량을 초과(수주잔고수량 < 0)점검 필요초과 출하 원인(추가 주문 미반영 등)을 재확인
위 두 조건에 해당하지 않음정상별도 조치 불필요

이 화면이 대신 정하지 않는 것

점검 필요 표시는 확인이 필요하다는 뜻일 뿐 지연이나 오류를 단정하지 않습니다. 지연 사유 파악과 후속 조치는 영업·물류 담당 부서가 판단합니다.

집계·대사 처리 절차

단계내용
1단계수주 품목별로 수주수량 − 출하수량 = 수주잔고수량을 산출한다
2단계수주일로부터 조회 시점까지 경과일수를 구해 0~30/31~60/61~90/90일 초과 구간으로 분류한다
3단계영업조직 x 경과구간별로 수주금액·출하금액·수주잔고금액을 집계하고 잔고비율(수주잔고금액÷수주금액)을 계산한다
4단계영업조직별 합계 = 해당 영업조직의 경과구간별 소계 합으로 재대사한다
5단계최종 출하 후 45일 이상 경과했거나 출하량이 수주량을 초과한 건을 점검 필요로 분류해 영업조직별 건수를 집계한다

조회조건

필드필수설명
영업조직선택전체 선택 시 조건에서 제외
고객군선택직접판매 · 대리점 · 온라인몰 · 수출대리점
경과구간선택0~30일 · 31~60일 · 61~90일 · 90일 초과
점검상태선택정상 · 점검 필요
자재선택자재코드 일부 입력(부분일치) 후 Enter로 조회

결과 컬럼

컬럼설명
수주번호/품목 / 영업조직 / 자재 / 고객군수주 품목 식별 정보 (가상 체계)
수주수량 / 출하수량 / 수주잔고수량수주수량 − 출하수량 = 수주잔고수량
수주잔고금액수주잔고수량 x 단가
경과일수 / 경과구간수주일로부터 경과일수와 구간
최종출하 경과가장 최근 출하 이후 경과일수(이력 없으면 "출하 이력 없음")
점검상태 / 점검사유경과·초과 판정 결과와 사유

SAP 표준 기능 매핑

표준 실행은 SAP 표준 T-code 가 담당하고, 이 화면은 그 데이터에 경과구간 분석과 점검 관점을 더해 확장합니다.

표준 T-code표준 기능이 화면이 더한 것
VA05판매오더 목록 조회수주수량·수주금액을 가져와 경과일수 산출의 기초 자료로 사용합니다
VL06O미출하 현황 조회출하수량·최종출하일을 가져와 수주잔고와 점검 대상 여부를 계산합니다
VA03판매오더 상세 조회점검 필요 건을 개별적으로 재확인하는 진입점으로 이어집니다

분석 지표 정의표

대상 영역요구사항이 화면의 대응 기능원천 데이터비고
판매 분석수주 대비 출하 진행률과 잔고 규모를 경과구간별로 파악수주잔고 명세 조회 · 경과구간별 집계수주 품목 명세(가상)대상 영역이므로 기준서는 "-"로 표기
판매 분석장기 미출하·출하초과 등 이상 소지가 있는 수주 건 식별점검상태·점검사유 판정 로직수주 품목 명세(가상) · 출하 이력(가상)원인은 "확인 필요"로만 표기하며 단정하지 않음

참고 CDS 뷰

원천 테이블주요 필드쓰임
VBAK / VBAPVBELN · POSNR · AUDAT · KWMENG수주 헤더·품목 — 수주일·수주수량
LIKP / LIPSVBELN · WADAT_IST · LFIMG출하 헤더·품목 — 출하수량·최종출하일
define view entity ZC_AgingBacklog
  as select from    I_SalesOrderItem as item
    left outer join I_SalesDocumentDelivery as dlv on dlv.SalesOrder = item.SalesOrder
                                                    and dlv.SalesOrderItem = item.SalesOrderItem
{
  key item.SalesOrder      as SalesOrder,
  key item.SalesOrderItem  as Item,
      item.OrderQuantity   as OrderQty,
      sum(dlv.DeliveryQuantity) as ShippedQty
}
group by item.SalesOrder, item.SalesOrderItem, item.OrderQuantity

표준 CDS 뷰 이름과 필드는 시스템 릴리스에 따라 다를 수 있으므로, 도입 시 실제 시스템에서 확인해 확정합니다.

OpenUI5 구성

기능사용 컨트롤 · 구성
화면 골격sap.m.Page + 조회조건 패널 · IconTabBar 3개 탭
데이터 연동manifest.json dataSources.mainService(OData V2, 상대 경로) — 화면 블록마다 엔티티셋에 직접 바인딩하며 모델은 defaultCountMode:"Inlinecount" · useBatch:false 로 구성
조회조건sap.m.Select · sap.m.Input — 조회조건 영역 오른쪽 끝에 조회·초기화 버튼, Enter 키로 즉시 재조회, sap/ui/model/Filter 로 조회조건을 조립합니다. 전체를 고른 조건은 필터를 만들지 않습니다
명세 표sap.ui.table.TablecellClick 이벤트로 행 컨텍스트를 받아 상세 다이얼로그를 엽니다
집계 표 · 상태 표시sap.m.Table, sap.m.ObjectStatus · sap.m.Title 로 판정 상태와 요약 수치를 표준 컨트롤로만 표시
공통 처리CSV 다운로드 공통 컨트롤러(UTF-8 BOM), 전역 오류 처리기 — 메타데이터 로드 실패·요청 실패를 구분해 안내

파일 구성

경로역할
index.htmlOpenUI5 부트스트랩 — sap_horizon, OData 서비스에 연결
Component.js디바이스 모델 초기화, 전역 오류 처리기 연결
manifest.json앱 디스크립터 — zui5.orderbook · ko 로케일, OData 서비스와 모델 선언
view/Main.view.xml조회조건 · 3개 탭
view/DetailDialog.fragment.xml수주잔고 상세 다이얼로그
controller/Main.controller.js조회조건 조립 · 바인딩 · 다이얼로그 · CSV 다운로드
controller/BaseController.jsCSV 다운로드 공통 처리
model/ErrorHandler.js전역 오류 처리
model/formatter.js금액·수량·상태 표시 서식
i18n/i18n_ko.propertiesko 로케일 리소스

운영 데이터는 OData 서비스가 제공하며, 검증용 샘플 데이터는 화면과 완전히 분리해 별도로 둡니다.

검증 결과

화면 구성에 쓴 검증용 샘플 데이터는 영업조직 4개 x 30건, 총 120건을 기준으로 대사식을 전수 검증했습니다.

검증 항목결과
수주수량 − 출하수량 = 수주잔고수량(120건 전수)통과(차이 0)
영업조직별 합계 = 경과구간별 소계 합(4개 영업조직 전수)통과(차이 0)
점검 필요 판정 — 장기 미출하 6건 · 출하초과 2건(의도적 검증용 예외)확인
조회 조건 전달 — 영업조직 필터·잔고금액 내림차순 정렬·총건수(120) 표시 확인확인
표시 금지 검사 — 커스텀 프로그램ID·앱 식별자·출처 표현 검출0건
화면 렌더링 — 실브라우저에서 조회 → 탭 이동 → 행 클릭 상세까지 실동작 후 캡처3/3
조회 버튼 위치 · sap_horizon 테마 · Enter 키 조회 · 서비스 미연결 시 오류 안내확인

모든 데이터는 검증용으로 구성한 가상 데이터입니다.

자주 묻는 질문

경과구간은 무엇을 기준으로 나누나요?

수주일로부터 조회 시점까지 경과한 일수를 0~30일·31~60일·61~90일·90일 초과 네 구간으로 나눕니다. 구간 자체는 화면이 정하는 기준이며, 회사별 관리 기준에 맞춰 조정할 수 있습니다.

점검 필요로 표시된 건은 무엇이 문제인가요?

최종 출하 후 45일 이상 경과했는데도 수주잔고가 남아 있거나, 출하량이 수주량을 초과한 것으로 보이는 건입니다. 표시는 확인이 필요하다는 뜻이며, 지연·초과의 실제 원인은 담당 부서가 확인합니다.

수주잔고금액은 확정 매출액인가요?

아닙니다. 수주수량에서 출하수량을 뺀 잔여 수량에 단가를 곱한 참고 금액입니다. 실제 매출 인식과 확정 금액은 출하·청구 시점의 회계 처리에 따라 별도로 결정됩니다.

이 화면이 지연 사유까지 알려주나요?

아닙니다. 화면은 조회·점검을 돕는 도구이며 경과 사실과 초과 여부만 보여줍니다. 지연 사유 파악과 후속 조치는 영업·물류 담당 부서가 판단합니다.

쌓여만 가는 수주잔고, 경과구간으로 나눠 먼저 가려보세요

합계만 보면 보이지 않던 장기 정체 건과 초과 출하 건을, 경과구간별 집계와 자동 점검으로 한 번에 조회해 두면 영업·물류 담당자의 후속 확인이 한결 가벼워집니다. 현재 SAP 환경 기준으로 어떻게 적용되는지 함께 확인해 드립니다.

판매 분석수주잔고경과분석백로그 에이징장기 미출하VA05VL06OOpenUI5