솔루션 홈
일반회계

SAP 일일전도금 현황 — 계정을 갈아탄 지출의 진짜 비목 찾기

전도금 잔액을 하루 단위로 따라가면서, 미결관리 계정을 거쳐 간 지출은 반제전표를 따라가 실제 비용 계정까지 되짚는 화면입니다.

전도금 장부에서 지출 한 줄을 봤는데 계정이 미지급비용이라면, 그 돈이 어디에 쓰였는지 알 수 없습니다.

실제로는 택시비였을 수도, 사무용품이었을 수도 있습니다. 미결관리 계정은 거쳐 가는 자리일 뿐이라 진짜 비목은 반제전표 너머에 있습니다. 그런데 그 전표를 따라가 보면 또 미결관리 계정인 경우도 있습니다. 이 화면은 미결관리가 아닌 라인을 만날 때까지 꼬리를 물고 따라가 실제 처리전표의 계정과 Text 를 가져옵니다. 그래서 목록에 보이는 계정이 곧 그 돈이 쓰인 자리입니다.

SAP 표준 구조를 그대로 이어받은 부분

  • 전표 조회 — BSIS 로 전표번호 목록, BSEG 로 라인 아이템
  • 미결관리 판정 — BSEG-XOPVW 가 'X' 이면 반제전표(AUGBL)를 추적
  • Clearing 제외 — AUGBL = BELNR 인 건은 목록에서 제외
  • 입금 라인 — VALUT 가 조회일자 해당월 1일인 건을 첫 줄로
항목내용
업무 영역재무회계(FI) · 전도금 관리
Namespacezui5.imprest
셸 구조조회조건 영역(우측 조회) + 전기이월 집계 + 사용내역 + 추적 경로
화면 수조회 화면 1개 + 추적 경로 패널
데이터라인 39건 (입금 5 · 지출 34) · 전도금 계정 5개 · 추적 16건
성격조회형(Read-Only)
UI 테마sap_horizon 단일 적용

실제 화면 6종 둘러보기

상단에서 이월액과 잔액을 확인하고 → 첫 줄 입금부터 지출을 따라가며 → 추적 라인을 눌러 실제 비목의 경로를 봅니다.

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

Main.view.xml
사용내역 — 첫 줄은 입금
사용내역 — 첫 줄은 입금 — 해당 월 전도금 입금이 첫 줄에 오고 그 아래로 지출이 이어집니다. 잔액이 줄마다 누적되어 지금 얼마 남았는지가 바로 보입니다. 상단에는 전기이월액과 당월 입금·지출·사용률이 함께 놓입니다.
추적 컬럼
추적 표시와 경유 계정
추적 표시와 경유 계정 — 오른쪽 끝에 추적 여부와 경유 계정, 반제전표가 나옵니다. 목록의 계정은 이미 실제 비목으로 바뀐 값이고, 어느 계정을 거쳐 왔는지는 여기서 확인합니다.
추적 경로
미결관리 추적 — 3단계
미결관리 추적 — 3단계 — 라인을 고르면 경로가 펼쳐집니다. 전도금 계정에서 출발해 미결관리 계정을 한 번 더 거쳐, 미결관리가 아닌 라인에서 실제 계정과 Text 가 확정됩니다.
추적 아님
추적 대상이 아닌 라인
추적 대상이 아닌 라인 — 미결관리를 거치지 않은 지출은 전표의 계정이 곧 실제 비목입니다. 눌러도 경로가 열리지 않고 이유를 알려 줍니다.
다른 계정
전도금 계정 전환
전도금 계정 전환 — 계정을 바꾸면 그 전도금의 이월액과 사용내역으로 다시 계산됩니다. 사업장별 전도금을 하나씩 확인하는 흐름입니다.
월초 기준
조회일자 변경 — 그날까지만
조회일자 변경 — 그날까지만 — 날짜를 월초로 당기면 그때까지의 지출만 집계됩니다. 입금은 월 1일 건이라 항상 첫 줄에 남습니다.

