솔루션 홈
XK04 · FK04 · 내부통제

SAP 거래처 은행계좌 변경 이력 — 바뀐 직후 돈이 나갔는가

거래처 마스터의 계좌 정보 변경 이력을 모으고, 변경 직후 지급이 있었는지로 위험도를 표시하는 부정방지 화면입니다.

거래처 계좌가 바뀌는 일은 흔합니다. 은행을 옮기거나 법인 계좌를 정리하면 바뀝니다. 문제는 바뀐 직후에 큰 금액이 나갈 때입니다.

계좌 변경을 가장한 사기는 이 시점을 노립니다. 변경 자체는 정상 처리로 보이고, 지급도 정상 절차를 거칩니다. 둘을 따로 보면 아무 이상이 없습니다. 표준 변경문서 구조를 그대로 이어받아 변경과 지급을 연결해 보도록 OpenUI5 화면으로 확장한 것이 이 앱입니다. 실제 구동 화면 3종을 함께 공개합니다.

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

  • 변경문서 — 변경 문서번호(ChangeDocNo)와 변경 전/후 값 구조
  • 거래처 유형 — 매입처(AP) · 매출처(AR) 구분(PartnerType)
  • 변경 필드 — 은행키 · 계좌번호 · 예금주명 등(FieldName)
  • 변경 주체 — 변경자(ChangedBy)와 변경 일시
  • 지급 데이터 — 변경 이후 지급 전표와 금액
항목내용
대응 T-codeXK04 · FK04 (거래처 변경 이력)
업무 영역재무회계(FI) · 내부통제 · 부정방지
Namespacezui5.bankchg
셸 구조조회조건 영역(우측 조회·초기화) + 변경 이력, 행 선택 시 근접 지급 내역
화면 수조회 화면 1개 + 지급 상세
데이터계좌 변경 66건 · 지급 14건
성격조회형(Read-Only) — 마스터 변경은 표준이 담당
UI 테마sap_horizon 단일 적용

실제 화면 3종 둘러보기

회사코드·거래처유형·기간으로 조회하면 계좌 변경 이력이 나옵니다 → 위험도가 높은 건을 먼저 보고 → 행을 눌러 변경 직후 지급 내역을 확인합니다.

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

XK04 — Main.view.xml
초기 진입 화면 — 조회조건과 안내 메시지
초기 진입 화면 — 조회조건과 안내 메시지 — 회사코드·거래처유형·변경일자·변경필드·위험도를 고르는 화면입니다. 조회·초기화 버튼은 조회조건 영역 오른쪽 끝에 있습니다.
XK04 — 변경 이력
메인화면 — 계좌 변경과 위험도
메인화면 — 계좌 변경과 위험도 — 변경문서번호·거래처유형·거래처·변경일시·변경자와 함께 변경 필드·변경 전 값·변경 후 값·위험도가 이어집니다. 고위험 건은 상태 색으로 먼저 보입니다.
XK04 — 근접 지급
상세 다이얼로그 — 변경 직후 지급 내역
상세 다이얼로그 — 변경 직후 지급 내역 — 행을 고르면 변경 이후 그 거래처에 나간 지급이 펼쳐집니다. 금액과 시차를 확인해 위험도의 근거를 볼 수 있습니다.

조작 방법

  1. 회사코드변경일자 범위를 지정합니다.
  2. 거래처유형으로 매입처와 매출처를 나눕니다. 지급 위험은 매입처가 큽니다.
  3. 변경필드로 계좌번호·은행키 등을 추릴 수 있습니다.
  4. 조회조건 입력필드에서 값을 바꾸거나 Enter 를 누르면 즉시 조회됩니다.
  5. 위험도가 높은 건부터 확인합니다. 변경 직후 지급이 있었던 건입니다.
  6. 행을 선택하면 지급 내역이 열립니다. 금액과 시차를 확인합니다.
  7. 결과는 CSV 다운로드로 내려받아 내부통제 점검 자료로 씁니다.

위험도 판정 규칙

변경 자체가 아니라 변경과 지급의 조합을 봅니다.

계좌 변경 후 지급까지 시차 = 지급일 − 변경일

변경만 있고 지급 없음          →  낮음 — 기록만
변경 후 지급 있음 · 시차 김     →  보통 — 통상 절차로 확인
변경 후 지급 있음 · 시차 짧음   →  높음 — 별도 경로로 확인 필요
시차 짧고 금액 큼               →  최고 — 즉시 확인

대상 필드  은행키 · 계좌번호 · 예금주명 등 자금 경로 필드

시차와 금액을 함께 보는 이유

계좌 변경은 매달 수십 건 생깁니다. 전부 확인하면 통제가 형식이 되고, 아무것도 안 보면 사고가 납니다. 변경 후 짧은 시간 안에 큰 금액이 나간 건만 걸러 내면 확인 대상이 월 몇 건으로 줄어 실제로 검증이 이뤄집니다.

계좌 변경 점검 4단계

단계내용결과
① 변경 감지마스터 변경문서 수집변경 이력
② 지급 연결변경 이후 지급 조회근접 지급 내역
③ 위험도 산정시차와 금액으로 등급 부여우선순위
④ 확인전화 등 별도 경로로 검증확인 기록

④는 시스템 밖의 절차입니다. 메일이나 문서로만 확인하면 같은 경로가 위조됐을 수 있습니다.

