솔루션 홈
내부통제

SAP 전표 통제 점검 — 자가승인·휴일기표·이상금액을 한 화면에서 가른다

전표 한 건마다 4개 통제 기준을 동시에 적용해, 점검이 필요한 후보와 그 판정 근거를 함께 보여줍니다

내부회계관리제도를 운영하다 보면 "이 전표, 누가 봐도 이상한데 왜 아무도 안 걸렀지?"라는 질문을 결산이 다 끝난 뒤에야 받는 경우가 많습니다. 자가승인(입력자와 승인자가 같은 경우), 업무시간 외 기표, 금액이 유난히 크거나 끝자리가 딱 떨어지는 이상 패턴, 한 사람이 짧은 시간에 여러 건을 몰아서 입력하는 패턴은 하나하나는 사소해 보여도 통제 관점에서는 먼저 확인해 볼 가치가 있는 신호입니다.

표준 전표 데이터 구조를 그대로 이어받아 이 4가지 통제 기준을 전표 한 건 단위로 동시에 판정하고, 기준별 집계와 건별 판정 근거까지 한 화면에서 확인할 수 있도록 OpenUI5 화면으로 확장했습니다. 실제 구동 화면 2종을 함께 공개합니다.

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

  • 전표 원천 — 회계전표 헤더 구조(회사코드·전표번호·회계연도·기표일·증빙일)를 그대로 사용
  • 입력자 식별 — 표준 필드(USNAM)로 전표를 입력한 담당자를 식별
  • 표준 화면 — 회계전표 표시(FB03) · G/L 개별 항목 조회(FBL3N)
항목내용
업무 영역재무회계(FI) · 내부통제
관련 기준서·대상 영역- (대상 영역 : 내부통제 — 전표 자가승인·휴일기표·이상금액·번호이상 통제 기준 점검)
Namespacezui5.jvcontrol
셸 구조조회조건 영역(우측 조회) + 통제 유형별 집계 패널 + 점검 대상 전표 목록, 판정 근거 Dialog
화면 수조회 화면 1개 + 전표 상세(판정 근거) 다이얼로그
SAP 표준 T-codeFB03 · FBL3N · S_ALR_87012332(§7 참고)
데이터 연동 방식OData(V2) — 서비스 연결 시 표준 OData 계약(엔티티셋·$filter·$metadata)을 따릅니다
성격조회·점검형 — 통제 판정 자체는 담당 부서의 후속 확인 프로세스
UI 테마sap_horizon 단일 적용

실제 화면 2종 둘러보기

회사코드·회계연도·기표기간을 넣고 조회하면 점검 유형별 집계와 점검 대상 전표 목록이 함께 뜹니다 → 목록에서 상세를 누르면 그 전표가 어떤 기준에 해당했는지 판정 근거가 다이얼로그로 열립니다.

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

Main.view.xml
전표 통제 점검 메인화면 — 조회조건, 점검 유형별 집계, 점검 대상 전표 목록
메인화면 — 2026 회계연도 전체 기표기간 조회 결과. 점검 유형별 집계(자가승인 14건·휴일야간기표 37건·비정상금액 27건·전표번호이상 4건)와 점검 대상 전표 42건이 함께 표시됩니다. 조회 버튼은 조회조건 영역 오른쪽 끝에 있습니다.
DetailDialog.fragment.xml
자가승인·휴일기표·비정상금액 3개 기준에 동시에 해당한 전표를 클릭했을 때 뜨는 판정 근거 다이얼로그
전표 상세(판정 근거) — 자가승인·휴일야간 기표·비정상 금액 3개 기준에 동시에 해당한 1,200만원 전표를 클릭하면 판정 근거가 목록으로 펼쳐집니다.

조작 방법

  1. 회사코드 · 회계연도 · 기표기간(시작~종료) · 통제 점검 유형(전체·자가승인·휴일야간기표·비정상금액·전표번호이상) · 입력자를 지정합니다.
  2. 조회·초기화 버튼은 조회조건 영역 오른쪽 끝에 있고, 입력 필드에서 Enter 키로도 조회됩니다.
  3. 점검 유형별 집계는 현재 전체 데이터를 기준으로 통제 기준별 건수·금액을 항상 보여줍니다.
  4. 점검 대상 전표 목록에서 행의 상세 버튼을 누르면 그 전표의 판정 근거가 다이얼로그로 열립니다.
  5. CSV 다운로드로 현재 조회 결과를 내려받을 수 있습니다.

4개 통제 기준 판정 로직

전표 1건마다 아래 4개 기준을 독립적으로 판정하고, 하나라도 해당하면 "점검 필요"로 표시합니다(복수 해당 가능).