조작 방법

  1. Imprest Account 에서 확인할 전도금 계정을 고릅니다.
  2. Doc. Date 를 정합니다. 기본값은 당일이며 그날까지의 지출이 집계됩니다.
  3. 상단에서 전기이월액과 현재 잔액·사용률을 먼저 확인합니다.
  4. 목록의 첫 줄은 해당 월 입금이고 그 아래로 지출이 잔액과 함께 이어집니다.
  5. 추적 표시가 있는 라인을 클릭하면 미결관리 경로가 3단계로 펼쳐집니다.
  6. CSV 다운로드로 전기이월액과 사용내역을 함께 내려받습니다.

조회·추적 규칙

입금과 지출을 모으는 방식, 그리고 계정을 되짚는 방식이 이 화면의 뼈대입니다.

조회 흐름 (사양서)

  0) 해당 월 전도금 입금 내역을 BSEG 에서 조회해 첫 줄로 출력
       BUKRS · HKONT(전도금 계정) · GJAHR
       VALUT = 조회일자의 해당월 01일

  1) BSIS 에서 전표번호 목록 조회
       BLDAT = 해당월 01일 ~ 조회일자

  2) 그 전표를 BSEG 에서 읽어 다른 라인 아이템 조회
       AUGBL = BELNR 인 건(Clearing 전표)은 제외

  3) 라인의 G/L 계정이 미결관리 대상인지 판단 (BSEG-XOPVW = 'X')
       미결관리이면 반제전표(BSEG-AUGBL)를 따라가
       상대 Line item 의 계정이 또 미결관리인지 확인
       미결관리가 아닌 라인을 만날 때까지 반복
       → 실제 처리전표의 계정과 Text 를 읽어 목록에 표시

  상단 전기이월액 = 전월 잔액
       (당년 누적입금 − 누적지출)
  전도금은 매월이 아니라 분기 단위로 정산
항목산식 · 규칙
입금 라인VALUT 가 해당월 1일인 건. 항상 첫 줄
지출 범위BLDAT 이 해당월 1일 ~ 조회일자
Clearing 제외AUGBL = BELNR 인 라인은 목록에서 뺀다
미결관리 판정BSEG-XOPVW 가 'X'
추적 종료미결관리가 아닌 라인을 만나면 그 계정·Text 확정
잔액직전 잔액 + 입금 − 지출 (줄마다 누적)
전기이월액당년 누적입금 − 누적지출 (전월까지)

목록에 실제 계정을 바로 보여 주는 이유

담당자가 알고 싶은 것은 '이 돈이 어디 쓰였나'입니다. 경유 계정을 그대로 보여 주면 한 줄마다 전표를 열어 확인해야 합니다. 추적을 화면이 대신하고 결과만 보여 주면 목록을 훑는 것만으로 사용처가 정리됩니다. 경로가 궁금하면 그때 눌러 보면 됩니다.

미결관리 추적 3단계

미결관리 계정을 만나면 한 단계씩 더 따라갑니다.

단계계정미결관리 여부다음 동작
1단계전도금 계정미결관리반제전표를 따라간다
2단계경유 계정 (미지급비용 · 가지급금 등)미결관리다시 반제전표를 따라간다
3단계실제 비용 계정미결관리 아님계정과 Text 확정 — 목록에 표시

화면이 대신 따라가 준 덕분에 목록의 계정이 곧 실제 사용처입니다.

조회조건

필드필수설명
Company Code필수변경 못함. 로그인 사용자 → 사번 → 사원 Vendor 순으로 기본값 결정
Doc. Date선택기본값 당일. 이 날짜까지의 지출을 집계
Imprest Account필수전도금 계정 (Search help)

결과 컬럼

컬럼의미 · 표시
구분입금 / 지출
Company Code · G/L Account · Account Text회사코드와 계정. 추적이 끝난 실제 계정
Item Text적요
Incoming · Outgoing amount입금액과 지출액
Balance줄마다 누적된 잔액
Document No. · Line · Doc. date전표 키와 증빙일
추적 · 경유 계정 · 반제전표미결관리를 거쳤는지와 그 경로

보조 기능

컬럼의미 · 표시
전기이월액전월 잔액과 근거 전표번호
당월 입금 · 지출 · 현재 잔액상단 집계
사용률지출 ÷ 입금. 높으면 경고 색

SAP 표준 기능 매핑

전표는 표준이 만들고, 이 화면은 그 관계를 따라가 실제 비목을 찾습니다.

