솔루션 홈
AS03 · AR01 · 고정자산

SAP 고정자산 대장 조회 — 취득가액에서 장부가액까지

자산별 취득가액과 상각누계를 놓고 장부가액을 확인하며, 내용연수와 상각방법까지 한 줄에서 읽는 자산대장 화면입니다.

자산대장을 보는 이유는 대개 하나입니다. 이 자산이 지금 장부에 얼마로 남아 있는가.

그 숫자는 취득가액에서 상각누계를 뺀 값이지만, 그것만으로는 판단이 어렵습니다. 내용연수가 몇 년인지, 어떤 방법으로 상각되는지, 언제 취득했는지를 함께 봐야 남은 기간이 그려집니다. 표준 고정자산 마스터 구조를 그대로 이어받아 이 정보를 한 줄에 담도록 OpenUI5 화면으로 확장한 것이 이 앱입니다. 실제 구동 화면 2종을 함께 공개합니다.

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

  • 자산 키 — 자산번호(assetNo)와 부번호(subNo)의 표준 2단 키
  • 자산등급 — 자산클래스(assetClass)와 명칭으로 건물·기계 등 구분
  • 취득 정보 — 취득일(acqDate)과 취득가액(apc)
  • 상각 — 내용연수(usefulLifeYears) · 상각방법(depreciationMethod) · 상각누계(accumDep)
  • 귀속 — 회사코드와 코스트센터(costCenter)
항목내용
대응 T-codeAS03 (자산 조회) · AR01 (자산 목록)
업무 영역재무회계(FI-AA) · 고정자산 관리
Namespacezui5.asset
셸 구조조회조건 영역(우측 조회·초기화) + 자산대장 테이블, 행 선택 시 상각 이력
화면 수조회 화면 1개 + 상각 이력
데이터자산 16건
성격조회형(Read-Only) — 자산 등록과 상각은 표준이 담당
UI 테마sap_horizon 단일 적용

실제 화면 2종 둘러보기

회사코드·자산등급·코스트센터로 조회하면 자산이 목록으로 나옵니다 → 취득가액·상각누계·장부가액을 나란히 보고 → 행을 눌러 연도별 상각 이력을 확인합니다.

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

AS03 — Main.view.xml
초기 진입 화면 — 조회조건과 안내 메시지
초기 진입 화면 — 조회조건과 안내 메시지 — 회사코드·자산등급·코스트센터·상태를 고르는 화면입니다. 조회·초기화 버튼은 조회조건 영역 오른쪽 끝에 있습니다.
AS03 — 자산대장
메인화면 — 취득가액·상각누계·장부가액
메인화면 — 취득가액·상각누계·장부가액 — 자산번호·명칭·등급·코스트센터와 함께 취득일·내용연수·상각방법이 놓이고, 취득가액·상각누계·장부가액이 이어집니다. 처분된 자산은 상태로 구분됩니다.

조작 방법

  1. 회사코드를 고르고 자산등급으로 건물·기계·차량 등을 나눕니다.
  2. 코스트센터로 부서별 자산을 추릴 수 있습니다.
  3. 조회조건 입력필드에서 값을 바꾸거나 Enter 를 누르면 즉시 조회됩니다.
  4. 장부가액이 0에 가까운 자산은 상각이 끝나가는 자산입니다. 교체 계획 대상이 됩니다.
  5. 취득일과 내용연수를 보면 남은 상각 기간이 계산됩니다.
  6. 행을 선택하면 연도별 상각 이력이 열립니다.
  7. 결과는 CSV 다운로드로 내려받습니다.

장부가액 산식

대장의 핵심은 세 숫자의 관계입니다.

장부가액(nbv) = 취득가액(apc) − 상각누계(accumDep)

상각방법(SL)  정액법 — 매기 동일 금액
연간 상각액   = 취득가액 ÷ 내용연수 (정액법 기준)
남은 기간     = 내용연수 − (기준일 − 취득일)

상태 ACTIVE   →  사용 중
상태 RETIRED  →  처분 완료 (처분일 존재)

내용연수를 함께 보여 주는 이유

장부가액이 낮다고 해서 자산이 낡은 것은 아닙니다. 내용연수가 짧은 자산은 금방 상각이 끝나지만 실제로는 더 오래 씁니다. 취득일과 내용연수를 함께 두면 "상각은 끝났지만 아직 쓰는 자산" 을 가려낼 수 있고, 이런 자산이 많으면 내용연수 정책을 재검토할 근거가 됩니다.

자산 생애 4단계

단계내용장부 영향
취득외부 구입 또는 건설 완료취득가액 확정 · 상각 시작
사용내용연수에 걸쳐 상각장부가액 감소
상각 완료내용연수 경과장부가액이 잔존가액에 도달
처분매각 또는 폐기처분손익 인식 · 대장에서 제외

조회조건

필드필수설명
회사코드 bukrs필수대상 회사코드
자산등급 assetClass선택건물 · 기계 · 차량 등
코스트센터 costCenter선택부서별 자산
자산번호 assetNo선택특정 자산
상태 status선택ACTIVE / RETIRED

결과 컬럼

