SAP 주요 고객 의존도 공시 점검 — IFRS 8, 고객 한 곳(공통지배 집단은 합산)의 수익이 10% 이상인지 가려 장부 공시와 맞춰본다
고객 집단 합산 · 10% 판정 · 공시 금액 · 귀속 부문을 장부와 맞춰 봅니다
외부 고객 한 곳에 매출이 몰려 있다면 그 사실은 재무제표 이용자가 알아야 할 정보입니다. IFRS 8 영업부문(K-IFRS 제1108호)은 단일 외부 고객에서 나온 수익이 기업 수익의 10% 이상이면 그 사실과 그런 고객 각각에서 나온 수익 총액, 그 수익을 보고하는 부문을 공시하도록 요구합니다. 공통지배 아래 있는 기업집단은 단일 고객으로 보고, 정부와 그 통제를 받는 기관도 단일 고객으로 봅니다.
실무에서는 계열사가 각각 다른 거래처 코드로 청구되어 개별로는 10% 에 못 미치다가 합치면 넘는 경우, 공시 금액이 청구 기준과 기간 기준으로 갈리는 경우, 귀속 부문이 빠지는 경우가 생깁니다. 이 화면은 고객 단위의 의존도를 집단으로 합산해 다시 계산하고 장부 공시와 맞춰 보도록 OpenUI5 화면으로 확장했습니다. 실제 구동 화면 5종을 함께 공개합니다.
| 항목 | 내용 |
|---|---|
| 업무 영역 | 재무회계(FI) — 영업부문 공시 |
| 관련 기준서 | IFRS 8 영업부문(K-IFRS 제1108호) — 주요 고객 의존도 공시 |
| Namespace | zui5.majcust |
| 셸 구조 | 단일 페이지 + 4개 탭 |
| 화면 수 | 메인 1 · 상세 팝업 1 |
| SAP 표준 T-code | FBL5N · VF03 · XD03 |
| 데이터 연동 방식 | OData V2 (조회조건 전부 $filter) |
| 성격 | 조회·산출·대사·점검형 |
| 테마 | sap_horizon · 한국어 |
| 요약 | 내용 |
|---|---|
| 점검 대상 | 고객 집단별 점유율과 10% 판정, 공시 여부·공시 금액·공시 부문 수의 장부 대 산출, 공통지배·정부 집단의 합산 누락 |
| 핵심 산식 | 집단 수익 = Σ 구성 고객 수익 · 점유율 = 집단 수익 ÷ 외부고객 수익 총계 · 주요 고객 = 집단 수익 × 10 ≥ 외부고객 수익 총계 |
| 결과 표시 | 정상 / 점검 필요 |
실제 화면 5종 둘러보기





