솔루션 홈
세무 대응

SAP 법인세 세무조정 항목 점검 — 신고서 합계와 원장 집계, 한 화면에서 맞춰본다

세무조정 항목을 유형별로 분류하고 신고서 합계와 원장 집계 합계를 대사해 완비성을 점검합니다

법인세 신고서를 쓸 때 익금산입·손금산입 항목을 하나하나 유형별로 분류하고 나면, 정작 그 분류가 신고서 합계와 정확히 맞는지는 별도로 대조해 보기 전에는 확신하기 어렵습니다. 증빙이 빠진 항목이나 같은 계정이 두 유형에 겹쳐 분류된 항목은 더더욱 눈에 띄지 않습니다.

세무조정 항목을 익금산입(유보·기타사외유출·배당·기타)·손금산입(유보·기타) 6개 유형으로 분류·집계하고, 신고서 합계와 원장 집계 합계를 대사해 차이 여부를 가려내며, 증빙 미비·중복분류 의심 건수까지 함께 점검하는 화면을 OpenUI5로 구현했습니다. 실제 구동 화면 3종을 함께 공개합니다.

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

  • 표준 전표 조회(FB03) — 세무조정 항목의 근거가 되는 전표를 표준 화면 그대로 조회할 수 있습니다
  • 계정별 원장 조회(FBL3N)의 데이터 구조를 그대로 이어받아, 계정별 집계와 대사에 활용합니다
항목내용
업무 영역재무회계(FI) · 세무 대응
대상 영역법인세 세무조정 항목 분류·완비성 점검 — 유형별 집계, 신고서-원장 대사
Namespacezui5.taxadj
셸 구조조회조건 영역(우측 조회) + 명세/집계/대사결과 탭, 행 클릭 상세 Dialog
화면 수조회 화면 1개(탭 3개) + 상세 다이얼로그
SAP 표준 T-codeFB03 · FBL3N
데이터 연동 방식OData V2 — 탭마다 엔티티셋에 조건을 실어 개별 조회
성격조회·대사·점검형 — 최종 분류·신고 판단은 화면 밖에서 회사와 세무대리인이 수행
UI 테마sap_horizon 단일 적용

실제 화면 3종 둘러보기

조회조건을 넣고 조회하면 조정 항목 명세가 뜹니다 → 유형별 집계 탭에서 조정유형별 합계를 확인하고 → 대사 결과 탭에서 신고서 합계와 원장 집계 합계의 차이를 확인합니다.

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

Main.view.xml
조정 항목 명세 — 조회조건과 명세 표
메인화면 — 회계연도 기준 조회 결과. 조정 항목별 계정·조정유형·영구/일시·조정금액·세효과금액·증빙상태·중복분류의심 여부가 표시됩니다. 조회 버튼은 조회조건 영역 오른쪽 끝에 있습니다.
유형별 집계 탭
유형별 집계 탭 — 조정유형별 항목건수와 합계금액
유형별 집계 — 조정유형 6종별 항목건수·합계금액과 전체 합계 행을 함께 보여줍니다.
조정 항목 상세 다이얼로그
조정 항목 상세 다이얼로그
조정 항목 상세 — 명세 행을 클릭하면 해당 항목의 전체 필드가 다이얼로그로 펼쳐집니다.

사용 방법

  1. 화면 진입 시 회계연도 기준으로 자동 조회가 한 번 실행됩니다.
  2. 회계연도(필수)를 선택하고, 조정유형·영구/일시·증빙상태(선택)는 필요할 때만 좁혀 선택합니다. "전체"를 고르면 해당 조건은 조회에서 빠집니다.
  3. 계정(선택) 입력란은 값을 넣고 Enter 키를 누르면 바로 조회됩니다.
  4. 조회조건 영역 오른쪽 끝의 조회 버튼을 눌러도 같은 결과가 나오며, 초기화 버튼은 조건을 기본값으로 되돌립니다.
  5. 조정 항목 명세 탭 제목 옆 괄호 안 숫자가 현재 조회 건수입니다.
  6. 유형별 집계 탭에서 조정유형별 항목건수·합계금액과 전체 합계를 확인합니다.
  7. 대사 결과 탭에서 신고서 합계·원장 집계 합계·차이·증빙미비 건수·중복분류의심 건수를 카드로 확인하고, 대사 재실행 버튼으로 다시 계산할 수 있습니다.
  8. 명세 표의 행을 클릭하면 해당 항목의 상세 다이얼로그가 열립니다.
  9. 명세 탭 우측 상단 CSV 다운로드(UTF-8 BOM)로 현재 조회 결과를 저장할 수 있습니다.

