솔루션 홈
재무제표 표시

SAP 기능별-성격별 비용 공시 대사 — 주석에 쓸 성격별 분석, 원장으로 먼저 맞춰본다

영업비용을 기능별로 표시해 온 회사라면 주석에 성격별 분석을 새로 밝혀야 합니다. 그 대사표를 미리 만들어 보는 화면입니다.

IFRS 18 재무제표 표시와 공시(K-IFRS 제1118호)는 영업비용을 손익계산서에 기능별로 표시하는 회사라면, 주석에 성격별(원재료비·종업원급여비용·감가상각비 등) 비용 분석을 추가로 공시하도록 요구합니다. 국제기준은 2027년 1월 1일 이후 개시 회계연도부터 적용되고 조기적용이 허용되며, 비교기간도 새 기준으로 다시 표시해야 합니다.

문제는 지금 원장에는 계정이 어느 성격 항목에 속하는지 알려주는 표준 필드가 없다는 점입니다. 계정 담당자가 성격 코드를 별도로 매핑·관리해야 하는데, 신규 계정이 매핑에서 빠지면 성격별 합계가 기능별 합계와 어긋나 버립니다. SAP 표준 원장 데이터를 그대로 이어받아 계정별 매핑 결과를 성격 항목으로 재집계하고, 기능별 합계와 자동으로 대사하도록 OpenUI5 화면으로 확장했습니다. 실제 구동 화면 4종을 함께 공개합니다.

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

  • 계정별 잔액 조회 — G/L 계정 잔액(FAGLB03)으로 집계하는 계정별 연간·월별 발생액을 그대로 인용
  • 기능별 표시 — 재무제표버전(FSV) 기준 재무제표 조회(F.01)에서 매출원가· 판매비와관리비로 나누는 그룹핑 방식을 그대로 이어받아 성격별 재집계의 출발점으로 사용
  • 계정 마스터 — G/L 계정 마스터 조회(FS00)의 계정코드·계정명을 그대로 인용
항목내용
업무 영역재무회계(FI) · 결산·공시
관련 기준서IFRS 18 재무제표 표시와 공시(K-IFRS 제1118호) — 기능별 표시 시 성격별 비용 분석 공시
Namespacezui5.expnature
셸 구조조회조건 영역(우측 조회) + 성격별 비용 공시 대사표 + 계정별 상세, 계정 월별 발생 내역 Dialog
화면 수조회 화면 1개 + 계정 월별 발생 내역 다이얼로그
SAP 표준 T-codeF.01 · FAGLB03 · FS00
성격조회·대사형 — 원장 전기와 결산은 표준 트랜잭션이 담당
테마sap_horizon 단일 적용

실제 화면 4종 둘러보기

회계연도를 고르면 성격별 비용 공시 대사표가 뜹니다 → 계정 검색으로 특정 계정만 좁혀 보고 → 기능구분으로 매출원가·판관비만 걸러보고 → 계정을 눌러 월별 발생 내역을 드릴다운합니다.

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

Main.view.xml
성격별 비용 공시 대사표와 계정별 상세 메인 화면
메인 화면 — 조회조건, 성격별 비용 공시 대사표(요약), 계정별 상세를 한 화면에서 확인합니다. 기능별 합계 71억 587만 원과 성격별 합계가 정확히 일치하고, 미매핑 계정 1건이 "확인 필요" 상태로 별도 집계됩니다. 조회 버튼은 조회조건 영역 오른쪽 끝에 있습니다.
계정 검색
계정 검색으로 좁힌 화면
계정 검색 — 계정 검색란에 "511000"을 입력하고 Enter 키를 눌러 계정별 상세를 원재료비 계정 1건으로 좁힌 화면입니다. 버튼 클릭 없이 Enter 키만으로 조회됩니다.
기능구분 필터
기능구분을 매출원가로 좁힌 화면
기능구분 필터 — 기능구분을 "매출원가"로 좁히면 계정별 상세가 매출원가 계정 9건만 남습니다. 상단 대사표는 검색어·필터와 무관하게 항상 전체 기준을 유지해, 부분 조회 중에도 전체 대사가 맞는지 함께 확인할 수 있습니다.
계정 월별 발생 내역 Dialog
계정 월별 발생 내역 다이얼로그
계정 월별 발생 내역 — 계정별 상세 행을 클릭하면 열리는 다이얼로그입니다. 원재료비(제조) 계정의 1~12월 발생액과 연간 합계 24억 8,724만 원을 보여줍니다.

