SAP 미결 전표 마감 대사 점검 — 기표기간이 끝나기 전에 얼마나, 어디서 걸려 있는지부터 본다
회사코드·기표기간별로 미결(파킹) 전표의 기초·신규·해소·기말 증감을 대사하고, 경과일수 기준으로 확인이 필요한 건을 자동으로 가려냅니다
기표기간을 마감할 때마다 "아직 포스팅되지 않고 파킹 상태로 남은 전표가 이번 달엔 왜 이렇게 많지"라는 질문을 받는 담당자가 많습니다. 개별 전표를 하나씩 조회해서는 이번 기간에 새로 늘어난 건과 그동안 처리된 건이 얼마나 되는지, 회사코드마다 흐름이 어떻게 다른지가 잘 드러나지 않습니다.
회사코드·기표기간별로 미결(파킹) 전표의 기초·신규·해소·기말 건수를 증감 대사하고, 입력일 기준 경과일수가 기준을 넘는 건을 자동으로 가려내는 과정을 OpenUI5 화면으로 확장했습니다. 회사코드별 합계가 전사 합계와 정확히 일치하는지 대사하는 로직까지 포함해, 실제 구동 화면 3종을 함께 공개합니다.
SAP 표준 기능을 그대로 이어받은 부분
- 파킹 전표 등록 — 파킹 전표 등록(
FBV0)으로 생성된 전표를 그대로 조회 대상으로 삼습니다 - 표준 화면 — 파킹 전표 변경·조회(
FBV2·FBV3)의 문서 구조를 참고했습니다
| 항목 | 내용 |
|---|---|
| 업무 영역 | 재무회계(FI) · 회계 결산 |
| 대상 영역 | 기표기간 마감 전 미결(파킹) 전표 증감 대사 및 경과일수 점검 |
| Namespace | zui5.opendoc |
| 셸 구조 | 조회조건 영역(우측 조회) + 대사 요약 KPI 4종 + 명세/회사코드별 집계 탭, 행 클릭 상세 Dialog |
| 화면 수 | 조회 화면 1개(탭 2개) + 상세 다이얼로그 |
| SAP 표준 T-code | FBV0 · FBV2 · FBV3 · FBV4 · FBVB |
| 데이터 연동 방식 | OData V2 — 탭마다 엔티티셋에 직접 바인딩 |
| 성격 | 조회·대사·점검형 — 포스팅·보류 여부 결정은 화면 밖에서 회사가 수행 |
| UI 테마 | sap_horizon 단일 적용 |
실제 화면 3종 둘러보기
화면을 열면 전체 회사코드·당월 기표기간 조건으로 명세가 자동 조회됩니다 → 회사코드별 집계 탭에서 기초·신규·해소·기말 대사를 확인하고 → 명세 행을 클릭해 전표 상세를 확인합니다.
아래는 실제로 앱을 실행해 기능을 눌러 가며 캡처한 화면입니다. 이미지를 클릭하면 원본 크기로 확대됩니다.
사용 방법
- 화면을 열면 회사코드 전체·회계연도 2026·기표기간 당월 조건으로 명세가 자동 조회됩니다.
- 회사코드·상태는 선택 항목(전체 포함)이며, 입력자는 사번(ID) 일부를 입력하는 선택 항목입니다.
- 조회 버튼은 조회조건 입력 필드 줄의 가장 오른쪽에 있습니다. 입력자 필드에서 Enter 키를 눌러도 같은 조회가 실행됩니다.
- 초기화 버튼을 누르면 모든 조건이 기본값으로 돌아가 다시 조회됩니다.
- [명세] 탭에서 행을 클릭하면 해당 전표의 상세 정보가 다이얼로그로 열립니다.
- [회사코드별 집계] 탭에서 기표기간별 기초·신규·해소·기말 미결 건수 대사를 확인합니다.
- 명세 목록 우측 상단 CSV 내려받기(UTF-8 BOM)로 현재 조회조건 기준 전체 결과를 저장할 수 있습니다.
지연 판정 로직
| 판정 조건 | 결과 상태 | 사용자 조치 |
|---|---|---|
| 입력일 기준 경과일수 ≤ 5일 | 정상 | 추가 조치가 필요하지 않습니다. |
| 입력일 기준 경과일수 > 5일이고 아직 미결 상태 | 지연(점검 필요) | 담당자 확인 후 마감 전 포스팅 또는 보류 사유를 기록합니다. |
이 화면이 대신 정하지 않는 것
지연 표시는 확인이 필요하다는 안내일 뿐입니다. 실제 포스팅 여부나 보류 사유에 대한 최종 판단은 회사와 담당자가 합니다.
미결 증감 대사 절차
| 단계 | 내용 |
|---|---|
| 1단계 | 기표기간 시작 시점의 미결 건수(기초 미결)를 확인한다 |
| 2단계 | 해당 기간 중 신규로 파킹된 전표 건수(신규 파킹)를 더한다 |
| 3단계 | 해당 기간 중 포스팅 완료로 해소된 건수(해소)를 뺀다 |
| 4단계 | 산출된 값이 기간 종료 시점의 실제 미결 건수(기말 미결)와 일치하는지 대사한다: 기초 + 신규 − 해소 = 기말 |
| 5단계 | 기말 미결 중 경과일수 기준을 넘는 건을 지연 건수로 별도 집계한다 |
| 6단계 | 회사코드별 합계가 전사 합계 행과 일치하는지 교차 대사한다 |
조회조건
| 필드 | 필수 | 설명 |
|---|---|---|
| 회사코드 | 선택 | 전체 또는 특정 회사코드. 전체 선택 시 조건 없이 조회됩니다. |
| 회계연도 / 기표기간 | 회계연도 필수 / 기표기간 선택 | 기표기간은 회사코드별 집계 탭의 기간 필터로 쓰입니다. |
| 상태 | 선택 | 전체/정상/지연(점검 필요) 중 선택 |
| 입력자 | 선택 | 사번(ID) 일부 문자열로 포함 검색 |
결과 컬럼
| 컬럼 | 설명 |
|---|---|
| 회사코드 / 전표번호 / 회계연도 | 전표 식별 정보 |
| 전표유형 / 전기일 / 입력일 / 입력자 | 전표 기본 정보 |
| 금액 / 통화 / 경과일수 / 상태 / 코스트센터 | 대사 및 판정에 쓰이는 값 |
| 기초 미결 / 신규 파킹 / 해소(포스팅) / 기말 미결 / 지연 건수(집계 탭) | 회사코드·기표기간별 증감 대사 값 |
SAP 표준 기능 매핑
표준 실행은 SAP 표준 T-code 가 담당하고, 이 화면은 그 결과에 회사코드·기간별 증감 대사 관점을 더해 확장합니다.
| 표준 T-code | 표준 기능 | 이 화면이 더한 것 |
|---|---|---|
FBV0 | 전표 파킹(보류) 등록 | 이 화면이 조회하는 미결 전표의 발생 시작점입니다 |
FBV2 / FBV3 | 파킹 전표 변경 / 조회 | 개별 전표 처리는 표준 화면에서, 다건 현황과 기간별 증감 대사는 이 화면에서 수행합니다 |
FBV4 / FBVB | 파킹 전표 완료처리 / 일괄승인 | 지연 건 확인 후 담당자가 표준 T-code 로 이어서 처리합니다 |
참고 CDS 뷰
| 원천 테이블 | 주요 필드 | 쓰임 |
|---|---|---|
VBKPF | BUKRS · BELNR · GJAHR · CPUDT | 파킹 전표 헤더 — 회사코드·전표번호·입력일 |
VBSEG | WRBTR · KOSTL | 파킹 전표 아이템 — 금액·코스트센터 |
BKPF | BELNR · BUDAT | 전기 완료 전표 헤더 — 해소(포스팅) 여부 대사 |
define view entity I_ParkedDocumentOpenItem
as select from vbkpf as Header
association [0..1] to vbseg as _Item
on Header.bukrs = _Item.bukrs
and Header.belnr = _Item.belnr
and Header.gjahr = _Item.gjahr
{
key Header.bukrs as CompanyCode,
key Header.belnr as DocNo,
key Header.gjahr as FiscalYear,
Header.budat as PostingDate,
Header.cpudt as EntryDate,
_Item.wrbtr as Amount,
_Item.kostl as CostCenter
// 기초·신규·해소·기말 증감은 기간별 VBKPF 이력을 집계해 산출하며 세부 기준은 확인이 필요합니다
}
표준 CDS 뷰 이름과 필드는 시스템 릴리스에 따라 다를 수 있으므로, 도입 시 실제 시스템에서 확인해 확정합니다.
OpenUI5 구성
| 기능 | 사용 컨트롤 · 구성 |
|---|---|
| 화면 골격 | sap.m.Page + 조회조건 영역 · 대사 요약 KPI 4종 · IconTabBar(명세/회사코드별 집계) |
| 데이터 연동 | manifest.json dataSources.mainService(OData V2, 상대 경로) — 탭마다 엔티티셋에 개별 바인딩합니다. 모델 설정은 defaultCountMode: Inline |
| 조회조건 | sap.m.Select · sap.m.Input — 우측 끝에 조회·초기화 버튼, Enter 키로 즉시 재조회, sap/ui/model/Filter로 조회조건을 조립합니다. "전체"를 고른 조건은 필터를 만들지 않습니다 |
| 명세 목록 | 컬럼 12개로 sap.ui.table.Table 사용 — 입력일 내림차순 기본 정렬, cellClick에서 행 컨텍스트로 상세 다이얼로그를 엽니다 |
| 회사코드별 집계 | sap.m.Table — 기초·신규·해소·기말·지연 건수를 서비스 집계 그대로 표시 |
| 공통 처리 | CSV 다운로드 공통 컨트롤러(UTF-8 BOM), 전역 오류 처리기 — 메타데이터 로드 실패·요청 실패를 구분해 안내 |
파일 구성
| 경로 | 역할 |
|---|---|
index.html | OpenUI5 부트스트랩 — sap_horizon, OData 서비스에 연결 |
Component.js | 디바이스 모델 초기화, 전역 오류 처리기 연결 |
manifest.json | 앱 디스크립터 — zui5.opendoc · ko 로케일, OData 서비스와 모델 선언 |
view/Main.view.xml | 조회조건 · KPI 요약 · 명세/회사코드별 집계 탭 |
view/DetailDialog.fragment.xml | 미결 전표 상세 다이얼로그 |
controller/Main.controller.js | 조회조건 조립 · 바인딩 · 다이얼로그 · CSV 다운로드 |
controller/BaseController.js | CSV 다운로드 공통 처리 |
model/ErrorHandler.js | 전역 오류 처리 |
model/formatter.js | 금액·날짜·상태 표시 서식 |
i18n/i18n_ko.properties | ko 로케일 리소스 |
운영 데이터는 OData 서비스가 제공하며, 검증용 샘플 데이터는 화면과 완전히 분리해 별도로 둡니다. 화면과 판정 로직은 그대로 씁니다.
검증 결과
화면 구성에 쓴 검증용 샘플 데이터는 회사코드 4곳·회계기간 9개월을 기준으로 기초·신규·해소 건수를 생성해, 회사코드별 합계와 전사 합계가 완전히 일치하도록 구성했습니다.
| 검증 항목 | 결과 |
|---|---|
| 기초+신규−해소=기말 대사(회사코드 4곳 × 9개 기간, 50행 전수) | 통과(차이 0) |
| 회사코드별 합계 = 전사 합계(전 기간 전수) | 통과(차이 0) |
| 명세 건수(28건) = 당월 기말 미결 건수(회사코드별 집계 탭 합계) | 통과(일치) |
| 지연 건수 — 명세 재계산 값과 집계표 값 대조 | 통과(일치) |
| 표시 금지 검사 — 커스텀 프로그램ID·앱 식별자·출처 표현 검출 | 0건 |
| 화면 렌더링 — 실브라우저에서 조회 → 필터 → 탭 전환 → 행 클릭 상세까지 실동작 후 캡처 | 3/3 |
조회 버튼 위치 · sap_horizon 테마 · Enter 키 조회 · 서비스 미연결 시 오류 안내 | 확인 |
모든 데이터는 검증용으로 구성한 가상 데이터입니다.
자주 묻는 질문
"지연(점검 필요)"으로 표시되면 문제가 있다는 뜻인가요?
아닙니다. 입력일 기준 경과일수가 기준을 넘겨 확인이 필요하다는 안내일 뿐이며, 승인 대기 등 정상적인 사유일 수 있습니다. 화면은 조회·점검을 돕는 도구이고 처리 여부에 대한 최종 판단은 회사와 담당자가 합니다.
회사코드별 증감 대사는 어떻게 계산되나요?
기표기간 시작 시점의 미결 건수(기초)에 그 기간 중 새로 파킹된 건수(신규)를 더하고, 포스팅으로 해소된 건수를 뺀 값이 기간 종료 시점의 미결 건수(기말)와 일치하는지 대사합니다.
이 화면은 언제, 어떤 범위에서 쓸 수 있나요?
별도로 정해진 시행 시기는 없으며, 회사가 관리하는 회사코드·회계연도 범위 안에서 결산 마감 전 점검 목적으로 상시 사용할 수 있습니다.
조회 결과를 그대로 전표 처리 여부 결정에 써도 되나요?
화면은 미결 전표 현황을 분류·집계해 확인이 필요한 건을 가려내는 조회 도구이며, 실제 포스팅·보류 여부에 대한 최종 판단은 회사와 담당자가 수행합니다.
기표기간이 끝나기 전에 미결 전표부터 미리 확인해 보세요
개별 전표 목록만으로는 이번 기간에 얼마나 새로 늘고 얼마나 처리됐는지 한눈에 보이지 않습니다. 화면에서 회사코드별 증감을 미리 대사해 두면 결산 마감 전 점검 우선순위를 정하기가 한결 가벼워집니다. 현재 SAP 환경 기준으로 어떻게 적용되는지 함께 확인해 드립니다.
| 관련 글 | 차이점 |
|---|---|
| SAP 파킹 전표 현황 | 개별 전표의 경과일수·차대일치 여부를 점검 — 이 화면은 회사코드·기표기간별 기초·신규·해소·기말 증감을 대사하는 관점을 더함 |
| SAP 보조원장-총계정원장 결산 대사 점검 | 보조원장과 총계정원장 잔액을 대사 — 이 화면은 미결(파킹) 전표의 마감 전 증감 현황을 대사 |