솔루션 홈
ME61 · ME65 · 구매처 평가

SAP 구매처 평가 현황 — 숫자 하나로는 가려지는 4가지 기준

종합점수만 보면 왜 그 점수인지 알 수 없습니다. 가격·품질·납기·서비스로 나누고, 다시 하위기준까지 펼쳐 근거를 남기는 화면입니다.

구매처 평가를 종합점수 하나로만 보면, 그 점수가 오른 이유도 내린 이유도 알 수 없습니다. 가격이 좋아져서인지, 납기가 나빠져서인지가 숫자 한 줄에 섞여 버리기 때문입니다. 구매 담당자가 실제로 궁금한 것은 "이번 분기 이 구매처, 어디가 좋아지고 어디가 나빠졌나"입니다.

SAP 표준 구매처 평가 구조를 그대로 이어받아, 종합점수를 가격·품질·납기·서비스 4대 기준으로 나누고 다시 8개 하위기준의 산출근거까지 펼쳐 보여주도록 OpenUI5 화면으로 확장한 것이 이 화면입니다. 실제 구동 화면 3종을 함께 공개합니다.

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

  • 평가기준 구성 — 가격·품질·납기·서비스 4대 기준 체계(ME61 평가기준 유지)
  • 구매처 마스터 — 거래처 코드·명칭·국가(LFA1) · 구매조직 데이터(LFM1)
  • 납기 실적 원천 — 발주(EKKO·EKPO)와 입고 이력(EKBE), 확정납기(EKET)
  • 품질 실적 원천 — 검사LOT 판정(QALS), 품질통지(QMEL)
  • 조회·랭킹 — 평가 리스트(ME62)와 순위 리스트(ME65)의 조회 방식
항목내용
업무 영역구매(MM) · 구매처 평가
Namespacezui5.vendoreval
셸 구조조회조건 영역(우측 조회) + 구매처별 평가결과 리스트, 산출근거 상세 Dialog
화면 수조회 화면 1개 + 산출근거 상세
대응 T-codeME61 · ME62 · ME65
성격조회·랭킹형 — 평가기준 입력과 유지는 표준 트랜잭션이 담당
UI 테마sap_horizon 단일 적용

실제 화면 3종 둘러보기

구매조직·평가기간을 넣고 조회하면 구매처가 종합점수 순으로 나옵니다 → 등급과 전분기대비 증감을 확인하고 → 행을 열어 하위기준 산출근거까지 드릴다운합니다.

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

zui5.vendoreval — Main.view.xml
구매처 평가 현황 조회조건 화면
조회조건 화면 — 구매조직·자재그룹·구매처·평가기간·등급을 지정합니다. 조회·초기화 버튼은 조회조건 영역 오른쪽 끝에 있고, 구매처 입력란은 Enter 키로 바로 조회되며 나머지 항목은 선택 즉시 자동 재조회됩니다.
zui5.vendoreval — 조회결과 리스트
구매처별 평가결과 리스트, 종합점수 순 정렬
구매처별 평가결과 리스트 — 가격·품질·납기·서비스 4개 기준 점수와 종합점수·등급·전분기대비 증감을 종합점수 내림차순으로 보여 줍니다. D등급이 있으면 상단 메시지스트립이 경고 색상으로 바뀝니다.
zui5.vendoreval — 산출근거 상세
구매처 평가 산출근거 상세 다이얼로그
산출근거 상세 다이얼로그 — 행을 열면 8개 하위기준 점수·가중치와 입고·품질 원천값, 4개 분기 종합점수 추이가 함께 펼쳐집니다. 이번 점수가 왜 그렇게 나왔는지 이 화면 하나로 끝까지 설명됩니다.