조작 방법

  1. 조회조건 영역에서 회계연도(2026 당기 · 2025 전기)와 기능구분(전체 · 매출원가 · 판매비와관리비)을 선택합니다.
  2. 계정코드 또는 계정명을 알고 있으면 계정 검색 입력란에 입력 후 Enter 키를 누르거나 우측 상단의 조회 버튼을 클릭합니다. 두 방법 모두 동일하게 동작합니다.
  3. 성격별 비용 공시 대사표는 검색어·필터와 무관하게 항상 전체 계정 기준 대사 결과를 보여줍니다.
  4. 계정별 상세 표의 행을 클릭하면 해당 계정의 월별 발생 내역 다이얼로그가 열립니다.
  5. CSV 다운로드로 현재 조회조건 기준 계정별 상세를 내려받습니다. UTF-8 BOM 이 붙어 엑셀에서 한글이 깨지지 않습니다.
  6. 조건 해제는 계정 검색어만 비우고 재조회, 초기화는 모든 조회조건을 기본값으로 되돌리고 재조회합니다.

계정별 성격 매핑 판정 규칙

이 화면의 핵심은 "계정이 성격별 항목에 정확히 매핑되어 있는가"와 "기능별 합계와 성격별 합계가 일치하는가"를 함께 점검하는 것입니다.

판정 조건결과 상태사용자 조치
계정이 성격별 매핑 테이블에 정확히 1개의 성격 코드로 연결됨매핑 정상조치 불필요
계정이 매핑 테이블에 없음(신규 계정 등)매핑 누락회계팀이 신규 계정의 성격 구분을 확정해 매핑 테이블에 반영 — 미매핑 버킷에 포함되어 있어 대사 자체는 깨지지 않음
성격별 합계 − 기능별 합계 = 0대사 일치조치 불필요
성격별 합계 − 기능별 합계 ≠ 0검증 필요매핑 테이블 누락·중복 여부와 원장 마감 상태를 확인

점검 도구이지 최종 판단이 아닙니다

이 화면은 계정을 성격별 항목으로 자동 재집계하고 기능별 합계와의 차이를 계산해 보여주는 점검 도구입니다. 어떤 계정을 어느 성격 항목으로 분류할지에 대한 최종 판단과 실제 공시 문안 확정은 회사와 감사인이 기준서 원문에 따라 내려야 합니다.

기능별→성격별 배분·대사 처리 순서

단계내용
1단계기능별(매출원가/판매비와관리비)로 표시된 GL 계정별 연간 발생액을 원장에서 집계합니다.
2단계각 계정을 성격별 비용 공시 매핑 테이블에서 조회해 성격 코드를 확인합니다.
3단계매핑 테이블에 없는 계정은 "미매핑" 버킷으로 별도 집계하되, 성격별 합계에는 포함시켜 총액은 항상 기능별 합계와 일치하도록 유지합니다.
4단계성격 코드별로 금액을 합산해 성격별 비용 공시 대사표를 만들고, 기능별 합계와 비교해 차이를 계산합니다. 계정별 상세에서 특정 행을 클릭하면 해당 계정의 월별 발생 내역을 드릴다운으로 보여줍니다.

조회조건

필드필수설명
Company Code고정회사코드(고정값 1000)
회계연도필수2026(당기) · 2025(전기)
기능구분선택전체 · 매출원가 · 판매비와관리비 — 계정별 상세만 필터링, 대사표는 항상 전체 기준
계정 검색선택계정코드 또는 계정명 부분일치, Enter 키로 즉시 재조회

결과 컬럼

성격별 비용 공시 대사표

컬럼의미 · 표시
구분기능별 합계(기준행) · 성격별 항목명(6종) · 미매핑(확인 필요) · 성격별 합계(검증행)
금액해당 구분의 연간 금액
계정수해당 성격 항목에 매핑된 계정 수
누계성격별 항목을 위에서부터 누적한 금액(마지막 행이 성격별 합계와 일치)

계정별 상세

컬럼의미 · 표시
계정코드 · 계정명G/L 계정 마스터
기능구분매출원가 · 판매비와관리비
성격구분매핑된 성격 코드(MATCOST·LABOR·DEPR·OUTSRC·UTIL·OTHEROP· UNMAPPED)
연간금액계정의 연간 발생액 합계, 행 클릭 시 월별 발생 내역 다이얼로그로 이동
매핑상태매핑 정상 · 매핑 누락(확인 필요)