조회조건

필드필수설명
회사코드 Bukrs필수대상 회사코드
변경일자 ChangeDate필수기간 From~To
거래처유형 PartnerType선택AP 매입처 / AR 매출처
거래처 PartnerCode선택코드·명칭
변경필드 FieldName선택계좌번호 · 은행키 등
위험도선택높음 / 보통 / 낮음

결과 컬럼

컬럼의미 · 표시
변경문서번호 ChangeDocNo변경 식별자
거래처유형 PartnerType · PartnerTypeText매입처 / 매출처
거래처 PartnerCode · PartnerName코드와 명칭
회사코드 Bukrs · BukrsText귀속 법인
변경일자 ChangeDate · 시각 ChangeTime변경 시점
변경자 ChangedBy · ChangedByName누가 바꿨는지
변경필드 FieldName · FieldNameText무엇을 바꿨는지
변경 전 값 · 변경 후 값계좌번호 등 실제 값
위험도시차·금액 기반 등급. 상태 색
근접 지급변경 후 지급 건수와 금액

SAP 표준 기능 매핑

표준역할이 화면에서의 확장
XK04 · FK04거래처 변경 이력 조회지급과 연결해 위험도 산정
CDHDR · CDPOS변경문서 헤더와 항목변경 이력 원천
LFBK · KNBK거래처 은행 정보계좌 필드
REGUH지급 실행 헤더근접 지급 확인
LFA1 · KNA1거래처 마스터거래처 명칭

도입 시 확인이 필요한 부분

은행 정보 필드의 변경문서 기록이 켜져 있어야 이력이 남습니다. 데이터 요소별로 설정되므로 계좌번호는 기록되는데 예금주명은 안 되는 경우가 생깁니다. 또 위험도 기준(시차 며칠, 금액 얼마)은 회사 통제 정책에 맞춰 정해야 합니다.

참고 CDS 뷰

@AbapCatalog.sqlViewName: 'ZCBANKCHG'
@EndUserText.label: '거래처 은행계좌 변경 이력 (Z)'
define view Z_C_BANK_ACCOUNT_CHANGE
  as select from cdhdr as Header
    inner join      cdpos as Item   on Header.objectclas = Item.objectclas
                                  and Header.objectid   = Item.objectid
                                  and Header.changenr   = Item.changenr
    left outer join lfa1  as Vendor on Header.objectid  = Vendor.lifnr
{
  key Header.changenr as ChangeDocNo,
  key Item.tabname,
  key Item.fname      as FieldName,
      Header.objectid as PartnerCode,
      Vendor.name1    as PartnerName,
      Header.username as ChangedBy,
      Header.udate    as ChangeDate,
      Header.utime    as ChangeTime,
      Item.value_old  as OldValue,
      Item.value_new  as NewValue
      // 위험도는 변경 이후 지급(REGUH)을 조인해 시차·금액으로 산정
}
where Item.tabname in ( 'LFBK', 'KNBK' )

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

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.bankchg) · ko 로케일
view/Main.view.xml조회조건과 변경 이력 테이블
controller/Main.controller.js조회 · 위험도 산정 · 지급 연결 · CSV
model/ModelMock.jslocaldata JSON 읽기(Promise)
js/formatter.js일시 · 위험도 색 포맷터
localdata/bankchanges.json계좌 변경 66건
localdata/paymentdata.json지급 14건

검증 결과

검증 항목결과
위험도 판정 = 시차·금액 기준 재계산값과 일치통과
근접 지급은 변경일 이후 전기일만 포함통과
변경 전/후 값이 모두 존재통과
거래처유형과 거래처 코드 체계 정합통과
거래처 코드가 있으면 명칭도 존재통과
XML · JSON 전체 파싱오류 0건
화면 렌더링 — 실브라우저 조회 → 상세 실동작 후 캡처3/3
테마 런타임 확인sap_horizon

자주 묻는 질문

모든 계좌 변경을 확인해야 하나요?

현실적으로 어렵습니다. 그래서 변경 후 짧은 시간 안에 큰 금액이 나간 건으로 좁힙니다. 월 몇 건 수준으로 줄어야 실제로 확인 절차가 지켜집니다.

확인은 어떻게 하나요?

메일이나 팩스가 아니라 기존에 알고 있던 전화번호로 연락합니다. 변경 요청이 온 경로로 확인하면 그 경로 자체가 위조됐을 때 아무 의미가 없습니다.

매출처 계좌 변경도 위험한가요?

지급 위험은 낮습니다. 다만 환불이나 과오납 반환이 나가는 경우가 있어 함께 봅니다. 위험도 산정은 매입처 쪽이 훨씬 중요합니다.

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

마스터 변경은 표준이 변경문서로 기록합니다. 이 화면은 그 기록 중 자금 경로 필드만 골라 지급 데이터와 연결하고, 시차와 금액으로 위험도를 매겨 확인 대상을 좁히는 확장입니다.

계좌 변경 통제, 지금 쓰는 SAP 위에서 확장해 보세요

변경과 지급을 따로 보면 아무 이상이 없습니다. 연결해야 보입니다. 현재 SAP 환경 기준으로 어떻게 적용되는지 함께 확인해 드립니다.

계좌변경거래처 마스터XK04CDHDRCDPOS부정방지내부통제OpenUI5