솔루션 홈
FCH1 · FCHN · 자금

SAP 수표 발행/결제 현황 조회 — 발행한 수표가 아직 돌아다니는가

지급 시 발행한 수표의 발행·결제·부도·취소 상태를 하우스뱅크와 벤더별로 추적하는 화면입니다.

수표를 발행하면 우리 장부에서는 지급이 끝난 것처럼 보입니다. 그런데 상대가 은행에 가져가기 전까지 실제 돈은 계좌에 남아 있습니다.

이 차이가 은행 잔액과 장부 잔액을 벌어지게 만듭니다. 몇 달째 결제되지 않은 수표가 있으면 분실됐거나 잊힌 것일 수 있어 추적이 필요합니다. 표준 수표 관리 구조를 그대로 이어받아 발행부터 결제까지 상태를 따라가도록 OpenUI5 화면으로 확장한 것이 이 앱입니다. 실제 구동 화면 2종을 함께 공개합니다.

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

  • 수표 키 — 수표번호(CheckNo) · 하우스뱅크(Hbkid) · 계좌 ID(Hktid)
  • 지급 연계 — 지급전표(Vblnr)와 관련 전표(Belnr)
  • 벤더 — 수취인(Lifnr)과 명칭
  • 금액 — 수표 금액과 관련 전표별 항목 금액(ItemAmount)
  • 발행 정보 — 발행일과 참조번호(Xblnr)
항목내용
대응 T-codeFCH1 · FCHN · FCHI
업무 영역재무회계(FI-AP) · 자금 · 수표 관리
Namespacezui5.checkreg
셸 구조조회조건 영역(우측 조회·초기화) + 수표 목록, 행 선택 시 관련 전표
화면 수조회 화면 1개 + 전표 상세
데이터수표 171건 · 수표 항목 288건 · 하우스뱅크 5건 · 벤더 30건
성격조회형(Read-Only) — 발행과 취소는 표준이 담당
UI 테마sap_horizon 단일 적용

실제 화면 2종 둘러보기

하우스뱅크·벤더·기간으로 조회하면 발행 수표가 상태와 함께 나옵니다 → 오래 미결제인 수표를 가려내고 → 행을 눌러 어느 전표를 지급한 수표인지 확인합니다.

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

FCHN — Main.view.xml
초기 진입 화면 — 조회조건과 안내 메시지
초기 진입 화면 — 조회조건과 안내 메시지 — 하우스뱅크·계좌·벤더·기간·상태를 고르는 화면입니다. 조회·초기화 버튼은 조회조건 영역 오른쪽 끝에 있습니다.
FCHN — 수표 현황
메인화면 — 발행과 결제 상태
메인화면 — 발행과 결제 상태 — 수표번호·하우스뱅크·계좌·벤더·발행일·금액과 함께 지급전표·결제일·상태가 이어집니다. 미결제가 오래된 수표는 상태 색으로 구분되고, 행을 고르면 그 수표로 지급한 전표 항목이 펼쳐집니다.

조작 방법

  1. 하우스뱅크계좌를 고릅니다. 수표책이 계좌별로 관리됩니다.
  2. 기간을 발행일 기준으로 지정합니다.
  3. 벤더로 특정 거래처에 발행한 수표만 볼 수 있습니다.
  4. 조회조건 입력필드에서 값을 바꾸거나 Enter 를 누르면 즉시 조회됩니다.
  5. 미결제 수표 중 발행일이 오래된 건을 확인합니다.
  6. 부도·취소 건은 예외 처리 대상입니다.
  7. 행을 선택하면 관련 전표 항목이 열립니다.
  8. 결과는 CSV 다운로드로 내려받아 은행 조정에 씁니다.

상태 판정 규칙

결제일 유무와 취소 여부로 상태가 정해집니다.

결제일 없음 · 취소 아님   →  미결제 — 은행 조정 대상
결제일 있음               →  결제 완료 — 은행에서 인출됨
부도 표시                 →  부도 — 잔액 부족 등
취소 표시                 →  취소 — 재발행 또는 무효

미결제 경과일 = 기준일 − 발행일
  경과일이 길면  →  분실·미전달 확인 필요

수표 금액 = Σ(관련 전표 항목 금액)

미결제 수표가 은행 조정의 단골인 이유

은행 잔액과 장부 잔액이 다른 이유의 대부분이 미결제 수표입니다. 우리는 지급으로 처리했는데 은행에서는 아직 나가지 않았기 때문입니다. 미결제 목록이 정확하면 은행계정조정표의 조정 항목이 그대로 채워집니다.

수표 생애 4단계

단계내용상태
① 발행지급 실행 시 수표 번호 부여미결제 상태
② 전달벤더에게 교부상태 변화 없음
③ 결제은행에서 인출결제 완료 · 계좌 차감
④ 예외부도 · 분실 · 취소재발행 또는 무효 처리

②는 시스템에 기록되지 않아, 오래 미결제인 수표가 전달됐는지조차 모를 수 있습니다.

조회조건

필드필수설명
하우스뱅크 Hbkid필수발행 은행
계좌 Hktid필수수표 계좌
기간필수발행일 From~To
벤더 Lifnr선택수취인 코드·명칭
수표번호 CheckNo선택특정 수표
상태선택미결제 / 결제완료 / 부도 / 취소

결과 컬럼