표준역할이 화면에서의 확장
BSISG/L 미결항목전도금 계정의 전표번호 목록
BSEG전표 라인라인 아이템과 미결관리 여부(XOPVW)
FAGLFLEXT총계정원장 합계누적 잔액 산출 근거
FBL3N 관점계정 개별항목전표 단위 확인
F-03 관점G/L 반제미결관리 계정의 반제 처리
FB03전표 조회추적 경로의 전표 확인

운영 데이터 소스 매핑

항목SAP 원천비고
전표 목록BSISBUKRS · HKONT · GJAHR · BLDAT
라인 아이템BSEGBELNR · BUZEI · HKONT · XOPVW · AUGBL · AUGDT
입금 판정BSEG-VALUT해당월 1일
잔액FAGLFLEXT당년 누적입금 − 누적지출
정산 주기분기매월 정산하지 않음 (사양서)

도입 시 확인이 필요한 부분

전도금 계정 목록과 미결관리 설정이 회사마다 다릅니다. 계정을 하드코딩하지 말고 설정 테이블이나 계정 그룹으로 관리하면 사업장이 늘어도 프로그램을 고치지 않아도 됩니다. 추적 단계에 상한을 두는 것도 필요합니다. 반제 관계가 순환하면 무한 조회로 빠질 수 있습니다.

참고 CDS 뷰

사용내역을 조회할 때는 전표 라인에 미결관리 여부와 반제 관계를 붙인 뷰가 편합니다.

@AbapCatalog.sqlViewName: 'ZCIMPREST'
@EndUserText.label: '전도금 사용내역 (Z)'
define view Z_C_IMPREST_USAGE
  as select from bseg as Item
    inner join      bkpf as Header   on  Item.bukrs = Header.bukrs
                                     and Item.belnr = Header.belnr
                                     and Item.gjahr = Header.gjahr
    left outer join skat as AcctText on  Item.hkont = AcctText.saknr
                                     and AcctText.spras = 'K'
    left outer join bseg as Cleared  on  Item.bukrs = Cleared.bukrs
                                     and Item.augbl = Cleared.belnr
{
  key Item.bukrs      as Bukrs,
  key Item.gjahr      as Gjahr,
  key Item.belnr      as Belnr,
  key Item.buzei      as Buzei,
      Item.hkont      as GlAccount,
      AcctText.txt50  as GlAccountName,
      Item.sgtxt      as ItemText,
      Header.bldat    as DocumentDate,
      Item.valut      as ValueDate,
      // 차변은 입금, 대변은 지출
      case when Item.shkzg = 'S' then Item.dmbtr else 0 end as IncomingAmount,
      case when Item.shkzg = 'H' then Item.dmbtr else 0 end as OutgoingAmount,
      Item.xopvw      as OpenItemMgmt,
      Item.augbl      as ClearingDoc,
      Item.augdt      as ClearingDate,
      // 미결관리 계정이면 반제전표의 상대 계정을 이어 본다
      Cleared.hkont   as ClearedAccount
}
where Item.augbl <> Item.belnr

사용내역을 조회할 때 쓰는 참고용 설계입니다. 미결관리 추적은 단계가 가변이라 실제로는 재귀 로직이나 반복 조회로 구현합니다.

OpenUI5 구성

기능사용 컨트롤
화면 골격sap.m.Page + 조회조건 · 상단 집계 · 사용내역 · 추적 경로
조회조건sap.m.Input · DatePicker · ComboBox
상단 집계sap.m.ObjectStatus 5종 — 이월·입금·지출·잔액·사용률
사용내역sap.ui.table.Table — 구분·회사코드·계정 3컬럼 고정
추적 강조RowSettings.highlight — 입금은 초록, 추적 건은 파랑
추적 경로cellClick → 3단계 체인을 별도 테이블로
CSVBlob + UTF-8 BOM — 전기이월액을 첫 줄에 표기

상단에 이월액과 사용률을 함께 둔 이유

전도금은 잔액이 얼마 남았는지가 핵심입니다. 분기 정산이라 월말에 0이 되지 않으므로 이월액을 빼고는 현재 잔액을 설명할 수 없습니다. 사용률까지 함께 두면 이번 분기에 추가 지급이 필요한지도 목록을 보기 전에 가늠됩니다.