조작 방법

  1. 구매조직 · 자재그룹으로 범위를 좁힙니다. 선택 즉시 자동 재조회됩니다.
  2. 구매처(코드/명) 입력란에 일부 문자만 넣어도 검색되며, Enter 키로 바로 조회됩니다.
  3. 평가기간은 2025 Q3~2026 Q2 중 하나를 고릅니다. 필수 항목입니다.
  4. 등급을 지정하면 해당 등급만 남습니다. 조회조건 영역 오른쪽 끝의 [초기화]/[조회] 버튼으로도 동일하게 동작합니다.
  5. 결과는 종합점수 내림차순으로 정렬됩니다. D등급이 있으면 메시지스트립이 경고로 바뀝니다.
  6. 행 끝의 상세 아이콘을 클릭하면 하위기준·원천값·분기추이를 담은 다이얼로그가 열립니다.
  7. 결과는 CSV 다운로드로 내려받습니다. UTF-8 BOM 이 붙어 엑셀에서 한글이 깨지지 않습니다.

종합점수 산출과 등급 판정 로직

종합점수는 가격·품질·납기·서비스 4대 기준 점수를 가중합산한 값이며, 각 기준은 다시 2개 하위기준의 가중평균으로 산출됩니다.

가격(30%)   = 가격수준(시장가 대비) × 60% + 가격안정성(변동성) × 40%
품질(30%)   = 입고검사 합격률      × 60% + 품질클레임 환산점수 × 40%
납기(25%)   = 납기준수율(On-Time)  × 60% + 수량준수율          × 40%
서비스(15%) = 대응성                × 50% + 협조성              × 50%

종합점수 = 가격×0.30 + 품질×0.30 + 납기×0.25 + 서비스×0.15

등급  A 매우우수  90점 이상
      B 우수      80 ~ 89.9점
      C 보통      65 ~ 79.9점
      D 개선필요  65점 미만

하위기준까지 쪼갠 이유

종합점수만 남기면 담당자가 할 수 있는 일은 "이 구매처는 83점이다"까지입니다. 하위기준으로 쪼개면 "품질은 좋은데 서비스 대응이 늦다"처럼 구체적인 개선 대화가 가능해집니다. 그래서 상세 다이얼로그는 종합점수 하나가 아니라 8개 하위기준 원점수와 가중치를 함께 보여 줍니다.

조회부터 상세근거 확인까지 처리단계

단계내용
① 조회조건 입력구매조직·자재그룹·구매처·평가기간·등급 지정
② 1차 필터링구매조직·자재그룹·구매처 텍스트로 대상 구매처를 추림
③ 평가기간 매칭필터링된 구매처의 평가실적 중 선택 분기와 일치하는 레코드만 채택
④ 등급 필터·증감 계산등급 필터 적용 후 직전 분기 레코드를 찾아 종합점수 증감 계산
⑤ 정렬·표시종합점수 내림차순 정렬, D등급 존재 시 메시지스트립 경고 전환
⑥ 상세 드릴다운행 클릭 시 해당 구매처의 4개 분기 전체를 모아 하위기준·원천값·추이 구성

조회조건

필드필수설명
구매조직선택1000 한국 / 2000 미주, 전체 선택 가능
자재그룹선택원자재-금속/전자부품, 포장재, 설비/부품, 소모품/MRO, 외주가공
구매처(코드/명)선택코드 또는 명칭 일부, Enter 키로 조회
평가기간필수2025 Q3 ~ 2026 Q2 중 선택
등급선택전체 / A / B / C / D

결과 컬럼

컬럼의미 · 표시
구매처코드 · 구매처명LFA1 벤더 마스터 기준
구매조직 · 자재그룹LFM1 구매조직 데이터, 주 취급 자재그룹
가격 · 품질 · 납기 · 서비스4대 기준별 점수(0~100), 80↑ 녹색 / 65~80 주황 / 65↓ 적색
종합점수가중합산 점수, 동일 색상 규칙
등급A/B/C/D 등급 배지
전분기대비직전 분기 종합점수 대비 증감(▲/▼), 첫 분기는 "-"