판정 조건결과 상태사용자 조치
입력자와 승인자가 동일자가승인 — 점검 필요승인 이력·전결 규정 확인
기표일이 휴일이거나 입력시각이 22:00~06:00휴일·야간 기표 — 점검 필요업무 시간 외 입력 사유 확인
금액이 임계값(5천만원) 이상이거나 끝자리가 000000으로 떨어지는 등 이상 패턴비정상 금액 — 점검 필요산정 근거·증빙 확인
동일 입력자가 같은 기표일에 2건 이상 연속 입력전표번호 이상 — 점검 필요일괄·분할 입력 사유 확인

이 화면이 대신 정하지 않는 것

통제 기준에 해당한다고 표시된 전표가 실제로 오류이거나 부정인지에 대한 최종 판단, 그리고 임계값·기준 시간대의 확정은 회사의 내부통제·감사 담당 부서가 내부통제 정책과 증빙에 따라 내립니다.

조회부터 위반 근거 확인까지 처리 단계

단계내용
1단계조회조건(회사코드·회계연도·기표기간·통제 점검 유형·입력자)으로 전표를 조회합니다
2단계전표마다 4개 통제 기준을 판정해 해당 여부 플래그와 점검결과(정상/점검 필요)를 함께 내려받습니다
3단계통제 기준별로 건수·금액을 집계해 점검 유형별 집계표로 보여주고, 전체 합계(중복 포함) 행을 함께 표시합니다
4단계사용자가 개별 전표의 상세를 요청하면 그 전표가 해당한 기준을 근거 목록으로 다시 풀어 보여줍니다

조회조건

필드필수설명
회사코드필수점검 대상 회사코드
회계연도필수점검 대상 회계연도
기표기간(시작·종료)필수기표월 범위(01~12)
통제 점검 유형선택전체·자가승인·휴일야간기표·비정상금액·전표번호이상
입력자선택입력자 ID 부분 일치

결과 컬럼

패널컬럼 · 표시
점검 유형별 집계점검 유형 · 건수 · 금액합계
점검 대상 전표회사코드 · 전표번호 · 회계연도 · 기표일 · 증빙일 · 입력시각 · 입력자 · 승인자 · 전표금액 · 통화 · 전표유형 · 점검 유형 · 점검결과
전표 상세(판정 근거)전표 헤더 정보 + 해당 통제 기준 목록

SAP 표준 기능 매핑

전표 통제 점검은 내부통제 절차라, 전체에 정확히 대응하는 단일 SAP 표준 T-code는 확인되지 않습니다. 아래는 전표 조회에 관련된 표준 화면입니다.

SAP 표준 T-code연관 기능
FB03회계전표 표시 — 전표 한 건의 상세 조회
FBL3NG/L 계정 개별 항목 조회 — 표준 라인아이템 구조 참고
S_ALR_87012332자유 조회(전표 항목) — 임의 조회조건 구성 방식 참고

대상 영역 대응 매핑표

대상 영역요구사항(명칭)이 화면의 대응 기능원천 데이터비고
내부통제자가승인 방지(직무분리 원칙)자가승인 판정, 점검 유형별 집계전표 입력자·승인자 필드, 결재 이력(확인 필요)표준 승인자 필드는 회사별 워크플로우 구성에 따라 다름 — 확인 필요
내부통제업무시간 외 기표 점검휴일·야간 기표 판정전표 기표일·입력시각휴일 판정은 요일 기준(예시) — 공휴일 캘린더 연동은 확인 필요
내부통제이상 금액 탐지비정상 금액 판정전표 금액 항목임계값·패턴은 회사 정책에 맞춰 조정 필요
내부통제입력 패턴 이상 탐지전표번호 이상 판정입력자·기표일·전표번호동일자 연속 입력 건수 기준(예시)

도입 시 확인이 필요한 부분

금액·시간대 임계값, 승인자 필드의 실제 소스(워크플로우 연동 방식)는 회사의 내부통제 정책과 시스템 구성에 따라 확정해야 합니다.

참고 CDS 뷰

운영 서비스로 연결할 때를 가정해 새로 스케치한 조회용 뷰 예시입니다(운영 반영 시 권한 체크를 추가해야 합니다).

@AbapCatalog.sqlViewName: 'ZIJVCTRLENTRY'
define view entity ZI_JvControlEntry
  as select from bkpf
  association [0..1] to bseg as _Amount on _Amount.bukrs = bkpf.bukrs
                                        and _Amount.belnr = bkpf.belnr
                                        and _Amount.gjahr = bkpf.gjahr
{
  key bkpf.bukrs   as CompanyCode,
  key bkpf.belnr   as AccountingDocument,
  key bkpf.gjahr   as FiscalYear,
      bkpf.monat   as FiscalPeriod,
      bkpf.budat   as PostingDate,
      bkpf.bldat   as DocumentDate,
      bkpf.cputm   as CreateTime,
      bkpf.usnam   as EntryUser,
      bkpf.blart   as DocumentType,
      bkpf.waers   as Currency,
      _Amount
}
// 승인자·결재 이력은 별도 관리하는 워크플로우 메타데이터에서 읽어와 함께 판정