파일 구성

경로역할
manifest.json앱 디스크립터 — 앱 ID(zui5.imprest) · ko 로케일 · sap_horizon
Component.js조회조건 모델 · 결과 모델 초기화
view/Main.view.xml조회화면 + 집계 + 사용내역 + 추적 경로
controller/Main.controller.js조회 · 집계 계산 · 추적 경로 · CSV
model/ModelMock.js입금·지출 조회 · 잔액 누적 · 추적 체인 · 집계
model/formatter.js금액 · 일자 · 구분 · 추적 · 잔액상태 포맷터
i18n/i18n_ko.propertiesko 로케일 리소스
localdata/imprest.json전도금 사용내역 시뮬레이션 데이터

검증 결과

화면 구성에 쓴 데이터는 직접 지출과 미결관리 경유가 섞인 전도금 사용내역입니다.

데이터규모구성
사용내역39건입금 5 · 지출 34 · 추적 16
전도금 계정5개사업장별 전도금 (인천·시흥·안산·시흥2·대구)
금액이월 8,700,000원입금 15,000,000 · 지출 9,550,000
검증 항목결과
모든 라인의 전도금 계정이 마스터에 존재통과
전도금 계정마다 전기이월액과 해당 월 입금 1건통과
입금 라인의 VALUT 이 해당월 1일 · 계정은 전도금 자신통과
지출 증빙일이 해당월 1일 ~ 조회일자 사이통과
잔액 = 직전 잔액 + 입금 − 지출 (계정별 누적)통과
최종 잔액 = 전기이월 + 입금합 − 지출합통과
추적 건만 미결관리 표시와 반제전표 보유통과
추적 체인 3단계 · 마지막 단계만 미결관리 아님통과
체인의 전표번호가 서로 다름 · 반제전표가 2단계와 일치통과
화면 렌더링 — 목록 → 추적 경로 → 계정 전환 → 일자 변경6/6

계정·전표번호·금액은 모두 검증용 데이터입니다.

자주 묻는 질문

왜 미결관리 계정을 따라가야 하나요?

미결관리 계정은 돈이 거쳐 가는 자리입니다. 전도금에서 나갈 때는 미지급비용이나 가지급금으로 잡혔다가, 나중에 정산되면서 실제 비용 계정으로 넘어갑니다. 장부에 보이는 계정만 읽으면 '미지급비용 30만원'이 되어 무엇에 썼는지 알 수 없습니다.

추적이 세 단계까지 가는 이유는?

반제전표의 상대 라인이 또 미결관리 계정일 수 있기 때문입니다. 사양서도 그 경우 다시 반제전표를 조회하도록 정해 두었습니다. 미결관리가 아닌 라인을 만날 때까지 반복하므로 단계가 더 길어질 수도 있습니다.

전기이월액은 어떻게 계산하나요?

당년 누적입금에서 누적지출을 뺀 전월 잔액입니다. 전도금은 매월 정산하지 않고 분기 단위로 정산하기 때문에 월말에 0으로 떨어지지 않습니다. 그래서 전월 잔액을 이월해 이어서 봐야 현재 잔액이 맞습니다.

Clearing 전표를 제외하는 이유는?

반제 자체는 돈이 나간 거래가 아니라 정리 행위입니다. 목록에 넣으면 같은 금액이 두 번 잡혀 잔액이 어긋납니다. 사양서에서 AUGBL이 BELNR과 같은 라인을 빼도록 지정한 것도 그래서입니다.

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

데이터는 BSIS·BSEG 표준 구조 그대로이고 미결관리 여부도 표준 필드로 판정합니다. 이 화면은 그 관계를 따라가 실제 비목을 찾아 주는 역할을 하며, 전표 단위 확인은 표준 개별항목 조회나 전표 조회 화면에서 이어집니다.

전도금 관리, 지금 쓰는 SAP 위에서 확장해 보세요

경유 계정을 자동으로 따라가면 전도금 정산이 전표 추적에서 확인 작업으로 바뀝니다. 현재 SAP 환경 기준으로 어떻게 적용되는지 함께 확인해 드립니다.

전도금일일전도금미결관리XOPVWBSISBSEGOpenUI5