SAP 표준 기능 매핑

표준 실행은 T-code 가 담당하고, 이 화면은 조회·검증 관점을 더해 확장한다. 평가기준 설정과 개별 항목 입력은 SAP 표준 기능(ME61) 그대로 이어받고, 이 화면은 그 결과를 하위기준까지 분해해 랭킹·추이로 보여주는 조회 전용 레이어다.

SAP 표준 T-code기능이 화면과의 관계
ME61구매처 평가기준 유지4대 기준·가중치 체계의 근거 — 표준 기능을 그대로 이어받음
ME62평가 리스트 표시조회결과 리스트의 대응 화면
ME65평가 리스트/순위종합점수 순 랭킹 정렬의 대응 화면
ME6D미평가 구매처 조회등급 필터·조회건수로 간접 대체(향후 확장 지점)
LFA1 · LFM1구매처 마스터조회 원천
EKKO·EKPO·EKBE·EKET발주·입고 이력납기준수율·수량준수율 산출 원천
QALS·QMEL검사·품질통지품질 하위기준 산출 원천

도입 시 확인이 필요한 부분

가중치(30/30/25/15)와 등급 경계값(90/80/65)은 구매 정책에 따라 달라지는 설정값입니다. 또 하위기준 산출식(특히 가격안정성·품질클레임 환산)은 실제 도입 시 데이터 원천과 집계 기간을 회사 기준에 맞춰 조정합니다.

참고 CDS 뷰

운영 서비스로 연결할 때는 구매처 마스터와 분기별 산출점수를 결합한 뷰로 서빙하는 구성을 제안합니다.

@AbapCatalog.sqlViewName: 'ZCVENDOREVAL'
@EndUserText.label: '구매처 평가 종합 (Z)'
define view Z_C_VENDOR_EVAL
  as select from lfa1 as Vendor
    inner join      lfm1 as PurchOrg on Vendor.lifnr = PurchOrg.lifnr
    left outer join t024 as MatklT   on PurchOrg.matkl = MatklT.matkl
{
  key Vendor.lifnr        as VendorCode,
      Vendor.name1        as VendorName,
      Vendor.land1        as Country,
      PurchOrg.ekorg      as PurchOrg,
      PurchOrg.matkl      as MaterialGroup,
      MatklT.wgbez        as MaterialGroupText
      // 가격·품질·납기·서비스 하위기준 점수는 EKBE/QALS/QMEL 집계뷰와 조인해
      // Z_C_VENDOR_EVAL_SCORE(분기 단위) 로 산출, 본 뷰에는 마스터만 노출
}

매핑 이해를 돕기 위한 참고용 설계입니다. 실제 도입 시에는 운영 환경의 집계 주기와 하위기준 원천 범위에 맞춰 조정합니다.

OpenUI5 구성

기능사용 컨트롤
화면 골격sap.f.DynamicPage + 조회조건 헤더 · 결과 리스트 · 푸터
조회조건sap.m.Select · sap.m.Input — 조회조건 영역 오른쪽 끝에 조회 버튼, change·submit 이벤트로 즉시조회
결과 리스트sap.ui.table.Table — 컬럼 11개(10개 초과)로 sap.m.Table 대신 사용, RowAction 으로 상세 진입
산출근거 상세sap.m.Dialog + sap.m.Table 3종(하위기준/원천값/분기추이)
데이터 계층OData 미구현 — ModelMock 이 localdata JSON 을 fetch 해 Promise 로 제공
이벤트onPAI 단일 진입점(fcCode 분기) + 행 상세 전용 핸들러

결과 테이블을 sap.ui.table.Table 로 만든 이유

구매처코드·명·구매조직·자재그룹·4대 기준 4개·종합점수·등급·전분기대비까지 컬럼이 11개입니다. 화면 규약상 10개를 넘는 조회 화면은 sap.ui.table.Table 을 쓰도록 되어 있어, 가로 스크롤 없이 컬럼 폭을 조정할 수 있는 이 컨트롤을 선택했습니다. 소량 표시인 상세 다이얼로그는 규약대로 sap.m.Table 을 그대로 썼습니다.