OpenUI5 구성

기능사용 컨트롤
화면 골격sap.m.Page + 조회조건 패널 + 점검 유형별 집계 패널 + 목록
조회조건sap.m.Input · sap.m.Select — 우측 끝에 조회 버튼, 입력 필드 Enter 키로도 조회
점검 대상 전표sap.ui.table.Table(컬럼 12개, OData 서버사이드 페이징) — 행별 상세 버튼
점검 유형별 집계sap.m.Table
상세(판정 근거)sap.m.Dialog + sap.ui.core.Icon — 해당 기준만 골라 목록으로 표시
데이터 연동sap.ui.model.odata.v2.ODataModelsap.ui.model.Filter로 조회조건 구성, sap.ui.model.Sorter로 정렬
공통 처리CSV 다운로드, 전역 오류 처리기(ErrorHandler)

파일 구성

경로역할
index.htmlOpenUI5 부트스트랩 — sap_horizon
Component.js전역 오류 처리기 연결
manifest.json앱 디스크립터 — zui5.jvcontrol · ko 로케일, OData 서비스 연결
view/Main.view.xml조회화면 + 집계 패널 + 목록
view/DetailDialog.fragment.xml전표 상세(판정 근거) 다이얼로그
controller/Main.controller.js조회 · 필터 조립 · 다이얼로그 · CSV 다운로드 로직
controller/BaseController.js공통 처리
model/ErrorHandler.js전역 오류 처리
model/formatter.js금액·상태 표시 서식
i18n/i18n_ko.propertiesko 로케일 리소스

운영 데이터는 OData 서비스로 연동하며, 화면과 판정 로직은 그대로 씁니다. 검증 단계에서 쓴 샘플 데이터 구성은 별도의 검증 전용 영역에만 두어 화면 로직과 분리했습니다.

검증 결과

화면 검증에 쓴 데이터는 통제 기준별 판정 결과와 유형별 집계가 정확히 맞물리도록 구성했습니다(반올림 오차 없음).

검증 항목결과
통제 기준별 판정 결과 = 유형별 집계 대사(검사 대상 94건)통과(차이 0)
점검 대상 전표 중 점검 필요 판정 건수64건(자가승인 14 · 휴일야간기표 37 · 비정상금액 27 · 번호이상 4, 중복 포함)
표시 금지 검사 — 커스텀 프로그램ID·앱 식별자·출처 표현 검출0건
화면 렌더링 — 실브라우저에서 조회 → 행 클릭 상세 실동작 후 캡처2/2
조회 버튼 위치 · sap_horizon 테마 적용 · Enter 키 조회 · CSV 다운로드 동작확인

계정·금액은 모두 검증용으로 구성한 가상 데이터입니다.

자주 묻는 질문

이 점검은 특정 기준서 시행일에 맞춰 하는 건가요?

아닙니다. 전표 통제 점검은 특정 회계기준의 시행일이 있는 요구사항이 아니라 회사의 상시 내부통제 절차입니다. 필요할 때마다 회계연도·기표기간을 지정해 조회하는 방식으로 활용합니다.

화면에서 "점검 필요"로 표시된 전표는 바로 위반이 확정된 건가요?

아닙니다. 이 화면은 4개 통제 기준에 따른 점검 대상을 걸러 보여주는 도구이며, 실제 오류·부정 여부의 최종 판단은 회사의 내부통제·감사 담당 부서가 증빙과 규정을 확인해 내립니다.

금액·시간대 임계값(5천만원, 22~06시 등) 기준은 모든 회사에 동일하게 적용되나요?

아니요. 화면에 쓰인 임계값은 검증용 예시이며, 실제 적용 시 임계값·기준 시간대는 회사의 내부통제 정책에 맞춰 조정합니다.

승인자 정보는 표준 테이블에서 그대로 가져올 수 있나요?

표준 전표 테이블에는 승인자를 나타내는 단일 표준 필드가 없어 회사별 결재·워크플로우 이력과 연동이 필요합니다. 이 부분은 도입 시 개별 확인이 필요합니다.

전표 통제 점검, 결산 전에 미리 걸러보세요

자가승인·휴일 기표·이상 금액·번호 이상처럼 하나하나는 놓치기 쉬운 신호를 화면에서 미리 모아 두면, 결산·감사 대응이 한결 가벼워집니다. 현재 SAP 환경 기준으로 어떻게 적용되는지 함께 확인해 드립니다.

내부통제전표통제자가승인직무분리이상전표탐지OpenUI5