SAP 재무비율 분석 — 열 가지 지표로 월별 추이를 보기
재무상태표와 손익계산서에서 유동성·수익성·안정성 비율 10종을 산출해 월별 추이와 기준치 대비 위험신호를 확인하는 화면입니다.
재무제표 숫자는 그 자체로는 좋은지 나쁜지 알 수 없습니다. 자산이 500억이라는 사실보다 부채와 비교해 얼마인가가 판단의 근거입니다.
비율은 매달 엑셀로 계산하는 경우가 많은데, 그러면 추이가 남지 않고 기준치 비교도 사람 몫입니다. 표준 재무제표 데이터를 그대로 이어받아 10종 비율을 월별로 산출하고 신호까지 붙이도록 OpenUI5 화면으로 확장한 것이 이 앱입니다. 실제 구동 화면 3종을 함께 공개합니다.
SAP 표준 기능을 그대로 이어받은 부분
- 재무상태표 항목 — 유동자산 · 비유동자산 · 자산총계 · 부채 · 자본 구조를 그대로 사용
- 손익계산서 항목 — 매출액 · 영업이익 · 당기순이익
- 기간 — 회계연도(
Gjahr)와 월(Monat) 단위 집계 - 회사코드 — 분석 단위(
Bukrs) - 재무제표 버전 — 항목 분류 체계
| 항목 | 내용 |
|---|---|
| 업무 영역 | 관리회계 · 재무분석 |
| Namespace | zui5.finratio |
| 셸 구조 | 조회조건 영역(우측 조회·초기화) + 비율 목록과 월별 추이 |
| 화면 수 | 조회 화면 1개 + 추이 상세 |
| 데이터 | 재무상태표 32건 · 손익계산서 32건 |
| 성격 | 조회·분석형 — 원천 데이터는 표준 재무제표 |
| 비율 수 | 유동성 · 수익성 · 안정성 10종 |
| UI 테마 | sap_horizon 단일 적용 |
실제 화면 3종 둘러보기
회사코드·회계연도·기간으로 조회하면 비율 10종이 산출됩니다 → 기준치를 벗어난 비율을 먼저 보고 → 월별 추이와 전년 동월 대비로 방향을 확인합니다.
아래는 실제로 앱을 실행해 기능을 눌러 가며 캡처한 화면입니다. 이미지를 클릭하면 원본 크기로 확대됩니다.
조작 방법
- 회사코드와 회계연도·기준월을 고릅니다.
- 조회조건 입력필드에서 값을 바꾸거나 Enter 를 누르면 즉시 조회됩니다.
- 판정이 위험인 비율부터 봅니다. 기준치를 벗어난 지표입니다.
- 전년동월 대비 증감으로 방향을 봅니다. 수치보다 추세가 중요합니다.
- 비율을 선택하면 월별 추이와 분자·분모 항목이 열립니다.
- 결과는 CSV 다운로드로 내려받아 경영 보고 자료로 씁니다.
비율 10종 산식
세 갈래로 나뉘고, 각각 다른 질문에 답합니다.
[유동성] 단기에 갚을 수 있는가
유동비율 = 유동자산 ÷ 유동부채 × 100
당좌비율 = (유동자산 − 재고자산) ÷ 유동부채 × 100
현금비율 = (현금 + 단기투자) ÷ 유동부채 × 100
[안정성] 구조가 튼튼한가
부채비율 = 부채총계 ÷ 자본총계 × 100
자기자본비율 = 자본총계 ÷ 자산총계 × 100
비유동비율 = 비유동자산 ÷ 자본총계 × 100
[수익성] 얼마나 벌었는가
매출총이익률 = 매출총이익 ÷ 매출액 × 100
영업이익률 = 영업이익 ÷ 매출액 × 100
ROA = 당기순이익 ÷ 자산총계 × 100
ROE = 당기순이익 ÷ 자본총계 × 100
당좌비율을 따로 두는 이유
유동비율이 200%여도 그 대부분이 재고라면 당장 갚을 돈은 없습니다. 재고는 팔려야 현금이 되고, 안 팔리는 재고일수록 유동비율만 높입니다. 재고를 뺀 당좌비율을 함께 봐야 실제 단기 지급 능력이 드러납니다.
비율 그룹과 해석
| 그룹 | 보는 것 | 지표 | 해석 |
|---|---|---|---|
| 유동성 | 단기 지급 능력 | 유동비율 · 당좌비율 · 현금비율 | 낮으면 자금 압박 |
| 안정성 | 자본 구조 건전성 | 부채비율 · 자기자본비율 · 비유동비율 | 높은 부채비율은 위험 |
| 수익성 | 이익 창출력 | 매출총이익률 · 영업이익률 · ROA · ROE | 추세가 중요 |
조회조건
| 필드 | 필수 | 설명 |
|---|---|---|
회사코드 Bukrs | 필수 | 분석 단위 |
회계연도 Gjahr | 필수 | 대상 연도 |
기준월 Monat | 필수 | 분석 기준월 |
| 비율 그룹 | 선택 | 유동성 / 안정성 / 수익성 |
| 비교 기준 | 선택 | 전년동월 / 전월 |
결과 컬럼
| 컬럼 | 의미 · 표시 |
|---|---|
| 비율명 | 유동비율 · ROE 등 |
| 그룹 | 유동성 / 안정성 / 수익성 |
| 산식 | 분자 ÷ 분모 구성 |
| 당월 값 | 기준월 비율(%) |
| 기준치 | 판정 기준선 |
| 판정 | 양호 / 주의 / 위험. 상태 색 |
| 전년동월 값 | 같은 달 전년 수치 |
| 증감 | 전년 대비 변화폭. 부호 표시 |
| 분자 · 분모 금액 | 상세에서 확인 |
SAP 표준 기능 매핑
| 표준 | 역할 | 이 화면에서의 확장 |
|---|---|---|
S_ALR_87012284 | 재무제표 조회 | 항목 금액을 비율 산출 원천으로 사용 |
FS10N | 계정 잔액 | 항목별 집계 |
ACDOCA | 유니버설 저널 | 월별 집계 원천 |
| 재무제표 버전 | 항목 분류 체계 | 유동·비유동 구분 기준 |
T001 | 회사코드 마스터 | 분석 단위 |
도입 시 확인이 필요한 부분
비율의 분자·분모를 어느 재무제표 항목으로 잡을지가 핵심입니다. 재무제표 버전의 항목 분류를 따르므로 그 설정이 정확해야 비율이 의미를 갖습니다. 기준치도 업종에 따라 크게 달라 동종업계 수치를 참고해 설정으로 관리해야 합니다.
참고 CDS 뷰
@AbapCatalog.sqlViewName: 'ZCFINRATIO'
@EndUserText.label: '재무비율 산출 기초 (Z)'
define view Z_C_FINANCIAL_RATIO_BASE
as select from acdoca as Line
{
key Line.rbukrs as Bukrs,
key Line.gjahr as Gjahr,
key Line.poper as Monat,
// 재무제표 버전의 항목 분류에 따라 계정을 묶어 집계
sum( case when Line.racct between '100000' and '199999'
then Line.hsl else 0 end ) as CurrentAssets,
sum( case when Line.racct between '200000' and '249999'
then Line.hsl else 0 end ) as CurrentLiabilities,
sum( case when Line.racct between '400000' and '499999'
then Line.hsl else 0 end ) as Revenue
// 유동비율 = CurrentAssets / CurrentLiabilities × 100
// 나머지 비율도 같은 방식으로 소비 뷰에서 계산
}
group by Line.rbukrs, Line.gjahr, Line.poper
매핑 이해를 돕기 위한 참고용 설계입니다. 실제 도입 시에는 운영 환경 설정과 릴리즈에 맞춰 조정합니다.
OpenUI5 구성
| 기능 | 사용 컨트롤 |
|---|---|
| 화면 골격 | sap.m.Page + 조회조건 영역 · 비율 테이블 |
| 조회조건 | sap.m.Select · sap.m.DatePicker · sap.m.Input — 우측 끝에 조회·초기화 |
| 이벤트 | 모든 버튼이 onPAI 단일 진입점, fcCode 로 분기 |
| 비율 테이블 | sap.m.Table — 그룹별 헤더로 구분 |
| 판정 표시 | sap.m.ObjectStatus — 양호 / 주의 / 위험 |
| 추이 화면 | sap.m.Dialog + 월별 표 — 분자·분모 포함 |
분자·분모를 상세에 넣은 이유
비율이 나빠졌다는 것만으로는 조치가 정해지지 않습니다. 유동비율이 떨어졌다면 유동자산이 줄어든 것인지 유동부채가 늘어난 것인지에 따라 대응이 다릅니다. 분자와 분모를 함께 보여 주면 그 구분이 바로 됩니다.
파일 구성
| 경로 | 역할 |
|---|---|
manifest.json | 앱 디스크립터 — 앱 ID(zui5.finratio) · ko 로케일 |
view/Main.view.xml | 조회조건과 비율 테이블 |
controller/Main.controller.js | 조회 · 비율 산출 · 판정 · CSV |
model/ModelMock.js | localdata JSON 읽기(Promise) |
js/formatter.js | 비율 · 증감 부호 · 판정 색 포맷터 |
localdata/bsdata.json | 재무상태표 32건 |
localdata/pldata.json | 손익계산서 32건 |
검증 결과
| 검증 항목 | 결과 |
|---|---|
| 비율 10종이 산식대로 재계산 (전 월) | 통과 |
| 재무상태표: 자산총계 = 부채총계 + 자본총계 | 통과 |
| 유동자산 + 비유동자산 = 자산총계 | 통과 |
| 당좌비율 ≤ 유동비율 | 통과 |
| 증감 = 당월 값 − 전년동월 값 | 통과 |
| XML · JSON 전체 파싱 | 오류 0건 |
| 화면 렌더링 — 실브라우저 조회 → 추이 실동작 후 캡처 | 3/3 |
| 테마 런타임 확인 | sap_horizon |
자주 묻는 질문
기준치는 어떻게 정하나요?
업종 평균이나 내부 목표를 씁니다. 제조업과 유통업은 적정 부채비율이 크게 달라 일률적인 기준은 의미가 없습니다. 설정으로 관리해 업종과 회사 상황에 맞춰 조정합니다.
월별로 보면 변동이 심한데요?
월말 시점 잔액이라 일시적 요인에 흔들립니다. 그래서 절대 수준보다 추세를 봅니다. 전년 동월과 비교하면 계절성도 상쇄돼 방향이 더 분명해집니다.
ROA 와 ROE 중 무엇을 봐야 하나요?
둘 다 봅니다. ROE 만 높은데 ROA 가 낮으면 부채를 많이 써서 자기자본 수익률을 끌어올린 상태입니다. 부채비율과 함께 읽어야 해석이 정확해집니다.
SAP 표준 기능과 어떻게 이어지나요?
재무제표 항목 금액은 표준 집계가 만듭니다. 이 화면은 그 금액으로 비율 10종을 산출하고 기준치 판정과 전년 대비 증감을 붙여, 엑셀 작업 없이 매달 같은 기준으로 보게 하는 확장입니다.