SAP 자본변동표 조회 — 자본이 늘고 준 이유를 항목별로
자본금·자본잉여금·이익잉여금 등 항목별 기초잔액에서 당기 증감을 거쳐 기말잔액에 이르는 흐름을 집계하는 화면입니다.
재무제표 네 가지 중 자본변동표가 가장 손이 많이 갑니다. 다른 표는 계정 잔액을 모으면 되지만, 자본변동표는 왜 변했는지를 항목별로 갈라야 하기 때문입니다.
같은 이익잉여금 증가라도 당기순이익 대체와 배당은 반대 방향이고, 공시에서 별도 줄로 나갑니다. 표준 자본 계정 구조를 그대로 이어받아 증감 사유별로 집계하도록 OpenUI5 화면으로 확장한 것이 이 앱입니다. 실제 구동 화면 3종을 함께 공개합니다.
SAP 표준 기능을 그대로 이어받은 부분
- 자본 항목 — 자본금 · 자본잉여금 · 이익잉여금 등 항목 구분(
EquityItem) - 계정 — 항목에 연결된 GL 계정(
GlAccount)과 명칭 - 기초·기말 — 기초잔액(
OpeningBalance)과 기말잔액(ClosingBalance) - 증감 사유 — 당기순이익 대체 · 배당 · 증자감자 · 기타포괄손익 · 자기주식 · 기타조정
- 근거 전표 — 증감을 만든 회계전표 차대 내역
| 항목 | 내용 |
|---|---|
| 대응 T-code | S_ALR_87012172 · FAGLB03 |
| 업무 영역 | 재무회계(FI) · 결산 · 공시 |
| Namespace | zui5.equitychg |
| 셸 구조 | 조회조건 영역(우측 조회·초기화) + 자본 항목별 증감, 행 선택 시 전표 상세 |
| 화면 수 | 조회 화면 1개 + 전표 상세 |
| 데이터 | 자본 항목 30건 · 근거 전표 54건 |
| 성격 | 조회형(Read-Only) — 전기는 표준이 담당 |
| UI 테마 | sap_horizon 단일 적용 |
실제 화면 3종 둘러보기
회사코드·회계연도·자본항목으로 조회하면 항목별 증감이 나옵니다 → 기초에서 기말까지 검산하고 → 행을 눌러 증감의 근거 전표를 확인합니다.
아래는 실제로 앱을 실행해 기능을 눌러 가며 캡처한 화면입니다. 이미지를 클릭하면 원본 크기로 확대됩니다.
조작 방법
- 회사코드와 회계연도를 고릅니다.
- 자본항목으로 자본금·이익잉여금 등을 나눠 볼 수 있습니다.
- 조회조건 입력필드에서 값을 바꾸거나 Enter 를 누르면 즉시 조회됩니다.
- 왼쪽에서 오른쪽으로 읽으며 기초 + 증감 = 기말이 맞는지 봅니다.
- 기타조정 금액이 크면 분류가 잘못됐을 수 있습니다. 근거를 확인합니다.
- 행을 선택하면 증감 근거 전표가 열립니다.
- 결과는 CSV 다운로드로 내려받아 공시 자료로 씁니다.
증감 산식
항목마다 여섯 가지 증감을 더하면 기말이 나옵니다.
기말잔액(ClosingBalance) = 기초잔액(OpeningBalance)
+ 당기순이익 대체(ChgNetIncome)
+ 배당(ChgDividend)
+ 유상증자·감자(ChgCapitalChange)
+ 기타포괄손익 재측정(ChgOci)
+ 자기주식 증감(ChgTreasury)
+ 기타조정(ChgOther)
식이 성립하지 않으면 → 분류되지 않은 증감 존재
기타조정이 크면 의심하는 이유
기타조정은 앞의 다섯 가지에 속하지 않는 나머지입니다. 정상 운영이라면 작아야 합니다. 이 금액이 크다는 것은 증감을 사유별로 분류하지 못했다는 뜻이고, 공시에서 "기타" 로 뭉뚱그리면 주석에서 설명을 요구받습니다.
자본 항목별 주요 증감
| 자본 항목 | 주요 증감 사유 | 발생 시점 |
|---|---|---|
| 자본금 | 유상증자 · 무상증자 · 감자 | 주주총회 결의 |
| 자본잉여금 | 주식발행초과금 · 감자차익 | 증자·감자 시 발생 |
| 이익잉여금 | 당기순이익 대체 · 배당 | 매년 정기적 |
| 기타포괄손익누계액 | 재평가잉여금 · 해외사업환산 | 재측정 시 |
| 자기주식 | 취득 · 처분 · 소각 | 자본 차감 항목 |
조회조건
| 필드 | 필수 | 설명 |
|---|---|---|
회사코드 Bukrs | 필수 | 대상 회사코드 |
회계연도 FiscalYear | 필수 | 변동 대상 연도 |
자본항목 EquityItem | 선택 | 자본금 · 이익잉여금 등 |
계정 GlAccount | 선택 | 특정 계정만 |
| 상태 | 선택 | 전체 / 검산 불일치만 |
결과 컬럼
| 컬럼 | 의미 · 표시 |
|---|---|
자본항목 EquityItem · EquityItemText | 항목 코드와 명칭 |
계정 GlAccount · GlAccountText | 연결 GL 계정 |
통화 Currency | 표시 통화 |
기초잔액 OpeningBalance | 연초 잔액 |
당기순이익 대체 ChgNetIncome | 손익 대체분 |
배당 ChgDividend | 배당 지급 |
유상증자·감자 ChgCapitalChange | 자본 거래 |
기타포괄손익 ChgOci | 재측정 손익 |
자기주식 ChgTreasury | 취득·처분 |
기타조정 ChgOther | 나머지 증감 |
기말잔액 ClosingBalance | 기초 + 증감 |
SAP 표준 기능 매핑
| 표준 | 역할 | 이 화면에서의 확장 |
|---|---|---|
S_ALR_87012172 | 자본변동표 리포트 | 증감 사유별 분류와 검산을 추가 |
FAGLB03 | GL 계정 잔액 | 기초·기말 잔액 원천 |
ACDOCA | 유니버설 저널 | 증감 전표 원천 |
SKA1 | 계정 마스터 | 자본 계정 명칭 |
BSEG | 전표 라인 | 근거 전표 차대 |
도입 시 확인이 필요한 부분
증감을 사유별로 나누려면 전표에 구분 근거가 있어야 합니다. 전표유형이나 거래유형, 적요만으로는 자동 분류가 어려운 경우가 많아, 자본 거래에 별도 코드를 부여하는 운영 규칙이 필요합니다. 그 규칙이 없으면 대부분이 기타조정으로 몰립니다.
참고 CDS 뷰
@AbapCatalog.sqlViewName: 'ZCEQUITYCHG'
@EndUserText.label: '자본변동표 (Z)'
define view Z_C_EQUITY_CHANGES
as select from acdoca as Line
left outer join skat as AcctText on Line.racct = AcctText.saknr
and AcctText.spras = 'K'
{
key Line.rbukrs as Bukrs,
key Line.gjahr as FiscalYear,
key Line.racct as GlAccount,
AcctText.txt50 as GlAccountText,
Line.rhcur as Currency,
// 기초잔액 = 이월 기간(poper 000)
sum( case when Line.poper = '000' then Line.hsl else 0 end ) as OpeningBalance,
// 증감 사유는 전표유형·거래유형을 매핑해 분류
sum( case when Line.blart = 'SA' then Line.hsl else 0 end ) as ChgOther,
sum( Line.hsl ) as TotalMovement
// 기말잔액 = 기초 + 증감 합계 (소비 뷰에서 계산)
}
group by Line.rbukrs, Line.gjahr, Line.racct, AcctText.txt50, Line.rhcur
매핑 이해를 돕기 위한 참고용 설계입니다. 실제 도입 시에는 운영 환경 설정과 릴리즈에 맞춰 조정합니다.
OpenUI5 구성
| 기능 | 사용 컨트롤 |
|---|---|
| 화면 골격 | sap.m.Page + 조회조건 영역 · 자본 변동 테이블 |
| 조회조건 | sap.m.Select · sap.m.DatePicker · sap.m.Input — 우측 끝에 조회·초기화 |
| 이벤트 | 모든 버튼이 onPAI 단일 진입점, fcCode 로 분기 |
| 변동 테이블 | sap.m.Table — 기초→증감→기말 순서로 열 배치 |
| 금액 | sap.m.ObjectNumber — 감소는 음수 표기 |
| 상세 화면 | sap.m.Dialog — 증감 근거 전표 차대 |
공시 서식 순서를 그대로 쓴 이유
자본변동표는 공시 서식이 정해져 있습니다. 화면의 열 순서를 그 서식과 맞추면 조회 결과를 그대로 옮겨 적을 수 있습니다. 순서가 다르면 옮기는 과정에서 실수가 생기고, 검토하는 사람도 서식과 대조하며 읽어야 합니다.
파일 구성
| 경로 | 역할 |
|---|---|
manifest.json | 앱 디스크립터 — 앱 ID(zui5.equitychg) · ko 로케일 |
view/Main.view.xml | 조회조건과 자본 변동 테이블 |
controller/Main.controller.js | 조회 · 증감 집계 · 검산 · CSV |
model/ModelMock.js | localdata JSON 읽기(Promise) |
js/formatter.js | 금액 · 부호 포맷터 |
localdata/equitychg.json | 자본 항목 30건 |
localdata/equitypostings.json | 근거 전표 54건 |
검증 결과
| 검증 항목 | 결과 |
|---|---|
| 기말잔액 = 기초잔액 + 증감 6종 합계 (전 항목) | 통과 |
| 근거 전표 차변 합계 = 대변 합계 | 통과 |
| 증감 금액 = 근거 전표 금액 합계 | 통과 |
| 자본 항목과 GL 계정 매핑 정합 | 통과 |
| 계정 코드가 있으면 명칭도 존재 | 통과 |
| XML · JSON 전체 파싱 | 오류 0건 |
| 화면 렌더링 — 실브라우저 조회 → 상세 실동작 후 캡처 | 3/3 |
| 테마 런타임 확인 | sap_horizon |
자주 묻는 질문
증감 사유는 어떻게 자동으로 나누나요?
전표유형이나 거래유형으로 매핑합니다. 다만 일반전표로 처리한 자본 거래는 구분이 어려워, 자본 거래에 별도 코드를 부여하는 운영 규칙이 있어야 자동 분류가 정확해집니다.
기타포괄손익에는 무엇이 들어가나요?
재평가잉여금, 해외사업장 환산차이, 일부 금융자산 평가손익 등입니다. 손익계산서를 거치지 않고 자본으로 바로 가는 항목이라 별도 줄로 관리합니다.
자기주식은 왜 음수로 표시되나요?
자본의 차감 항목이기 때문입니다. 자기주식을 취득하면 자본총계가 줄어드는 것이 정상이며, 표시 부호를 맞춰 두면 합계가 그대로 자본총계와 연결됩니다.
SAP 표준 기능과 어떻게 이어지나요?
자본 계정 잔액과 전표는 표준이 관리하고 리포트도 제공합니다. 이 화면은 그 잔액을 증감 사유별로 갈라 공시 서식 순서로 배열하고, 근거 전표까지 잇는 확장입니다.