컬럼의미 · 표시
수표번호 CheckNo수표 식별
하우스뱅크 Hbkid · 계좌 Hktid발행 계좌
회사코드 Bukrs발행 법인
벤더 Lifnr수취인
지급전표 Vblnr지급 실행 전표
발행일 IssueDate수표 발행 날짜
금액 · 통화 Currency수표 금액
결제일은행 인출 날짜
상태미결제 / 결제완료 / 부도 / 취소. 상태 색
미결제 경과일발행일부터 경과 일수
관련 전표 Belnr · 항목 금액 ItemAmount상세에서 확인

SAP 표준 기능 매핑

표준역할이 화면에서의 확장
FCH1수표 정보 조회지급전표와 관련 전표를 함께 표시
FCHN수표 대장미결제 경과일과 상태를 추가
FCHI수표책 관리계좌별 수표 번호 범위
PAYR수표 대장 테이블조회 원천
REGUH지급 실행 헤더지급전표 연계
LFA1공급업체 마스터수취인 명칭

도입 시 확인이 필요한 부분

결제 정보는 은행에서 받아야 합니다. 전자적으로 수취하면 자동 반영되지만 수기 관리라면 결제일 입력 절차가 필요합니다. 또 수표 번호 범위가 계좌별로 관리되므로, 번호가 소진되기 전에 새 수표책을 등록하는 운영도 함께 봐야 합니다.

참고 CDS 뷰

@AbapCatalog.sqlViewName: 'ZCCHECKREG'
@EndUserText.label: '수표 발행·결제 현황 (Z)'
define view Z_C_CHECK_REGISTER
  as select from payr as Check
    left outer join lfa1 as Vendor on Check.lifnr = Vendor.lifnr
{
  key Check.zbukr as Bukrs,
  key Check.hbkid as Hbkid,
  key Check.hktid as Hktid,
  key Check.chect as CheckNo,
      Check.lifnr,
      Vendor.name1 as Name1,
      Check.vblnr  as Vblnr,
      Check.zaldt  as IssueDate,
      Check.rwbtr  as Amount,
      Check.waers  as Currency,
      Check.bancd  as ClearingDate,
      Check.voidr  as VoidReason
      // 상태: 결제일 유무와 취소 사유로 판정
      // 미결제 경과일 = 기준일 − 발행일 (소비 뷰에서 계산)
}

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

OpenUI5 구성

기능사용 컨트롤
화면 골격sap.m.Page + 조회조건 영역 · 수표 테이블
조회조건sap.m.Select · sap.m.DatePicker · sap.m.Input — 우측 끝에 조회·초기화
이벤트모든 버튼이 onPAI 단일 진입점, fcCode 로 분기
수표 테이블sap.m.Table — 발행일순 정렬, growing 적용
상태 표시sap.m.ObjectStatus — 미결제 경과에 따라 색 변화
상세 화면sap.m.Dialog — 관련 전표 항목

관련 전표를 상세로 둔 이유

수표 한 장으로 여러 전표를 한꺼번에 지급하는 경우가 많습니다. 목록에 다 펼치면 수표 한 장이 여러 줄을 차지해 수표 단위로 세기 어려워집니다. 목록은 수표 단위로 두고 전표는 상세에서 펼치면 두 관점이 모두 유지됩니다.

파일 구성

경로역할
manifest.json앱 디스크립터 — 앱 ID(zui5.checkreg) · ko 로케일
view/Main.view.xml조회조건과 수표 테이블
controller/Main.controller.js조회 · 상태 판정 · 경과일 계산 · CSV
model/ModelMock.jslocaldata JSON 읽기(Promise)
js/formatter.js금액 · 일자 · 상태 색 포맷터
localdata/checks.json수표 171건
localdata/checkitems.json수표 항목 288건
localdata/housebanks.json하우스뱅크 5건

검증 결과

검증 항목결과
수표 금액 = 관련 전표 항목 금액 합계 (전 건)통과
결제 완료 건은 결제일 존재통과
취소 건은 취소 사유 존재통과
결제일 ≥ 발행일통과
하우스뱅크·벤더 코드가 있으면 명칭도 존재통과
XML · JSON 전체 파싱오류 0건
화면 렌더링 — 실브라우저 조회 → 상세 실동작 후 캡처2/2
테마 런타임 확인sap_horizon

자주 묻는 질문

몇 달째 미결제인 수표는 어떻게 하나요?

먼저 벤더에게 수령 여부를 확인합니다. 받지 못했다면 분실 가능성이 있어 지급정지 후 재발행하고, 받았는데 미제시라면 기한 경과 전에 처리하도록 안내합니다.

수표 한 장으로 여러 전표를 지급하면요?

가능합니다. 지급 실행에서 같은 벤더의 여러 채무를 묶어 한 장으로 발행합니다. 수표 금액은 관련 전표 항목의 합계와 일치해야 합니다.

결제 정보는 어떻게 들어오나요?

은행에서 받습니다. 전자적으로 수취하면 자동 반영되고, 수기 관리라면 은행 명세를 보고 입력합니다. 이 정보가 늦으면 미결제 목록이 실제보다 많아 보입니다.

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

수표 발행과 대장 관리는 표준이 담당합니다. 이 화면은 그 대장에 미결제 경과일과 상태 구분을 얹어 은행 조정과 분실 추적을 한 화면에서 하게 하는 확장입니다.

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

미결제 수표 목록이 정확하면 은행계정조정표가 저절로 채워집니다. 현재 SAP 환경 기준으로 어떻게 적용되는지 함께 확인해 드립니다.

수표관리수표발행FCH1FCHN미결제 수표하우스뱅크은행조정OpenUI5