SAP 복구·해체 충당부채 재측정 반영 점검 — IFRIC 1, 할인율이 바뀐 만큼 자산 장부금액도 움직였는가
부채는 다시 측정했는데, 자산 쪽 장부금액은 그대로 둔 채 결산이 끝나는 일이 있습니다
IAS 37 「충당부채, 우발부채 및 우발자산」(K-IFRS 제1037호)은 복구·해체 의무를 현재가치로 측정해 인식하고 매 보고기간말에 다시 검토하라고 요구합니다. IAS 16 「유형자산」(K-IFRS 제1016호)은 그렇게 인식한 금액을 관련 자산의 취득원가에 포함하도록 하고, IFRIC 1 「복구·해체·유사부채의 변동」은 그 이후 부채가 다시 측정되면 원가모형에서 변동액을 관련 자산의 장부금액에 가감하도록 합니다. 세 요구사항이 이어지는 지점이 이 화면의 출발점입니다.
실무에서 어긋나기 쉬운 곳은 후속 재측정입니다. 할인율이 바뀌거나 복구원가 추정액이 달라지면 부채 잔액은 움직이는데, 같은 금액이 관련 자산의 장부금액에도 가감돼야 한다는 점은 결산 일정에 밀려 뒤로 가기 쉽습니다. 표준 원장과 자산 원장의 구조를 그대로 이어받아, 충당부채를 자산 단위로 기초-신규인식-이자비용-재측정-사용-환입-기말로 재구성하고, 같은 화면에서 복구원가 자산의 장부금액 흐름을 나란히 놓아 부채 재측정액과 자산 조정액이 같은 금액으로 맞물렸는지 대사하는 화면을 OpenUI5로 확장했습니다. 어긋난 건은 "점검 필요"로 따로 표시합니다. 실제 구동 화면 4종을 함께 공개합니다.
SAP 표준 기능을 그대로 이어받은 부분
- 원장 구조 — 충당부채 증감은 표준 전표 라인아이템 구조를 그대로 사용
- 자산 원장 — 취득원가·상각 정보는 표준 고정자산 마스터와 연도별 금액 구조를 그대로 사용
- 표준 화면 — G/L 개별 항목 조회(FBL3N · FAGLL03) · 자산 익스플로러(AW01N) · 고정자산 마스터 조회(AS03) · 감가상각 실행(AFAB) · 전표 조회(FB03)
| 항목 | 내용 |
|---|---|
| 업무 영역 | 재무회계(FI) · 결산·공시 |
| 관련 기준서 | IAS 37 충당부채, 우발부채 및 우발자산(K-IFRS 제1037호) · IAS 16 유형자산(K-IFRS 제1016호) · IFRIC 1 복구·해체·유사부채의 변동 |
| Namespace | zui5.decomprov |
| 셸 구조 | 조회조건 영역(우측 조회) + 대사 요약 + 증감 명세·복구원가 자산 대사·할인율 변동·사업장별 집계 4개 탭, 상세 Dialog |
| 화면 수 | 조회 화면 1개(탭 4개) + 상세 다이얼로그 |
| SAP 표준 T-code | FBL3N · FAGLL03 · AW01N · AS03 · AFAB · FB03 |
| 데이터 연동 방식 | OData V2 — manifest.json 의 dataSources 에 상대 경로로 선언 |
| 성격 | 조회·집계·대사형 — 최종 회계 판단은 회사·감사인 몫 |
| UI 테마 | sap_horizon 단일 적용 |
실제 화면 4종 둘러보기
회사코드·회계연도·사업장·충당부채 유형·점검상태를 넣고 조회하면 대사 요약이 먼저 뜨고, 그 아래 증감 명세·복구원가 자산 대사·할인율 변동·사업장별 집계가 탭으로 갈라집니다 → 행을 클릭하면 그 자산의 상세가 다이얼로그로 열립니다.
아래는 실제로 앱을 실행해 기능을 눌러 가며 캡처한 화면입니다. 이미지를 클릭하면 원본 크기로 확대됩니다.
조작 방법
- 회사코드 · 회계연도를 고릅니다. 사업장 · 충당부채 유형 · 점검상태는 기본값이 전체이며, 전체를 고르면 그 조건은 서비스로 보내지 않습니다.
- 자산번호 입력란에 번호 일부를 넣고 Enter 키를 누르거나, 조회조건 영역 오른쪽 끝의 조회 버튼을 누르면 재조회됩니다. 초기화 버튼은 조건을 기본값으로 되돌립니다.
- 대사 요약에서 대사식별 검사 건수·차이 건수·점검 대상 건수를 먼저 확인합니다.
- 충당부채 증감 명세 탭에서 자산별 기초~기말 증감을 확인하고, 행을 클릭하면 상세 다이얼로그가 열립니다.
- 복구원가 자산 대사 탭에서 부채 재측정액과 자산 조정액의 대사 차액을 확인합니다.
- 할인율·추정 변동 탭에서 변동 전후 현재가치와 재측정액의 산출 근거를 확인합니다.
- 각 탭 우측 상단의 CSV 내려받기 버튼으로 현재 조회 결과를 내려받습니다.
점검상태 판정 로직
이 화면의 핵심 판정은 부채 쪽 증감이 자산 쪽 장부금액에 그대로 옮겨졌는가 한 가지로 모입니다. 그 주변에 롤포워드 자체의 정합성과 잔여기간 점검이 붙습니다.
| 판정 대상 | 조건 | 결과 |
|---|---|---|
| 자산·부채 연동 | 부채 재측정액 ≠ 관련 복구원가 자산의 조정액 (대사 차액 ≠ 0) | 점검 필요 |
| 변동 이력 처리구분 | 할인율·추정 변동이 기록됐는데 처리구분이 "반영 대기" | 점검 필요 |
| 충당부채 롤포워드 | 기초 + 신규인식 + 이자비용 + 재측정 − 사용 − 환입 ≠ 기말 | 점검 필요 |
| 잔여기간 | 잔여기간이 3년 이하인데 당기 사용액이 0 | 확인 필요 |
| 그 외 | 위 조건에 해당하지 않음 | 정상 |
이 화면이 대신 정하지 않는 것
대사 차액이 반영 시점의 차이인지 처리 누락인지, 바뀐 할인율이 적절한지는 회사의 결산 일정과 기준서 원문에 따라 회사와 감사인이 최종 판단합니다. 이 화면은 그 판단이 필요한 후보를 골라내는 점검 도구입니다.
재측정에서 자산 조정까지 — 대사 처리 순서
| 단계 | 내용 |
|---|---|
| 1단계 | 자산별 복구·해체 충당부채의 전기말 잔액을 기초잔액으로 확보 |
| 2단계 | 당기 이자비용(할인액 상각) 산출 — 기초잔액 × 적용 할인율 |
| 3단계 | 재측정액 산출 — 변동 후 현재가치 − 변동 전 현재가치. 현재가치는 추정 복구원가 ÷ (1 + 할인율)^잔여기간 |
| 4단계 | 부채 롤포워드 대사 — 기초 + 신규인식 + 이자비용 + 재측정 − 사용 − 환입 = 기말 |
| 5단계 | 자산 롤포워드 대사 — 복구원가 기초 + 가산 + 재측정 조정 − 당기 상각 = 복구원가 기말 |
| 6단계 | 자산·부채 연동 대사 — 부채 재측정액 = 관련 자산 조정액. 차액이 남으면 점검 대상으로 표시 |
| 7단계 | 집계 대사 — 사업장별 합계 = 명세 합계, 총계 = 사업장 합계 |
조회조건
| 필드 | 필수 | 설명 |
|---|---|---|
| 회사코드 | 필수 | 4자리 코드 |
| 회계연도 | 필수 | 4자리 연도 |
| 사업장 | 선택 | 전체 또는 사업장 선택(전체 선택 시 조건 미전달) |
| 충당부채 유형 | 선택 | 전체 / 설비 해체·제거 / 부지 원상복구 / 구축물 철거 |
| 점검상태 | 선택 | 전체 / 정상 / 확인 필요 / 점검 필요 |
| 자산번호 | 선택 | 번호 일부로 부분 검색, Enter 키로 바로 조회 |
결과 컬럼
| 탭 | 컬럼 · 표시 |
|---|---|
| 충당부채 증감 명세 | 자산번호·자산명·사업장·충당부채 유형·기초잔액·당기 신규인식·이자비용(할인액 상각)·재측정액·당기 사용액·당기 환입액·기말잔액·할인율·잔여기간·점검상태 |
| 복구원가 자산 대사 | 자산번호·자산명·사업장·복구원가 기초/가산/재측정 조정/당기 상각/기말 장부금액·부채 재측정액·대사 차액·잔여 내용연수·대사상태 |
| 할인율·추정 변동 | 자산번호·자산명·변동일·변동유형·변동 전후 할인율·변동 전후 추정 복구원가·변동 전후 현재가치·재측정액·처리구분 |
| 사업장별 집계 | 사업장·자산 건수·항목별 합계(기초·신규인식·이자비용·재측정·사용·환입·기말)·점검 대상 건수, 마지막 줄에 총계 |
SAP 표준 기능 매핑
표준 실행은 SAP 표준 T-code 가 담당하고, 이 화면은 조회·검증 관점을 더해 확장합니다.
| SAP 표준 T-code | 연관 기능 |
|---|---|
FBL3N · FAGLL03 | G/L 개별 항목 조회 — 충당부채 계정의 증감 전표 라인 확인 |
AW01N · AS03 | 자산 익스플로러 · 고정자산 마스터 조회 — 취득원가와 상각 이력 확인 |
AFAB | 감가상각 실행 — 복구원가 부분의 당기 상각액 확인 |
FB03 | 전표 조회 — 재측정·사용·환입 전표의 내용 확인 |
IFRS 요구사항 매핑표
| 기준서 | 요구사항 | 이 화면의 대응 기능 | 원천 데이터 | 비고 |
|---|---|---|---|---|
| IAS 37 (K-IFRS 제1037호) | 복구·해체 의무의 현재가치 측정과 할인액 상각 | 기초잔액·이자비용 재계산 표시 | ACDOCA · BKPF · BSEG | 이자비용은 기초잔액 × 적용 할인율로 재계산해 대조 |
| IAS 37 (K-IFRS 제1037호) | 매 보고기간말 추정치 재검토 | 할인율·추정 변동 탭 — 변동 전후 현재가치와 재측정액 | 할인율·추정 관리 데이터 | 변동 사유별 처리구분을 함께 기록 |
| IAS 16 (K-IFRS 제1016호) | 복구원가의 취득원가 산입과 내용연수 상각 | 복구원가 부분의 장부금액 흐름 분리 표시 | ANLA · ANLB · ANLC · ANEP | - |
| IFRIC 1 | 원가모형에서 부채 변동을 관련 자산 장부금액에 가감 | 부채 재측정액과 자산 조정액 대사, 차액 표시 | ANLC · ACDOCA | K-IFRS 해석서 번호는 원문 미확인으로 적지 않음 — 확인 필요 |
도입 시 확인이 필요한 부분
할인율 산정 기준과 복구원가 추정치 갱신 주기, 재측정 결과를 자산에 반영하는 시점은 회사의 결산 프로세스와 감사인 협의를 거쳐 확정해야 합니다.
참고 CDS 뷰
운영 서비스로 연결할 때를 가정해 새로 스케치한 집계 뷰 예시입니다(운영 반영 시 권한 체크를 추가해야 합니다).
define view DecomProvRollforward
as select from acdoca as ledger
inner join anla as asset
on asset.bukrs = ledger.rbukrs
and asset.anln1 = ledger.anln1
{
key ledger.rbukrs as Bukrs,
key ledger.gjahr as Gjahr,
key ledger.anln1 as AssetNo,
asset.txt50 as AssetName,
asset.werks as SiteCode,
sum( case when ledger.rmvct = 'OPEN' then ledger.hsl else 0 end ) as OpenBalance,
sum( case when ledger.rmvct = 'ADD' then ledger.hsl else 0 end ) as AddAmount,
sum( case when ledger.rmvct = 'UNWD' then ledger.hsl else 0 end ) as UnwindAmount,
sum( case when ledger.rmvct = 'REMS' then ledger.hsl else 0 end ) as RemeasAmount,
sum( case when ledger.rmvct = 'USED' then ledger.hsl else 0 end ) as UsedAmount,
sum( case when ledger.rmvct = 'REVR' then ledger.hsl else 0 end ) as ReversalAmount
}
group by ledger.rbukrs, ledger.gjahr, ledger.anln1, asset.txt50, asset.werks
// 복구원가 자산의 장부금액 흐름은 자산 연도별 금액 구조에서 따로 읽어와 위 집계와 대사
OpenUI5 구성
| 기능 | 사용 컨트롤 · 구성 |
|---|---|
| 화면 골격 | sap.m.Page + 조회조건 Panel · 대사 요약 Panel · 4개 탭(sap.m.IconTabBar) |
| 조회조건 | sap.m.ComboBox · sap.m.Select · sap.m.Input — 우측 끝에 조회·초기화 버튼, Enter 키로 즉시 재조회 |
| 증감 명세 · 자산 대사 · 할인율 변동 | sap.ui.table.Table(컬럼 10개 초과) — 증감 명세는 행 클릭 시 상세 다이얼로그 |
| 대사 요약 · 사업장별 집계 | sap.m.Table + sap.m.ObjectStatus · sap.m.ObjectNumber 로 결과·차액 표시 |
| 상세 | sap.m.Dialog — 선택한 자산의 롤포워드 대사 결과와 변동 내역·관련 자산을 함께 표시 |
| 공통 처리 | CSV 내려받기 공통 컨트롤러(UTF-8 BOM), 전역 오류 처리기 |
OData 모델 구성
서비스는 manifest.json 의 dataSources 에 상대 경로로 선언하고, 같은 파일의
models 에서 sap.ui.model.odata.v2.ODataModel 로 기본 모델을 만듭니다. 절대 URL 은 쓰지
않습니다. 화면의 블록마다 해당 엔티티셋에 각각 바인딩하며, 한 번의 호출로 전체를 받아 컨트롤러에서 쪼개지
않습니다.
조회조건은 sap.ui.model.Filter 로만 조립해 전달하고, 전체를 선택하면 그 조건의 Filter 자체를
만들지 않습니다. 정렬은 sap.ui.model.Sorter, 총건수는 $inlinecount=allpages(모델 count
설정)로 받습니다. 금액 프로퍼티는 Edm.Decimal 이 문자열로 직렬화되므로 정렬·계산에서 숫자로 바꿔
비교합니다. 집계 산출식은 formatter 와 컨트롤러 한곳에 모았고, 메타데이터 로드 실패·요청 실패·빈 응답은 전역 오류
처리기가 구분해 사용자 메시지로 띄웁니다.
파일 구성
| 경로 | 역할 |
|---|---|
index.html | OpenUI5 부트스트랩 — sap_horizon |
Component.js | 컴포넌트 초기화, 전역 오류 처리기 연결 |
manifest.json | 앱 디스크립터 — zui5.decomprov · OData dataSources · ko 로케일 |
view/Main.view.xml | 조회조건 + 대사 요약 + 4개 탭 |
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개 대사식이 전수에서 맞물리도록 구성했습니다(점검 화면의 목적에 맞게 의도적으로 둔 불일치 2건 제외).
| 검증 항목 | 검사 건수 | 결과 |
|---|---|---|
| 충당부채 롤포워드 대사(기초+신규인식+이자비용+재측정−사용−환입=기말) | 24건 | 차이 0건 |
| 복구원가 자산 롤포워드 대사(기초+가산+재측정 조정−당기 상각=기말) | 24건 | 차이 0건 |
| 부채 재측정액 ↔ 관련 자산 조정액 대사 | 10건 | 의도적으로 구성한 2건이 "점검 필요"로 표시 |
| 사업장 집계 합계 ↔ 명세 합계 / 총계 ↔ 사업장 합계 | 35건 | 차이 0건 |
| 변동 후 현재가치 − 변동 전 현재가치 = 재측정액 재계산 | 30건 | 차이 0건 |
| 기초잔액 × 적용 할인율 = 당기 이자비용 재계산 | 24건 | 차이 0건 |
| 표시 금지 검사 — 커스텀 프로그램ID·앱 식별자·출처 표현 검출 | - | 0건 |
| 화면 렌더링 — 실브라우저에서 조회 → Enter 키 조회 → 탭 전환 → 행 클릭 상세까지 실동작 후 캡처 | - | 4/4 |
조회 버튼 위치 · sap_horizon 테마 적용 · 필터 동작 · CSV 내려받기 동작 | - | 확인 |
자산명·금액은 모두 검증용으로 구성한 가상 데이터이며 실제 회사의 계정체계나 공시 금액이 아닙니다.
자주 묻는 질문
이 화면은 언제, 어느 범위에 적용하나요?
보고기간말에 복구·해체 충당부채를 다시 검토하는 시점에 씁니다. 대상은 복구·해체 의무가 있는 유형자산으로 한정하며, 회사코드와 회계연도를 골라 조회합니다. 참고하는 IAS 37·IAS 16 과 IFRIC 1 은 이미 시행 중인 기준서로, 새로 도입되는 기준서의 최초 적용 시점을 다루는 화면이 아닙니다. 그 밖의 경과규정은 기준서 원문 확인이 필요합니다.
대사 차액이 0이 아니면 잘못 처리한 것인가요?
그렇게 단정하지 않습니다. 화면은 부채 재측정액과 관련 자산 조정액이 어긋난 건을 "점검 필요"로 골라낼 뿐이며, 반영 시점의 차이인지 처리 누락인지는 원장과 자산 원장을 함께 보고 판단해야 합니다. 이 화면은 분류·집계·대사를 돕는 점검 도구이고, 최종 판단은 회사와 감사인이 합니다.
재측정액은 어떤 식으로 계산하나요?
변동 후 추정 복구원가를 변동 후 할인율로 할인한 현재가치에서, 변동 전 추정 복구원가를 변동 전 할인율로 할인한 현재가치를 뺍니다. 화면은 변동 전후 현재가치를 나란히 보여주므로 금액이 어디에서 나왔는지 그대로 확인할 수 있습니다.
화면의 수치는 실시간 SAP 데이터인가요?
실제 운영 화면은 OData 서비스를 통해 조회합니다. 이 글에 실린 수치와 캡처는 검증용 샘플 데이터이며 실제 업무 데이터가 아닙니다. 계정체계와 금액은 모두 가상으로 구성했습니다.