분류·완비성 판정 로직

판정 조건결과 상태사용자 조치
조정 항목의 증빙상태 = 미비증빙 미비비고에 표시된 안내에 따라 증빙 서류를 재확인합니다
같은 계정이 서로 다른 조정유형으로 중복 분류된 것으로 표시중복분류의심어느 유형이 맞는 분류인지 재검토하고 하나로 정리합니다
신고서 합계 − 원장 집계 합계 = 0일치별도 조치가 필요하지 않습니다
신고서 합계 − 원장 집계 합계 ≠ 0확인 필요대사 결과 탭에서 차이 금액을 확인하고 신고서 작성 근거와 원장 집계 범위를 재대사합니다

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

판정 결과는 확인이 필요한 항목을 알리는 표시일 뿐입니다. 세무조정 항목의 최종 분류와 신고 반영 여부는 회사와 세무대리인(감사인)이 판단합니다.

집계·대사 처리 단계

단계내용
1단계조정 항목 명세를 회계연도·조정유형·영구/일시·증빙상태·계정 조건으로 조회한다
2단계조정유형별로 항목건수와 조정금액을 합산해 유형별 소계를 만든다
3단계모든 유형의 소계를 다시 더해 전체 합계 행을 만든다
4단계전체 합계(=원장 집계 합계)를 신고서 합계(소득금액조정합계표 신고 금액)와 대사해 차이를 계산한다
5단계증빙상태 미비 건수와 중복분류의심 건수를 별도로 집계해 완비성 점검 결과로 표시한다

조회조건

필드필수설명
회계연도필수대상 회계연도를 선택합니다.
조정유형 / 영구·일시 / 증빙상태선택"전체" 선택 시 해당 조건 없이 조회됩니다.
계정선택계정 코드 일부를 입력(부분일치)하고 Enter로 조회합니다.

결과 컬럼

컬럼설명
연도 / 항목번호조정 항목의 키
계정 / 계정명세무조정이 발생한 계정(가상 계정체계)
조정유형 / 영구·일시익금산입·손금산입 세부 유형과 영구차이·일시차이 구분
조정금액 / 세효과금액세효과금액은 가정 실효세율을 적용한 참고용 계산값입니다
증빙상태 / 중복분류의심완비성 점검 결과 표시
비고완비성 점검 결과에 대한 안내 문구

SAP 표준 기능 매핑

표준 실행은 SAP 표준 T-code 가 담당하고, 이 화면은 그 데이터를 이어받아 세무조정 유형별 분류와 신고서 대사 관점을 더해 확장합니다.

표준 T-code표준 기능이 화면이 더한 것
FB03전표 조회조정 항목의 근거 전표를 조회하는 표준 화면을 그대로 활용합니다
FBL3N계정별 원장(라인아이템) 조회계정별 데이터 구조를 이어받아 세무조정 유형 분류와 집계·대사에 활용합니다

소득금액조정합계표 작성 자체에 정확히 대응하는 SAP 표준 T-code는 확인하지 못했습니다. 국내 법인세 신고 특화 업무로, 표준 전표·원장 조회 기능 위에 이 화면의 분류·대사 로직을 더했습니다.

참고 CDS 뷰

원천 테이블주요 필드쓰임
BKPFBUKRS · GJAHR전표 헤더 — 회계연도의 원천
BSEGHKONT · DMBTR전표 명세 — 계정·금액의 원천
SKA1 / SKATSAKNR · TXT50계정 마스터 / 텍스트 — 계정명의 원천
define view entity ZI_TaxAdjustmentItem
  as select from bseg as adj
  association [1..1] to ska1 as _Account
    on  $projection.CompanyCode = _Account.Bukrs
    and $projection.GLAccount   = _Account.Saknr
{
  key adj.gjahr  as FiscalYear,
  key adj.buzei  as ItemNo,
      adj.bukrs  as CompanyCode,
      adj.hkont  as GLAccount,
      _Account
      // 세무조정 유형·영구/일시 구분·증빙상태는 별도 분류 관리 항목이며 확인이 필요합니다
}

표준 CDS 뷰 이름과 필드는 시스템 릴리스에 따라 다를 수 있으므로, 도입 시 실제 시스템에서 확인해 확정합니다.

OpenUI5 구성