파일 구성

경로역할
index.htmlOpenUI5 부트스트랩 — sap_horizon · lodash · moment
Component.js디바이스 모델 초기화, 라우터 기동
manifest.json앱 디스크립터 — 앱 ID(zui5.vendoreval) · ko 로케일
view/Main.view.xml조회조건 헤더 + 결과 리스트 + 푸터 골격
view/fragments/MainSearch.fragment.xml조회조건 + 조회/초기화 버튼(오른쪽 정렬)
view/fragments/MainTable.fragment.xmlsap.ui.table.Table 결과 리스트, 행 상세 액션
view/fragments/DetailDialog.fragment.xml하위기준·원천값·분기추이 상세
controller/Main.controller.js조회 · 필터링 · 증감 계산 · 상세 구성 · CSV
model/ModelMock.jslocaldata JSON 읽기(Promise)
js/formatter.js점수 · 등급 · 증감 포맷터
localdata/vendors.json · evaluations.json구매처 마스터 18건, 분기별 평가실적 72건

검증 결과

화면 구성에 쓴 데이터는 구매처 18개 · 4개 분기 평가실적 72건입니다.

검증 항목결과
종합점수 = 4대 기준 가중합산 (72건 재계산 오차)통과 (오차 0)
등급 경계(90/80/65) 판정 일관성 (72건)통과
XML · JSON 전체 파싱오류 0건
i18n 키 · formatter 함수 참조 커버리지누락 0건
조회 버튼 위치 — 조회조건 영역 내부, 하단 Footer 밖DOM 좌표 확인 통과
Enter 키 조회 · Select 변경 즉시조회실동작 확인
적용 테마sap_horizon (런타임 확인)
화면 렌더링 — 실브라우저 조회 → 결과 → 상세 다이얼로그 실동작 후 캡처3/3

구매처명 · 점수 · 담당자는 모두 검증용 데이터입니다.

자주 묻는 질문

종합점수 가중치(30/30/25/15)는 왜 이렇게 정했나요?

SAP 표준 구매처 평가에서 널리 쓰이는 가격·품질·납기·서비스 4대 기준 구성을 따르되, 제조업 구매 실무에서 가격과 품질을 동일 비중으로, 납기를 그다음으로, 정성적 성격이 강한 서비스를 가장 낮은 비중으로 둔 구성입니다. 기업별 정책에 따라 설정 테이블에서 조정할 수 있도록 설계했습니다.

등급 D(개선필요) 구매처는 화면에서 어떻게 확인하나요?

등급 선택항목에서 'D 개선필요'를 고르면 즉시 재조회되며, D등급이 1건 이상이면 상단 메시지스트립이 경고 색상으로 자동 전환됩니다.

전분기 데이터가 없는 첫 분기는 전분기대비가 어떻게 표시되나요?

이전 분기 레코드가 없으므로 전분기대비 컬럼에 '-' 로 표시됩니다.

SAP 표준 기능과 어떻게 이어지나요?

평가기준 유지와 개별 항목 입력은 표준 ME61 이 담당합니다. 이 화면은 그 결과를 하위기준까지 분해해 종합점수·등급으로 랭킹 조회하고, 산출근거와 분기 추이까지 드릴다운하는 조회 전용 레이어로 확장한 것입니다.

구매처 평가, 지금 쓰는 SAP 위에서 확장해 보세요

종합점수 뒤에 있는 근거까지 한 화면에서 보이면 구매처와의 개선 대화가 구체적으로 바뀝니다. 현재 SAP 환경 기준으로 어떻게 적용되는지 함께 확인해 드립니다.

구매처평가공급업체평가ME61ME62ME65납기준수율품질평가OpenUI5