사용 방법
- 기준 연월을 넣고, 집단 유형·점검 코드·점검 결과는 필요할 때만 고릅니다. "전체"를 고르면 해당 조건 없이 조회됩니다.
- 조회 버튼은 조회조건 입력 필드 줄의 가장 오른쪽에 있습니다. 입력란에서 Enter 키를 눌러도 같은 조회가 실행됩니다. 화면을 열면 기본 조건(기준 연월 202612)으로 자동 조회됩니다.
- 요약 지표에서 고객 집단 수, 점검 필요 건수, 외부고객 수익 총계, 주요 고객 집단 수·수익 합계(산출), 공시 금액 합계(장부), 정합성 대사 차이 건수를 먼저 확인합니다.
- 탭을 고객 집단 판정 → 고객 명세 → 부문 귀속 → 대사 결과 순으로 옮겨 가며 근거로 좁혀 봅니다.
- 고객 집단 판정에서 행을 누르면 집단 요약과 구성 고객, 귀속 부문이 상세 팝업으로 열립니다.
- CSV 내려받기(UTF-8 BOM)로 현재 탭의 결과를 저장할 수 있습니다.
주요 고객 판정 규칙과 점검 코드
고객 집단의 수익이 외부고객 수익 총계의 10% 이상이면 주요 고객으로 봅니다. 정확히 10% 인 경우도 포함하도록 점유율의 반올림 값이 아니라 집단 수익 × 10 ≥ 외부고객 수익 총계 로 판정하며, 조건이 겹치면 앞선 코드가 표시됩니다.
| 점검 코드 | 판정 조건 | 결과 | 사용자 조치 |
|---|---|---|---|
| D01 | 합산하면 10% 이상(구성 고객 둘 이상)인데 공시 금액이 없음 | 점검 필요 | 공통지배 관계·정부 통제 여부를 확인하고 합산 공시 필요 여부 검토 |
| D02 | 단일 고객 10% 이상인데 공시 금액이 없음 | 점검 필요 | 고객별 수익 집계와 공시 대상 누락 여부 확인 |
| D03 | 공시 금액(장부)이 집단 수익(산출)과 다름 | 점검 필요 | 공시 금액에 쓴 수익 범위(기간·계정)와 집단 구성 확인 |
| D04 | 10% 미만인데 공시함 | 점검 필요 | 자발적 공시인지, 점유율 산정 기준이 다른지 확인 |
| D05 | 공시 부문 수(장부)가 귀속 부문 수(산출)와 다름 | 점검 필요 | 수익이 귀속된 보고 부문과 공시 부문 일치 여부 확인 |
| D00 | 위 조건에 모두 해당하지 않음 | 정상 | 조치 없음 |
고객 관계의 판단과 공시 여부의 최종 결정은 회사 몫이며, 화면은 분류·집계·대사를 돕는 점검 도구입니다. 최종 판단은 회사와 감사인이 합니다.
고객 집단 합산에서 장부 대사까지의 순서
| 순서 | 산출·대사식 |
|---|---|
| 1 | 고객별 수익 = 외부 고객 수익 집계(내부거래 제외) |
| 2 | 고객 집단 = 공통지배 기업집단 · 정부 및 통제 기관 · 그 밖의 고객 한 곳(최상위 지배자 기준) |
| 3 | 집단 수익 = Σ 구성 고객 수익, 점유율 = 집단 수익 ÷ 외부고객 수익 총계 × 100 |
| 4 | 주요 고객 판정 = 집단 수익 × 10 ≥ 외부고객 수익 총계 |
| 5 | 부문 귀속 = 집단 수익을 보고 부문별로 분해, Σ 부문 귀속 수익 = 집단 수익 |
| 6 | 정합성 대사 5건 — 고객 합계 대 원장 · 집단 합계 대 고객 합계 · 부문 합계 대 집단 수익 · 판정 재계산 · 점유율 합계 100% |
| 7 | 장부 점검 대사 4건 — 공시 금액 · 공시 여부 · 공시 부문 수 · 집단 매핑의 장부 대 산출 비교 |
영업부문 구분 자체와 부문 정보의 측정 방식은 이 화면의 대상이 아닙니다.
조회조건
| 조회조건 | 필수 | 설명 |
|---|---|---|
| 기준 연월(보고기간말) | 필수 | YYYYMM 6자리 |
| 집단 유형 | 선택 | 단일 고객 / 공통지배 집단 / 정부·공공 |
| 점검 코드 | 선택 | D00 점검 사항 없음 ~ D05 공시 부문 수 차이 |
| 점검 결과 | 선택 | 정상 / 점검 필요 |
결과 컬럼
| 탭 | 주요 컬럼 |
|---|---|
| 고객 집단 판정 | 고객 집단 번호·집단명, 집단 유형, 구성 고객 수, 개별 최대 점유율, 외부고객 수익 총계, 집단 수익(산출), 점유율(산출), 주요 고객 판정, 귀속 부문 수, 공시 여부·공시 금액·공시 부문 수(장부), 공시 금액 차이, 점검 결과·코드·내용 |
| 고객 명세 | 고객 번호·고객명, 최상위 지배자, 관계 구분, 고객 수익, 개별 점유율, 집단 번호(산출·장부), 집단 매핑 일치 |
| 부문 귀속 | 고객 집단, 부문 번호·부문명, 부문 귀속 수익, 집단 내 비중, 공시 부문 포함 여부 |
| 대사 결과 | 대사 구분, 대사 항목, 대사식, 좌변, 우변, 검사 건수, 차이 건수, 최대 차이 |
SAP 표준 기능 매핑
| SAP 표준 T-code | 용도 |
|---|---|
| FBL5N | 고객 개별항목 조회 |
| VF03 | 청구 문서 조회 |
| XD03 | 고객 마스터 조회 |
IFRS 요구사항 매핑표
| 기준서 | 요구사항 | 대응 기능 | 원천 데이터 | 비고 |
|---|---|---|---|---|
| IFRS 8 영업부문(K-IFRS 제1108호) | 단일 외부 고객에서 나온 수익이 기업 수익의 10% 이상이면 그 사실을 공시 | 고객 집단 판정 탭 · D01 · D02 · D04 | 고객별 수익 집계, 외부고객 수익 총계 | 임계는 이상(≥) 기준 |
| IFRS 8(K-IFRS 제1108호) | 그런 고객 각각에서 나온 수익 총액과 그 수익을 보고하는 부문을 공시 | 공시 금액·공시 부문 수 · D03 · D05 | 부문별 수익, 장부 공시 내역 | 고객 이름 공시는 요구 대상이 아님 |
| IFRS 8(K-IFRS 제1108호) | 공통지배 아래 있는 기업집단과 정부 및 그 통제 기관은 각각 단일 고객 | 고객 명세 탭 · 집단 매핑 대사 · D01 | 고객 마스터·계층 | 통제 여부는 마스터 입력값 기준 — 확인 필요 |
참고 CDS 뷰
원천테이블
| 원천 테이블 | 주요 필드 | 용도 |
|---|---|---|
| ACDOCA | RBUKRS, GJAHR, POPER, RACCT, KUNNR, SEGMENT, HSL | 고객·부문별 수익 금액 |
| VBRK / VBRP | VBELN, FKDAT, KUNRG, NETWR | 청구 문서 단위 수익 |
| KNA1 | KUNNR, NAME1, KTOKD | 고객 마스터 |
| KNVH | HKUNNR, KUNNR, DATAB, DATBI | 고객 계층(최상위 고객) |
CDS 뷰 스케치
define view entity I_CustRevenueByGroup
as select from acdoca as j
inner join kna1 as c on c.kunnr = j.kunnr
{
key j.rbukrs, key j.gjahr, key j.poper, key j.kunnr,
c.name1,
j.segment,
sum(j.hsl) as Revenue
}
where j.racct between $parameters.p_from and $parameters.p_to
group by j.rbukrs, j.gjahr, j.poper, j.kunnr, c.name1, j.segment새로 스케치한 예시이며 실제 뷰 이름과 수익 계정 범위, 공통지배·정부 통제 관계의 원천은 구현 환경에서 확인이 필요합니다.
OpenUI5 구성
화면은 OData V2 모델 하나를 매니페스트에 선언해 쓰고, 모든 탭이 해당 엔티티셋의 행에 직접 바인딩합니다.
| 항목 | 구성 |
|---|---|
| 서비스 선언 | 매니페스트의 데이터 소스에 OData V2 서비스를 상대 경로로 선언하고 기본 모델에 연결 |
| 엔티티셋 바인딩 | 탭마다 해당 엔티티셋에 테이블 행을 바인딩, 상세 팝업은 고객 집단 단건과 구성 고객·귀속 부문에 바인딩 |
| 필터 | 조회조건을 Filter 객체로 만들어 $filter 로 전달, "전체"는 Filter 를 만들지 않음 |
| 정렬·페이징 | $orderby · $top · $skip · 총건수를 모델 기능으로 처리 |
| 연결 실패 안내 | 메타데이터 실패·요청 실패를 구분해 사용자 메시지로 안내하는 ErrorHandler |
| 화면 규약 | 테마 sap_horizon, 조회 버튼은 조회조건 영역 오른쪽 끝, Enter 키 조회 |
파일 구성
controller/ BaseController · Main.controller
view/ Main.view · DetailDialog.fragment
model/ formatter · ErrorHandler
i18n/ · css/ · manifest.json · Component.js
odata/ 서비스 정의(메타데이터·서비스 로직·엔티티셋별 데이터)서비스 정의와 검증용 파일은 앱 본체와 분리해 두었습니다.
검증 결과
검증용 샘플 데이터(가상 고객 집단 13개·고객 19곳, 기준 연월 2종)로 대사식을 전수 실행했습니다.
| 구분 | 검사 건수 | 차이 건수 | 최대 차이(원) |
|---|---|---|---|
| 정합성 대사 5개 식(기준 연월 202612) | 53 | 0 | 0 |
| 장부 점검 06 공시 금액 대 산출 수익(202612) | 7 | 3 | 88,000,000,000 |
| 장부 점검 07 주요 고객 판정 대 공시 여부(202612) | 13 | 3 | 88,000,000,000 |
| 장부 점검 08 공시 부문 수 대 귀속 부문 수(202612) | 5 | 1 | 20,000,000,000 |
| 장부 점검 09 공통지배·정부 집단 매핑(202612) | 3 | 1 | 80,000,000,000 |
산출식 9종은 다른 계산 경로로 다시 계산해 기준 연월당 144회, 두 기간 합 288회 검사했고 차이는 0건입니다. 점검 필요 건은 화면의 동작을 보이기 위해 의도적으로 구성한 건(202612 5건, 202512 0건)이며 정합성 차이와 분리해 기록합니다. 조회조건 Enter 조회, 상세 팝업, 연결 실패 안내까지 실제 브라우저에서 확인했습니다.
자주 묻는 질문
이 점검은 어떤 기준서의 어떤 요구사항에 근거하나요? 적용 시기도 알려 주세요.
IFRS 8 영업부문(K-IFRS 제1108호)은 단일 외부 고객에서 나온 수익이 기업 수익의 10% 이상이면 그 사실과 고객별 수익 총액, 그 수익을 보고하는 부문을 공시하도록 요구합니다. 공통지배 아래 있는 기업집단은 단일 고객으로 보고, 정부와 그 통제를 받는 기관도 단일 고객으로 봅니다. 이 화면은 그 공시가 산출 결과와 맞는지 점검하는 도구입니다. 이미 시행 중인 기준서이며 세부 내용은 기준서 원문과 회사 정책으로 확인 필요합니다.
계열사 여러 곳이 각각 10% 미만이면 공시하지 않아도 되나요?
공통지배 아래 있는 기업집단은 단일 고객으로 보므로 합산한 수익이 10% 이상이면 대상입니다. 화면은 합산 기준 점유율과 개별 최대 점유율을 함께 보여 주며, 공통지배 여부는 고객 마스터에 입력된 관계를 따르므로 입력되지 않은 관계는 확인 필요입니다.
정확히 10% 인 경우는 어떻게 판정하나요?
이상(≥)으로 판정합니다. 반올림한 점유율이 아니라 집단 수익 × 10 과 외부고객 수익 총계를 직접 견주므로 경계값에서도 일관됩니다.
"점검 필요"는 공시가 잘못됐다는 뜻인가요?
아닙니다. 합산하면 10% 이상인데 공시가 없거나, 공시 금액이 산출 수익과 다르거나, 10% 미만인데 공시했거나, 공시 부문 수가 다른 집단을 골라 보여주는 표시입니다. 원인은 고객 관계와 전표를 함께 보아야 알 수 있고, 최종 판단은 회사와 감사인이 합니다.
공시 전에 고객 의존도부터 점검하세요
공통지배 계열이 각각 다른 거래처 코드로 쌓인 채 결산을 마치면 공시 주석 작성 막바지에 집계를 다시 해야 합니다. 우리 회사 계정 체계에 맞춘 점검 화면이 필요하다면 문의해 주세요.