SAP 사용제한 현금 공시 점검 — IAS 7, 담보·공탁금으로 묶인 현금부터 가른다
제한 현금은 계좌 잔액 안에 그대로 남지만, 해제예정일이 지나도 안 풀린 항목부터 원장으로 짚어봅니다
IAS 7 현금흐름표(K-IFRS 제1007호)는 재무상태표에 표시된 현금및현금성자산 중 그룹이 사용할 수 없는 금액이 있으면 그 금액과 성격을 공시하도록 요구합니다. 담보로 제공된 예금, 소송 관련 공탁금, 해외 자회사의 외환규제로 국내 송금이 막힌 잔액처럼 계좌 잔액표에는 똑같이 "현금"으로 찍혀 있지만 실제로는 꺼내 쓸 수 없는 돈이 섞여 있다는 뜻입니다. 문제는 이런 제한이 언제 풀리는지, 해제예정일이 지난 뒤에도 실제로 풀렸는지를 결산 때마다 계좌 하나하나 붙잡고 확인하기 쉽지 않다는 점입니다.
표준 원장의 현금 계정 잔액을 그대로 이어받아 계좌별 제한 여부·사유·해제예정일을 모으고, 제한 사유별 집계와 회사·기간별 현금 잔액 대사(총잔액 = 제한금액 + 비제한금액)까지 OpenUI5 화면으로 확장했습니다. 해제예정일이 지난 뒤에도 여전히 제한 상태로 남아 있는 계좌는 "확인 필요"로 따로 표시합니다. 실제 구동 화면 4종을 함께 공개합니다.
SAP 표준 기능을 그대로 이어받은 부분
- 전표 원천 — 현금 GL 계정의 전표 항목(회사코드·계정·연도·금액) 구조를 그대로 사용
- 계정 마스터 — 현금성자산 계정 여부를 표준 G/L 계정 마스터로 식별
- 표준 화면 — 은행별 현금 현황(FF7A) · G/L 개별 항목(FBL3N) · 재무제표(F.01)
| 항목 | 내용 |
|---|---|
| 업무 영역 | 재무회계(FI) · 결산·공시 |
| 관련 기준서 | IAS 7 현금흐름표(K-IFRS 제1007호) — 사용제한 현금및현금성자산 공시 |
| Namespace | zui5.restrcash |
| 셸 구조 | 조회조건 영역(우측 조회) + 현금 항목·사유별 집계·대사 결과 3개 탭, 항목 상세 Dialog |
| 화면 수 | 조회 화면 1개(탭 3개) + 현금 항목 상세 다이얼로그 |
| SAP 표준 T-code | - (연관 화면은 §7 참고) |
| 성격 | 조회·집계·대사형 — 제한 해제 여부의 최종 확인은 회사·감사인 몫 |
| UI 테마 | sap_horizon 단일 적용 |
실제 화면 4종 둘러보기
회사코드·회계연도·기간을 넣고 조회하면 계좌별 제한 현황·사유별 집계·대사 결과가 탭으로 갈라져 뜹니다 → 현금 항목 행을 클릭하면 그 계좌의 상세 정보가 다이얼로그로 열립니다.
아래는 실제로 앱을 실행해 기능을 눌러 가며 캡처한 화면입니다. 이미지를 클릭하면 원본 크기로 확대됩니다.
조작 방법
- 회사코드(전체·1000·2000·3000) · 회계연도 · 기간(월) · 제한 여부 · 점검 상태를 지정합니다.
- 회계연도 입력 필드에서 Enter 키를 누르거나 조회조건 영역 오른쪽 끝의 조회 버튼을 누르면 재조회됩니다. 초기화 버튼은 조건을 기본값으로 되돌립니다.
- 현금 항목 탭에서 계좌별 잔액·제한금액·점검상태를 확인하고, 행을 클릭하면 상세 다이얼로그가 열립니다.
- 사유별 집계 탭에서 제한 사유별 건수·금액 합계를 확인합니다.
- 대사 결과 탭에서 회사·기간별 현금 잔액 대사 결과를 확인하고, 필요하면 재계산 버튼으로 다시 계산합니다(회사코드·기간을 각각 하나로 좁힌 뒤 사용).
- CSV 다운로드 버튼으로 현재 조회된 현금 항목 목록을 내려받습니다.
해제예정일 판정 로직
이 화면의 핵심 판정은 "제한이 걸린 현금이 해제예정일을 넘긴 뒤에도 여전히 제한 상태로 남아있는지"를 가려내는 것입니다.
| 판정 조건 | 결과 상태 | 사용자 조치 |
|---|---|---|
| 제한 여부 = 제한 없음 | 제한 없음 | 별도 조치 불필요 |
| 제한 여부 = 제한, 해제예정일 ≥ 기준일 | 정상 제한 | 해제예정일까지 계속 모니터링 |
| 제한 여부 = 제한, 해제예정일 < 기준일 | 확인 필요 | 은행·담당 부서에 해제 여부 확인 후 정보 갱신 |
이 화면이 대신 정하지 않는 것
제한이 실제로 풀렸는지, 그래서 공시에서 빼도 되는지는 은행·담당 부서 확인을 거쳐 회사가 판단합니다. 이 화면은 그 확인이 필요한 후보를 골라내는 점검 도구입니다.
대사 처리 순서
| 단계 | 내용 |
|---|---|
| 1단계 | 회사코드·계좌 단위로 현금성자산 잔액을 수집 |
| 2단계 | 계좌별 제한 여부·사유를 확인해 제한금액·비제한금액으로 구분 |
| 3단계 | 제한된 항목은 해제예정일을 기준일과 비교해 점검상태를 산정(§3 판정 규칙) |
| 4단계 | 제한 사유별 건수·금액을 집계 |
| 5단계 | 회사·기간 단위로 현금 총잔액과 (제한금액 합 + 비제한금액 합)을 대사 |
| 6단계 | 대사차이와 확인 필요 건수를 화면에서 바로 확인 |
조회조건
| 필드 | 필수 | 설명 |
|---|---|---|
| 회사코드 | 선택 | 전체 또는 가상 회사코드 1개(전체 선택 시 조건 미전달) |
| 회계연도 | 필수 | 4자리 연도, Enter 키로 바로 조회 |
| 기간(월) | 선택 | 전체 또는 특정 월 |
| 제한 여부 | 선택 | 전체/제한/제한 없음 |
| 점검 상태 | 선택 | 전체/확인 필요/정상 제한/제한 없음 |
결과 컬럼
| 탭 | 컬럼 · 표시 |
|---|---|
| 현금 항목 | 회사코드·계좌번호·은행명·연도·기간·잔액·제한금액·비제한금액·제한사유·해제예정일·점검상태 |
| 사유별 집계 | 회사코드·연도/기간·제한사유·건수·제한금액 합계 |
| 대사 결과 | 회사코드·연도/기간·현금 총잔액·제한금액 합·비제한금액 합·대사차이·확인필요 건수·점검상태 |
SAP 표준 기능 매핑
사용제한 현금 공시는 IFRS 공시 관점의 재구성 화면이라, 이 화면 전체에 정확히 대응하는 SAP 표준 T-code는 확인되지 않습니다. 아래는 반영된 잔액·계정을 사후에 조회할 때 참고할 수 있는 연관 표준 화면입니다.
| SAP 표준 T-code | 연관 기능 |
|---|---|
FF7A | 은행별 현금 현황 조회 — 계좌별 잔액 조회 관점을 참고 |
FBL3N | G/L 개별 항목 조회 — 현금 GL 계정의 실제 전표 라인 확인 |
F.01 | 재무제표 조회 — 현금 총잔액 대사의 비교 기준 |
IFRS 요구사항 매핑표
| 기준서 | 요구사항 | 이 화면의 대응 기능 | 원천 데이터 | 비고 |
|---|---|---|---|---|
| IAS 7 (K-IFRS 제1007호) | 사용이 제한된 현금및현금성자산의 금액과 성격 공시 | 계좌별 제한 현황 조회, 제한 사유별 집계 | 현금 GL 계정 잔액, 은행계좌·제한 약정 정보 | 공시 문단번호는 원문 미확인으로 적지 않음 |
| IAS 7 (K-IFRS 제1007호) | 현금및현금성자산 총액과의 정합성 | 회사·기간별 현금 총잔액 대사(총잔액=제한+비제한) | 현금 GL 계정 잔액 합계 | 대사차이는 0을 기본으로 하고 차이 발생 시 "확인 필요"로 표기 |
도입 시 확인이 필요한 부분
제한 사유의 분류 기준과 해제예정일 갱신 절차는 회사의 은행 약정·담보 관리 프로세스와 감사인 협의를 거쳐 확정해야 합니다.
참고 CDS 뷰
운영 서비스로 연결할 때를 가정해 새로 스케치한 집계 뷰 예시입니다(운영 반영 시 권한 체크를 추가해야 합니다).
@AbapCatalog.sqlViewName: 'IRESTRCASHITEM'
define view entity I_RestrictedCashItem
as select from bseg
association [1..1] to skb1 as _Account on _Account.saknr = bseg.hkont
{
key bseg.bukrs as CompanyCode,
key bseg.hkont as GlAccount,
bseg.gjahr as FiscalYear,
bseg.dmbtr as BalanceAmount,
_Account
}
// 계좌별 제한 여부·사유·해제예정일은 별도 관리하는
// 은행 약정·담보 관리 대장에서 읽어와 위 집계와 함께 대사
OpenUI5 구성
| 기능 | 사용 컨트롤 |
|---|---|
| 화면 골격 | sap.m.Page + 조회조건 Panel · 현금 항목·사유별 집계·대사 결과 3개 탭(sap.m.IconTabBar) |
| 조회조건 | sap.m.Select · sap.m.Input — 우측 끝에 조회 버튼, Enter 키로 즉시 재조회 |
| 현금 항목 목록 | sap.ui.table.Table(컬럼 10개 초과) — 행 클릭 시 상세 다이얼로그 |
| 집계·대사표 | sap.m.Table + sap.m.ObjectStatus로 점검상태·대사차이 표시 |
| 상세 | sap.m.Dialog — 별도 서비스 재호출 없이 선택 행 데이터를 그대로 표시 |
| 공통 처리 | CSV 다운로드 공통 컨트롤러, 전역 오류 처리기 |
서비스 경로는 manifest.json 의 dataSources 에 상대 경로로 선언한 OData 모델을 그대로
바인딩하며, 조회조건은 sap.ui.model.Filter 로 조립해 전달합니다.
파일 구성
| 경로 | 역할 |
|---|---|
index.html | OpenUI5 부트스트랩 — sap_horizon |
Component.js | 컴포넌트 초기화, 전역 오류 처리기 연결 |
manifest.json | 앱 디스크립터 — zui5.restrcash · OData dataSources · ko 로케일 |
view/Main.view.xml | 조회조건 + 현금 항목·사유별 집계·대사 결과 3개 탭 |
view/DetailDialog.fragment.xml | 현금 항목 상세 다이얼로그 |
controller/Main.controller.js | 조회 · 필터 조립 · 다이얼로그 · CSV 다운로드 · 재계산 로직 |
controller/BaseController.js | CSV 다운로드 공통 처리 |
model/ErrorHandler.js | 전역 오류 처리 |
model/formatter.js | 금액·날짜·점검상태 서식 |
i18n/i18n_ko.properties | ko 로케일 리소스 |
검증 환경 구성 상세는 이 글에서 다루지 않습니다. 운영 전환 시에는 화면과 판정 로직은 그대로 두고 데이터 계층만 실제 서비스 호출에 맞추면 됩니다.
검증 결과
화면 구성에 쓴 데이터는 계좌 잔액·제한금액·비제한금액이 모두 정수(원) 단위로 정확히 맞물리도록 구성했습니다(반올림 오차 없음).
| 검증 항목 | 결과 |
|---|---|
| 현금 잔액 대사(6개 회사·기간 그룹, 26개 항목 전수) | 통과(대사차이 0) |
| 해제예정일 경과 후 미해제 점검(의도적으로 구성한 케이스) | 26건 중 6건 "확인 필요"로 표시 |
| 표시 금지 검사 — 커스텀 프로그램ID·앱 식별자·출처 표현 검출 | 0건 |
| 화면 렌더링 — 실브라우저에서 조회 → 탭 전환 → 항목 클릭 상세까지 실동작 후 캡처 | 4/4 |
| 조회 버튼 위치 · sap_horizon 테마 적용 · Enter 키 조회 · CSV 다운로드 동작 | 확인 |
계정·금액은 모두 검증용으로 구성한 가상 데이터입니다.
자주 묻는 질문
이 화면이 다루는 기준서의 시행 시기와 적용 범위는 어떻게 되나요?
IAS 7 현금흐름표(K-IFRS 제1007호)의 사용제한 현금 공시 요구사항은 이미 시행 중인 기준으로, 별도의 시행일·경과규정은 원문에서 추가로 확인되지 않아 이 글에는 적지 않았습니다. 회사의 실제 적용 시기와 범위는 감사인과 협의해 확정해야 합니다.
화면의 판정 결과를 그대로 공시에 반영해도 되나요?
아닙니다. 이 화면은 제한 현금 항목을 분류·집계·대사하는 조회·점검 도구이며, 최종 회계 판단과 공시 문구 확정은 회사와 감사인이 합니다.
제한 사유는 어떻게 정해지나요?
담보 제공, 소송 공탁금, 해외 외환규제, 설비투자 약정 예치 등 계좌별 제한 약정 정보를 바탕으로 분류합니다. 실제 운영 시에는 은행 약정·담보 관리 대장과 연계해 최신 상태를 유지해야 합니다.
"확인 필요" 상태는 언제 없어지나요?
해당 계좌의 제한이 실제로 해제되어 은행·담당 부서 확인 후 제한 여부와 해제예정일 정보가 갱신되면 "확인 필요" 상태에서 벗어납니다.