기능사용 컨트롤 · 구성
화면 골격sap.m.Page + 조회조건 패널 · IconTabBar(명세/집계/대사결과)
데이터 연동manifest.json dataSources.mainService(OData V2, 상대 경로) — 탭마다 엔티티셋에 조건을 실어 개별 조회합니다. 모델 설정은 useBatch:false
조회조건sap.m.Select · sap.m.Input — 우측 끝에 조회·초기화 버튼, Enter 키로 즉시 재조회, sap/ui/model/Filter로 조회조건을 조립합니다. "전체"를 고른 조건은 필터를 만들지 않습니다
명세 목록컬럼 11개로 sap.ui.table.Table 사용, cellClick에서 행 컨텍스트로 상세 다이얼로그를 엽니다
점검결과 표시sap.m.ObjectStatus로 판정 상태를 표준 ValueState 로만 표시
공통 처리CSV 다운로드 공통 컨트롤러(UTF-8 BOM), 전역 오류 처리기 — 메타데이터 로드 실패·요청 실패를 구분해 안내

파일 구성

경로역할
index.htmlOpenUI5 부트스트랩 — sap_horizon, OData 서비스에 연결
Component.js화면 상태 모델 초기화, 전역 오류 처리기 연결
manifest.json앱 디스크립터 — zui5.taxadj · ko 로케일, OData 서비스와 모델 선언
view/Main.view.xml조회조건 · 명세/집계/대사결과 탭
view/DetailDialog.fragment.xml조정 항목 상세 다이얼로그
controller/Main.controller.js조회조건 조립 · 바인딩 · 다이얼로그 · CSV 다운로드
controller/BaseController.jsCSV 다운로드 공통 처리
model/ErrorHandler.js전역 오류 처리
model/formatter.js금액 · 상태 표시 서식
i18n/i18n_ko.propertiesko 로케일 리소스

운영 데이터는 OData 서비스가 제공하며, 검증용 샘플 데이터는 화면과 완전히 분리해 별도로 둡니다. 화면과 판정 로직은 그대로 씁니다.

검증 결과

화면 구성에 쓴 검증용 샘플 데이터는 2개 회계연도(2025·2026) 총 46건을 기준으로, 유형별 집계 합계가 명세 합계와 일치하도록 구성했습니다.

검증 항목결과
유형별 집계 합계 = 명세 합계(46건 전수 대사)통과(차이 0)
신고서 합계 vs 원장 집계 합계 대사(2개 연도)2025년 일치 · 2026년 차이 150,000(의도적 검증용 예외)
증빙미비·중복분류의심 판정 분포(의도적 구성)증빙미비 3건 · 중복분류의심 3건
조회 조건 전달 — 계정 필터·정렬 결과 확인확인
표시 금지 검사 — 커스텀 프로그램ID·앱 식별자·출처 표현 검출0건
화면 렌더링 — 실브라우저에서 조회 → 집계 전환 → 행 클릭 상세까지 실동작 후 캡처3/3
조회 버튼 위치 · sap_horizon 테마 · Enter 키 조회 · 서비스 미연결 시 오류 안내확인

모든 데이터는 검증용으로 구성한 가상 데이터입니다.

자주 묻는 질문

이 화면은 언제부터 사용할 수 있나요

화면 자체는 즉시 사용할 수 있는 조회·점검 도구입니다. 다만 세무조정 항목의 실제 확정과 신고서 반영 시점은 회사의 결산·신고 일정에 따릅니다.

차이가 표시되면 어떻게 해야 하나요

화면은 차이 발생 사실만 확인 필요로 보여줍니다. 원인 분석과 조정은 회사와 세무대리인(감사인)이 판단합니다.

세효과금액은 실제 납부세액인가요

아닙니다. 가정 실효세율을 적용한 참고용 계산값이며, 실제 세율과 세액은 신고 시점 기준으로 별도 확인이 필요합니다.

중복분류의심으로 표시된 항목은 잘못된 것인가요

같은 계정이 서로 다른 조정유형으로 분류된 것으로 보여 재검토가 필요하다는 뜻이며, 최종적으로 오류인지 여부는 화면이 단정하지 않습니다.

신고서 합계와 원장 집계, 미리 맞춰 보세요

세무조정 항목을 유형별로 나눠 적는 것과, 그 합계가 원장과 정확히 맞는지 확인하는 것은 다른 작업입니다. 화면에서 분류 완비성과 신고서-원장 대사를 미리 점검해 두면 신고 전 재작업을 줄일 수 있습니다. 현재 SAP 환경 기준으로 어떻게 적용되는지 함께 확인해 드립니다.

세무 대응세무조정소득금액조정신고서 대사증빙 완비성OpenUI5
관련 글차이점
SAP 법인세비용 유효세율 조정표예상세액과 실제세액의 세율 차이 분석 — 이 화면은 세무조정 항목 자체의 분류 완비성과 신고서-원장 대사에 초점