컬럼의미 · 표시
자산번호 assetNo · 부번호 subNo자산 식별 키
자산명 assetName자산 명칭
자산등급 assetClass · assetClassText등급 코드와 명칭
코스트센터 costCenter · costCenterText귀속 부서
취득일 acqDate자산 취득 날짜
내용연수 usefulLifeYears상각 기간(년)
상각방법 depreciationMethodSL 정액법 등
취득가액 apc취득 시 가액
상각누계 accumDep지금까지 상각한 합계
장부가액 nbv취득가액 − 상각누계
상태 status · 처분일 retireDateACTIVE / RETIRED

SAP 표준 기능 매핑

표준역할이 화면에서의 확장
AS03자산 마스터 조회한 건씩 열지 않고 목록으로 조회
AR01자산 목록 리포트취득·상각·장부가액을 한 줄에 배치
ANLA · ANLB자산 마스터 · 상각 파라미터자산 정보와 내용연수
ANLC자산 가액 — 취득 · 상각누계금액 원천
CSKS · CSKT코스트센터 마스터귀속 부서 명칭

도입 시 확인이 필요한 부분

감가상각영역이 여러 개면 장부가액도 여러 개입니다. 재무회계용(01)과 세무용(15)이 다른 것이 보통이라, 어느 영역을 기준으로 보여 줄지 정해야 합니다. 또 잔존가액 정책이 있으면 상각이 끝나도 장부가액이 0이 되지 않으므로 그 기준도 함께 확인합니다.

참고 CDS 뷰

@AbapCatalog.sqlViewName: 'ZCASSET'
@EndUserText.label: '고정자산 대장 (Z)'
define view Z_C_ASSET_REGISTER
  as select from anla as Master
    left outer join anlb as DeprParam on Master.bukrs = DeprParam.bukrs
                                    and Master.anln1 = DeprParam.anln1
                                    and Master.anln2 = DeprParam.anln2
    left outer join anlc as Value     on Master.bukrs = Value.bukrs
                                    and Master.anln1 = Value.anln1
                                    and Master.anln2 = Value.anln2
    left outer join cskt as CCtrText  on Master.kostl = CCtrText.kostl
                                    and CCtrText.spras = 'K'
{
  key Master.bukrs,
  key Master.anln1 as AssetNo,
  key Master.anln2 as SubNo,
      Master.txt50 as AssetName,
      Master.anlkl as AssetClass,
      Master.kostl as CostCenter,
      CCtrText.ktext as CostCenterText,
      Master.aktiv as AcqDate,
      DeprParam.ndjar as UsefulLifeYears,
      Value.kansw  as Apc,
      Value.knafa  as AccumDep
      // 장부가액 = 취득가액 − 상각누계 (소비 뷰에서 계산)
      // 감가상각영역(AFABE) 선택이 필요하면 조건으로 추가
}

매핑 이해를 돕기 위한 참고용 설계입니다. 실제 도입 시에는 운영 환경 설정과 릴리즈에 맞춰 조정합니다.

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.asset) · ko 로케일
view/Main.view.xml조회조건과 자산대장 테이블
controller/Main.controller.js조회 · 장부가액 계산 · 상각 이력 · CSV
model/ModelMock.jslocaldata JSON 읽기(Promise)
js/formatter.js금액 · 일자 · 상태 포맷터
localdata/asset.json자산 16건 (상각 이력 포함)

검증 결과

검증 항목결과
장부가액 = 취득가액 − 상각누계 (전 건)통과
상각누계 ≤ 취득가액통과
상각 이력 합계 = 상각누계통과
처분 자산은 처분일 존재통과
자산등급·코스트센터 코드가 있으면 명칭도 존재통과
XML · JSON 전체 파싱오류 0건
화면 렌더링 — 실브라우저 조회 후 캡처2/2
테마 런타임 확인sap_horizon

자주 묻는 질문

감가상각영역이 여러 개면 어떤 값이 보이나요?

기본은 재무회계용 영역입니다. 세무용 장부가액이 따로 필요하면 영역 선택 조건을 추가해야 하며, 두 값을 나란히 보여 주는 구성도 가능합니다.

상각이 끝난 자산은 목록에서 빠지나요?

빠지지 않습니다. 장부가액이 0이거나 잔존가액만 남아도 자산은 계속 사용 중일 수 있습니다. 오히려 이런 자산을 가려내는 것이 교체 계획에 필요합니다.

부번호는 왜 있나요?

한 자산에 증설이나 부속 설비가 붙을 때 부번호로 관리합니다. 본체와 증설분의 취득일과 내용연수가 달라 상각도 따로 돌아가므로 키를 2단으로 둡니다.

SAP 표준 기능과 어떻게 이어지나요?

자산 등록과 상각 실행은 표준 FI-AA 가 담당합니다. 이 화면은 AS03 으로 한 건씩 열어 보던 정보를 목록으로 펼치고, 취득·상각·장부가액을 한 줄에 놓아 대장 전체를 훑을 수 있게 하는 확장입니다.

자산대장 조회, 지금 쓰는 SAP 위에서 확장해 보세요

자산 하나씩 열지 않고 전체를 훑을 수 있으면 실사와 교체 계획이 빨라집니다. 현재 SAP 환경 기준으로 어떻게 적용되는지 함께 확인해 드립니다.

고정자산자산대장AS03AR01취득가액상각누계장부가액OpenUI5