SAP 표준 기능 매핑

표준 실행은 아래 T-code 들이 담당하고, 이 화면은 그 위에서 기능별 표시와 성격별 공시를 자동으로 대사하는 관점을 더해 확장합니다.

SAP 표준 T-code연관 기능
F.01재무제표 — 재무제표버전(FSV) 기준 G/L 계정 잔액 조회. 하나의 원장을 서로 다른 그룹핑(기능별/성격별 FSV)으로 조회하는 기능을 이 화면은 그 두 그룹핑 결과가 서로 일치하는지 자동 대사하는 방향으로 확장
FAGLB03G/L 계정 잔액 조회 — 계정별 연간·월별 발생액 조회의 표준 화면, 이 화면의 계정별 상세·월별 드릴다운이 참조하는 원천 조회 기능
FS00G/L 계정 마스터 조회 — 계정코드·계정명의 원천. 다만 "성격별 공시 항목" 자체는 표준 마스터 필드가 아니므로 이 화면은 별도 매핑 참조 데이터를 사용

IFRS 요구사항 매핑표

기준서요구사항이 화면의 대응 기능원천 데이터비고
IFRS 18
(K-IFRS 제1118호)
기능별 표시 시 성격별 비용 분석 공시 계정별 매핑을 통한 성격별 비용 공시 대사표 산출 ACDOCA.HSL, SKA1/SKAT 성격 코드 매핑은 표준 마스터가 아닌 이 화면의 참조 데이터(신설)
IFRS 18
(K-IFRS 제1118호)
동일 기간 재무제표 항목 간 총액 일치(완전성) 기능별 합계 vs 성격별 합계 자동 대사, 차이 0 검증 ACDOCA.HSL 집계값 재계산 차이 발생 시 검증 필요 상태로 표시, 자동 수정하지 않음
IFRS 18
(K-IFRS 제1118호)
신규·미분류 항목의 투명한 공시 미매핑 계정을 확인 필요 상태로 별도 노출하되 합계에는 포함 이 화면 매핑 참조 데이터(매핑상태) 합계 왜곡 없이 예외만 표시

참고 CDS 뷰

이 화면의 조회 로직을 참고용으로 스케치한 CDS 뷰이며, 실제 활성화된 뷰가 아닙니다.

@AbapCatalog.sqlViewName: 'ZEXPNATRECON'
@EndUserText.label: '기능별-성격별 비용 공시 대사 (참고 스케치)'
define view Z_I_ExpenseNatureRecon
  as select from acdoca
  association [0..1] to ska1          as _Account  on acdoca.racct = _Account.saknr
  association [0..1] to zexpnaturemap as _NatureMap on acdoca.racct = _NatureMap.racct
{
  key acdoca.rbukrs,
  key acdoca.gjahr,
  key acdoca.racct,
      acdoca.poper,
      _Account.saknr         as account_number,
      _NatureMap.func_code   as function_code,    // 매출원가 / 판매비와관리비
      _NatureMap.nature_code as nature_code,      // 원재료비 / 종업원급여비용 / ... / 미매핑
      sum( acdoca.hsl )      as annual_amount
}
group by
  acdoca.rbukrs, acdoca.gjahr, acdoca.racct, acdoca.poper,
  _Account.saknr, _NatureMap.func_code, _NatureMap.nature_code

매핑 이해를 돕기 위한 참고용 설계입니다. 실제 도입 시에는 회사의 계정과목표와 성격별 매핑 관리 방식에 맞춰 조정합니다.

OpenUI5 구성

기능사용 컨트롤
화면 골격sap.m.Page + 조회조건 영역 · 성격별 비용 공시 대사표 · 계정별 상세
조회조건sap.m.Select · sap.m.Input — 우측 끝에 조회 버튼, Enter 키 조회 지원
대사표 · 상세sap.m.Table + ObjectStatus — 매핑상태·미매핑 행을 Success/Warning 상태로 표시
월별 발생 내역sap.m.Dialog + sap.m.Table
공통 처리CSV 다운로드 공통 컨트롤러(UTF-8 BOM), 전역 오류 처리기

파일 구성

