SAP 고정자산 실사 — 장부에 있는 자산이 실제로 있는가
자산 대장을 실사 목록으로 내보내고, 현장 확인 결과를 입력해 장부와 실물의 차이를 정리하는 화면입니다.
자산 대장에 있는 장비가 실제로 그 자리에 있는지는 아무도 확인하지 않으면 모릅니다. 폐기했는데 장부에 남아 있거나, 부서를 옮겼는데 기록이 그대로인 경우가 흔합니다.
실사는 그 차이를 찾는 작업입니다. 종이 목록을 들고 다니며 체크하면 결과를 다시 입력해야 해 이중 작업이 됩니다. 표준 고정자산 구조를 그대로 이어받아 대장 조회와 결과 입력을 한 화면에서 하도록 OpenUI5 화면으로 확장한 것이 이 앱입니다. 실제 구동 화면 2종을 함께 공개합니다.
SAP 표준 기능을 그대로 이어받은 부분
- 자산 정보 — 자산번호 · 자산명 · 자산등급 · 취득일 · 취득가액
- 귀속 — 코스트센터와 위치 정보
- 장부가액 — 취득가액에서 상각누계를 뺀 값
- 전표 연계 — 조정이 필요한 경우 생성되는 전표(
BELNR) - 상태 — 실사 결과 처리 상태(
STATUS)
| 항목 | 내용 |
|---|---|
| 업무 영역 | 재무회계(FI-AA) · 자산 실사 · 내부통제 |
| Namespace | fi088_assetinventory |
| 셸 구조 | 조회조건 영역 + 실사 목록 + 결과 입력 |
| 화면 수 | 조회·입력 화면 1개 |
| 데이터 | 실사 대상 자산과 처리 결과 |
| 성격 | 조회·입력형 — 조정 전기는 표준이 담당 |
| 주요 동작 | 실사 목록 생성 · 결과 입력 · 차이 확인 |
| UI 테마 | sap_horizon 단일 적용 |
실제 화면 2종 둘러보기
회사코드·코스트센터로 실사 대상을 추출하고 → 현장에서 확인한 결과를 입력한 뒤 → 차이가 난 자산을 정리합니다.
아래는 실제로 앱을 실행해 기능을 눌러 가며 캡처한 화면입니다. 이미지를 클릭하면 원본 크기로 확대됩니다.
조작 방법
- 회사코드와 코스트센터로 실사 범위를 정합니다. 부서 단위로 나눠 진행하는 것이 일반적입니다.
- 자산등급으로 대상을 좁힐 수 있습니다.
- 목록을 내려받아 현장에서 확인하거나 모바일로 바로 입력합니다.
- 자산마다 확인 여부를 표시합니다.
- 위치가 다르면 실제 위치를 입력합니다.
- 찾지 못한 자산은 미확인으로 남깁니다. 폐기 누락 가능성이 있습니다.
- 결과는 CSV 다운로드로 내려받아 실사 조서로 씁니다.
실사 판정 규칙
장부와 현장을 비교해 네 가지 결과가 나옵니다.
확인 · 위치 일치 → 정상
확인 · 위치 불일치 → 위치 정정 필요
미확인 → 실물 없음 — 폐기 누락 또는 분실
장부에 없는 자산 발견 → 미등록 자산 — 등록 필요
차이 건은 조정 전표 또는 마스터 수정으로 정리
미확인과 미등록을 모두 봐야 하는 이유
실사는 장부 기준으로만 하면 절반만 보는 것입니다. 장부에 있는데 없는 자산도 문제지만, 현장에 있는데 장부에 없는 자산은 더 큰 문제입니다. 자산이 관리 밖에 있고 상각도 되지 않고 있기 때문입니다. 양방향으로 확인해야 실사가 의미를 갖습니다.
실사 4단계
| 단계 | 내용 | 결과 |
|---|---|---|
| ① 대상 추출 | 장부 기준 실사 목록 생성 | 실사 목록 |
| ② 현장 확인 | 실물 대조와 위치 확인 | 확인 결과 |
| ③ 차이 정리 | 불일치 항목 원인 확인 | 조정 대상 |
| ④ 반영 | 마스터 수정 또는 처분 전기 | 장부 정정 |
조회조건
| 필드 | 필수 | 설명 |
|---|---|---|
| 회사코드 | 필수 | 대상 법인 |
| 코스트센터 | 선택 | 실사 범위 부서 |
| 자산등급 | 선택 | 건물 · 기계 · 비품 등 |
| 위치 | 선택 | 사업장 또는 층 |
| 상태 | 선택 | 전체 / 미확인 / 차이 발생 |
결과 컬럼
| 컬럼 | 의미 · 표시 |
|---|---|
| 자산번호 · 자산명 | 실사 대상 자산 |
| 자산등급 | 건물 · 기계 등 |
| 코스트센터 | 장부상 귀속 부서 |
| 위치 | 장부상 위치 |
| 취득일 · 취득가액 | 자산 기본 정보 |
| 장부가액 | 현재 장부 금액 |
| 확인 여부 | 실사 결과. 미확인은 경고 색 |
| 실제 위치 | 현장 확인 결과 |
| 차이 | 장부와 다른 항목 |
상태 STATUS · 메시지 MESSAGE | 처리 결과 |
전표번호 BELNR | 조정 전기 시 생성 |
SAP 표준 기능 매핑
| 표준 | 역할 | 이 화면에서의 확장 |
|---|---|---|
AR01 | 자산 목록 | 실사 목록 생성 원천 |
AS02 | 자산 마스터 변경 | 위치·코스트센터 정정 |
ABAVN | 자산 폐기 | 미확인 자산 처리 |
ANLA · ANLC | 자산 마스터와 가액 | 조회 원천 |
CSKS | 코스트센터 마스터 | 귀속 확인 |
도입 시 확인이 필요한 부분
자산에 관리번호 라벨이 붙어 있어야 실사가 가능합니다. 라벨이 없으면 현장에서 어느 자산인지 특정할 수 없어 실사 자체가 성립하지 않습니다. 바코드나 QR 을 쓰면 모바일 스캔으로 확인 속도가 크게 올라갑니다.
참고 CDS 뷰
@AbapCatalog.sqlViewName: 'ZCASSETINV'
@EndUserText.label: '고정자산 실사 대상 (Z)'
define view Z_C_ASSET_INVENTORY
as select from anla as Master
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,
CCtrText.ktext as CostCenterText,
Master.stort as Location,
Master.aktiv as AcqDate,
Value.kansw as AcqValue,
Value.knafa as AccumDep
// 장부가액 = 취득가액 − 상각누계
// 실사 결과는 별도 실사 테이블에 저장 후 조인
}
where Master.deakt = '00000000'
매핑 이해를 돕기 위한 참고용 설계입니다. 실제 도입 시에는 운영 환경 설정과 릴리즈에 맞춰 조정합니다.
OpenUI5 구성
| 기능 | 사용 컨트롤 |
|---|---|
| 화면 골격 | sap.m.Page + 조회조건 영역 · 실사 목록 |
| 조회조건 | sap.m.Select · sap.m.DatePicker · sap.m.Input — 우측 끝에 조회·초기화 |
| 이벤트 | 모든 버튼이 onPAI 단일 진입점, fcCode 로 분기 |
| 실사 목록 | sap.ui.table.Table — 인라인 입력 |
| 확인 입력 | 체크박스와 위치 입력 필드 |
| 상태 표시 | sap.m.ObjectStatus — 정상 / 위치 불일치 / 미확인 |
인라인 입력으로 만든 이유
실사는 한 자산씩 확인하며 빠르게 체크하는 작업입니다. 행을 선택하고 다이얼로그를 열어 입력하고 닫는 방식이면 자산 하나에 세 번의 조작이 듭니다. 목록에서 바로 체크하면 한 번이면 됩니다. 수백 건을 다룰 때 차이가 큽니다.
파일 구성
| 경로 | 역할 |
|---|---|
manifest.json | 앱 디스크립터 — ko 로케일 · sap_horizon |
view/Main.view.xml | 조회조건과 실사 목록 |
controller/Main.controller.js | 대상 추출 · 결과 입력 · 차이 판정 · CSV |
model/ModelMock.js | localdata JSON 읽기(Promise) |
js/formatter.js | 금액 · 일자 · 상태 색 포맷터 |
localdata/DataLists.json | 실사 대상 목록 |
localdata/Heads.json | 실사 헤더 |
검증 결과
| 검증 항목 | 결과 |
|---|---|
| 장부가액 = 취득가액 − 상각누계 (전 건) | 통과 |
| 확인 결과 입력 시 상태가 즉시 갱신 | 통과 |
| 위치 불일치 건이 차이로 분류 | 통과 |
| 미확인 자산이 별도 상태로 표시 | 통과 |
| 자산등급·코스트센터 코드가 있으면 명칭도 존재 | 통과 |
| XML · JSON 전체 파싱 | 오류 0건 |
| 화면 렌더링 — 실브라우저 조회 → 입력 실동작 후 캡처 | 2/2 |
| 테마 런타임 확인 | sap_horizon |
자주 묻는 질문
실사는 얼마나 자주 해야 하나요?
연 1회가 일반적입니다. 자산이 많거나 이동이 잦으면 부서별로 나눠 분기마다 순환하는 방식도 씁니다. 중요한 것은 주기보다 빠짐없이 도는 것입니다.
미확인 자산은 바로 폐기 처리하나요?
아닙니다. 다른 부서로 옮겼거나 수리 중일 수 있어 추적이 먼저입니다. 그래도 찾지 못하면 분실 또는 폐기 누락으로 처리하고 근거를 남깁니다.
장부에 없는 자산을 발견하면요?
취득 기록을 찾아 왜 등록되지 않았는지 확인합니다. 비용으로 처리한 자산일 수 있고, 등록 누락일 수도 있습니다. 금액이 기준을 넘으면 자산으로 등록해야 합니다.
SAP 표준 기능과 어떻게 이어지나요?
자산 대장과 마스터 수정, 폐기는 표준이 담당합니다. 이 화면은 실사 목록 생성과 현장 결과 입력을 한 화면에 모아 이중 작업을 없애는 확장입니다.