경로역할
index.htmlOpenUI5 부트스트랩 — sap_horizon · lodash · moment
Component.js조회조건 모델 · 결과 모델 초기화, 전역 오류 처리기 연결
manifest.json앱 디스크립터 — zui5.expnature · ko 로케일
view/Main.view.xml조회화면 + 성격별 비용 공시 대사표 + 계정별 상세
view/DetailDialog.fragment.xml계정 월별 발생 내역 다이얼로그
controller/Main.controller.js조회 · 대사 검증 · 다이얼로그 · CSV
controller/BaseController.jsCSV 다운로드 공통 처리
controller/ErrorHandler.js전역 오류 처리
model/ModelMock.jslocaldata JSON 읽기(Promise) + 기능별· 성격별 재집계
model/formatter.js금액 · 회계기간 · 매핑상태 포맷
i18n/i18n_ko.propertiesko 로케일 리소스
localdata/expnature.json계정 마스터 · 성격 매핑 참조 · 월별 발생액 검증용 데이터

운영 전환 시에는 ModelMock 내부만 실제 서비스 호출로 바꾸면 화면과 대사 로직은 그대로 씁니다.

검증 결과

GL 계정 21건(매출원가 9건 · 판매비와관리비 12건, 그중 1건은 의도적으로 성격 미매핑 처리), 2개 회계연도 × 12개월 발생 데이터 492건 기준으로 검증했습니다.

검증 항목결과
실행한 대사 검증 건수8건(연도별 4건 × 2개년)
기능별 합계 = 성격별 합계 (2026 · 2025)차이 0
원본 발생액에서 독립 재계산한 합계 vs 공시 합계차이 0
실패 건수0건
의도적 예외(미매핑 계정) 건수1건 — 2026년 신규계정 619000, 합계에는 정상 반영
최대 오차 금액0원
조회 버튼 상단 우측 배치 · Enter 키 조회 동작통과
적용 테마 sap_horizon 확인통과
화면 렌더링 — 실브라우저에서 조회 → 계정 검색 → 기능구분 필터 → 월별 내역까지 실동작 후 캡처4/4

계정·금액은 모두 검증용으로 구성한 데이터입니다.

자주 묻는 질문

IFRS 18은 언제부터 적용되나요?

IFRS 18은 2027년 1월 1일 이후 시작하는 회계연도부터 적용되며, 조기 적용이 허용됩니다. 비교표시되는 과거 기간의 재무제표도 새 기준에 맞춰 재작성합니다.

이 화면이 계정의 성격 분류를 최종 확정해 주나요?

아니요. 이 화면은 계정별 매핑 결과를 기능별 합계와 자동으로 대사해 차이와 미매핑 항목을 보여주는 점검 도구입니다. 실제 공시에 사용할 성격별 분류와 문안의 최종 확정은 회사와 감사인이 기준서 원문에 따라 판단해야 합니다.

성격별로 표시하는 회사도 이 화면이 필요한가요?

영업비용을 처음부터 성격별로 표시하는 회사는 이 대사 작업 자체가 필요하지 않습니다. 이 화면은 기능별로 표시하면서 주석에 성격별 분석을 별도로 공시해야 하는 회사를 대상으로 합니다.

미매핑 계정이 있으면 대사가 깨지나요?

아니요. 미매핑 계정은 미매핑(확인 필요) 버킷으로 성격별 합계에 포함되므로 기능별 합계와의 대사 자체는 항상 유지됩니다. 다만 해당 계정은 공시 전에 올바른 성격 항목으로 재분류해야 할 대상으로 화면에 표시됩니다.

한눈에 보는 요약내용
대상 기준서IFRS 18 재무제표 표시와 공시(K-IFRS 제1118호)
점검 대상기능별 표시 회사의 성격별 비용 분석 주석
핵심 산식성격별 합계 = 기능별 합계 (미매핑 포함), 차이 0 목표
검증 결과8건 전수 통과, 미매핑 예외 1건 별도 공시

관련 글

성격별 비용 공시, 지금 쓰는 SAP 원장 위에서 미리 맞춰 보세요

공시 시점에 급하게 취합하는 대신, 화면에서 바로 대사해 두면 결산 준비 시간이 줄어듭니다. 현재 SAP 환경 기준으로 어떻게 적용되는지 함께 확인해 드립니다.

# IFRS 18# K-IFRS 1118성격별 비용기능별 비용비용분석 주석OpenUI5