솔루션 홈
관리회계

SAP 코스트센터 마스터 현황 — 유효기간이 끝나가는 코스트센터부터 찾는다

코스트센터가 있다고 다 살아있는 건 아닙니다. 유효기간이 끝났는데도 그대로 남아 있는 코스트센터가 있는지, 책임자나 사업영역이 비어 있는 채로 방치된 코스트센터가 있는지 조회기준일 기준으로 한 번에 확인하는 화면입니다.

코스트센터를 활용해 배부하거나 통계지표를 등록하는 화면들은 모두 "이미 살아있는 코스트센터"를 전제로 계산합니다. 그런데 정작 그 코스트센터 자체가 지금도 유효한지, 책임자·사업영역·기능영역이 제대로 채워져 있는지는 배부나 집계 화면에서는 잘 드러나지 않습니다. 유효기간이 끝난 코스트센터로 계속 전표가 들어오거나, 책임자가 비어 있는 채로 몇 달이 지나는 일은 결산 시점이 아니라 평소에 미리 걸러야 합니다.

SAP 표준 코스트센터 마스터(CSKS)와 텍스트(CSKT) 데이터 구조를 그대로 이어받아, 조회기준일 대비 유효종료일 잔여일수로 활성·만료임박·만료 3단계 신호등을 매기고 필수항목 결측 여부까지 함께 보여주도록 OpenUI5 화면으로 확장한 것이 이번 코스트센터 마스터 현황입니다. 실제 구동 화면 4종을 함께 공개합니다.

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

  • 코스트센터 마스터 원천 — CSKS(유효기간·책임자·사업영역·기능영역) · CSKT(언어별 명칭)
  • 코스트센터그룹 계층 — SETHIER 기반 그룹 구조(예: H-CCTR)
  • 표준 조회 화면 — KS13(코스트센터 일괄 표시), KS01~KS03(생성/변경/표시)
항목내용
업무 영역관리회계(CO) · 코스트센터 마스터 현황
Namespacezui5.ccmaster
셸 구조조회조건 영역(우측 조회) + 그룹·상태 집계 + 코스트센터 마스터 그리드, 상세 Dialog
화면 수조회 화면 1개 + 상세 다이얼로그
기준 사양620-1 프로그램 사양서 (코스트센터 마스터 현황)
상세 추출ZCCO_GET_COSTCENTER_MASTER
성격조회·검증형 — 마스터 생성·변경은 표준 트랜잭션이 담당
UI 테마sap_horizon 단일 적용

실제 화면 4종 둘러보기

조회기준일·그룹·상태를 지정하고 조회하면 대상 코스트센터가 그리드로 뜹니다 → 그룹별·상태별 집계로 전체 분포를 확인하고 → 코스트센터를 골라 상세와 같은 그룹 내 다른 코스트센터를 비교합니다.

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

코스트센터 마스터 현황 — 메인 그리드
코스트센터 마스터 그리드 — 상태별 신호등
코스트센터 마스터 그리드 — 조회기준일·그룹·코드/텍스트·상태를 지정하면 조건에 맞는 코스트센터가 목록으로 뜹니다. 그룹·코드·명칭·회사코드·사업영역·기능영역·책임자·유효기간·잔여일수·상태·정보미비를 한 줄에서 확인합니다.
코스트센터 마스터 현황 — 조회조건
조회조건 영역 — 조회 버튼 위치
조회조건 영역 — 조회기준일·코스트센터그룹·코드/텍스트·상태·정보 미비만 보기를 한 줄에 두고, 조회 버튼은 입력필드 가장 오른쪽에 배치했습니다. 입력 필드에서 Enter 를 눌러도 바로 조회됩니다.
코스트센터 마스터 현황 — 상세 다이얼로그
코스트센터 상세 — 같은 그룹 내 비교
코스트센터 상세 — 선택한 코스트센터의 전체 마스터 속성(그룹·회사코드·사업영역·기능영역·책임자·유효기간·잔여일수·상태·정보미비)과, 같은 그룹 내 다른 코스트센터 목록(최대 8건)을 함께 보여줍니다.
코스트센터 마스터 현황 — 그룹·상태 집계
그룹별 상태별 집계 — 신호등 컬러
그룹별·상태별 집계 — 코스트센터그룹별 건수, 상태별(활성·만료임박·만료) 건수, 정보 미비 건수를 태그 형태로 보여줍니다. 태그를 클릭하면 해당 조건으로 바로 필터가 적용됩니다.

조작 방법

  1. 조회기준일 · 코스트센터그룹 · 코스트센터/텍스트 · 상태 · 정보 미비만 보기를 지정합니다. 조회기준일 기본값은 오늘입니다.
  2. 조회조건 입력필드에서 값을 바꾸거나 Enter 를 눌러도 바로 조회됩니다. 조회·초기화 버튼은 조회조건 영역 오른쪽 끝에 있습니다.
  3. 그룹별·상태별 집계 태그(예: "생산 (9)", "만료 (6)")를 클릭하면 해당 조건으로 필터가 바로 적용됩니다.
  4. 목록 툴바의 만료임박 우선정렬을 누르면 잔여일수 오름차순(가장 급한 건 먼저)으로 재정렬됩니다.
  5. 각 행의 상세 버튼을 누르면 해당 코스트센터의 전체 마스터 속성과, 같은 그룹 내 다른 코스트센터 목록을 다이얼로그로 확인합니다.
  6. 목록은 CSV 다운로드로 내려받습니다. UTF-8 BOM 이 붙어 엑셀에서 한글이 깨지지 않습니다.

판정 로직 — 잔여일수 3단계 신호등과 정보 미비

조회기준일 대비 코스트센터 유효종료일 잔여일수를 계산해 상태를 3단계로 신호등 판정합니다.

상태판정 조건(잔여일수)의미
활성90일 초과당분간 유효기간 만료 우려가 없음
만료임박0 ~ 90일연장 또는 재검토가 필요한 구간
만료음수(이미 경과)유효기간이 이미 종료된 상태

정보 미비는 상태와 별개로 판정

책임자(담당자)·사업영역·기능영역 중 하나라도 비어 있으면 "정보 미비"로 따로 표시합니다. 상태 신호등과 독립적으로 함께 표시되므로, 만료임박이면서 동시에 정보 미비인 코스트센터도 한 화면에서 걸러낼 수 있습니다.

처리 단계 — 마스터 수집부터 그룹·상태 집계까지

운영에서 확인하는 흐름을 같은 순서의 여섯 단계로 재현했습니다.

단계내용
CSKS/CSKT 마스터 수집
코스트센터그룹 계층 매핑(그룹별 소속 코스트센터 집계)
조회기준일 대비 잔여일수 계산
책임자/사업영역/기능영역 결측 점검
상태 신호등 산정(활성/만료임박/만료 + 정보미비 플래그)
그룹별/상태별 집계 및 만료임박 우선순위 정렬

조회조건

필드컨트롤설명
조회기준일DatePicker기본값은 오늘. 잔여일수 계산의 기준
코스트센터그룹Select전체 그룹 / 생산 / 영업 / 관리 / 공통 / 연구개발
코스트센터/텍스트Input코드 또는 명칭 부분 일치 검색
상태Select전체 상태 / 활성 / 만료임박 / 만료
정보 미비만 보기CheckBox책임자·사업영역·기능영역 중 하나라도 비어 있는 건만

결과 컬럼

컬럼의미 · 표시
코스트센터그룹 · 코스트센터 · 코스트센터명그룹명과 코드, 텍스트
회사코드 · 사업영역 · 기능영역비어 있으면 "-" 로 표시
책임자담당자명, 비어 있으면 "-"
유효시작일 · 유효종료일YYYY.MM.DD, 무기한은 "무기한" 표기
잔여일수"D-N"(남은 일수) 또는 "경과 N일"
상태활성/만료임박/만료 신호등(아이콘·색상)
정보미비정상/정보 미비 표시
상세상세 다이얼로그를 여는 버튼

SAP 표준 기능 매핑

표준 실행은 KS13 같은 T-code가 담당하고, 이 화면은 조회·검증 관점을 더해 확장합니다. 코스트센터 마스터를 새로 만들거나 바꾸는 일은 하지 않고, 이미 있는 마스터의 유효성과 완전성을 살피는 데 집중합니다.

테이블 · 오브젝트역할
CSKS코스트센터 마스터 — 유효기간 · 책임자 · 사업영역 · 기능영역 · 코스트센터그룹
CSKT코스트센터 텍스트 — 언어별 단문/장문 명칭
코스트센터그룹(SETHIER 계층)그룹별 집계와 상세 다이얼로그의 그룹 내 비교에 활용
KS13 / KS01~KS03코스트센터 일괄 표시 및 생성·변경·표시 표준 화면

도입 시 확인이 필요한 부분

만료임박 판정 기준(90일)과 정보 미비 판정 대상 항목은 회사 운영 기준에 따라 달라질 수 있습니다. 코스트센터그룹 계층도 실제 SETHIER 구성에 맞춰 반영해야 하며, 책임자 정보는 사용자 마스터와 연계할지 코스트센터 마스터의 담당자 필드를 그대로 쓸지 도입 시 정하는 것을 권장합니다.

참고 CDS 뷰

운영 서비스로 연결할 때는 코스트센터 마스터와 텍스트를 조인한 뷰로 서빙하는 구성을 제안합니다.

@AbapCatalog.sqlViewName: 'ZICCTRMASTER'
@EndUserText.label: '코스트센터 마스터 현황 (참고 스케치)'
define view Z_I_CostCenterOverview
  as select from CSKS
    association [0..1] to CSKT as _Text
      on  _Text.KOKRS = CSKS.KOKRS
      and _Text.KOSTL = CSKS.KOSTL
      and _Text.DATBI = CSKS.DATBI
      and _Text.SPRAS = $session.system_language
{
  key CSKS.KOKRS,
  key CSKS.KOSTL,
      CSKS.BUKRS,
      CSKS.KHINR,
      CSKS.GSBER,
      CSKS.FKBER,
      CSKS.VERAK,
      CSKS.DATAB,
      CSKS.DATBI,
      _Text.KTEXT,
      _Text.LTEXT,
      _Text
      // 잔여일수·상태 신호등·정보미비 플래그는 소비 계층(앱)에서 조회기준일 기준으로 계산
}

매핑 이해를 돕기 위한 참고용 설계입니다. 실제 도입 시에는 운영 환경의 코스트센터그룹 계층과 책임자 연계 방식에 맞춰 조정합니다.

OpenUI5 구성

기능사용 컨트롤
화면 골격조회조건 영역 · 그룹/상태 집계 패널 · 마스터 그리드
조회조건sap.m.DatePicker · sap.m.Select · sap.m.Input · sap.m.CheckBox — 우측 끝에 조회 버튼
마스터 그리드sap.ui.table.Table — 컬럼·건수가 많은 마스터 조회에 적합
상세 표시sap.m.Table — 상세 다이얼로그 내 같은 그룹 코스트센터 비교
집계 표시sap.m.ObjectStatus 태그 — 그룹/상태별 건수, 클릭 시 필터 적용
포맷유효기간 · 잔여일수 · 상태 · 정보미비 포맷터

파일 구성

경로역할
index.htmlOpenUI5 부트스트랩 — sap_horizon · lodash · moment
Component.js디바이스 모델 초기화
manifest.json앱 디스크립터 — 앱 ID(zui5.ccmaster) · ko 로케일
view/Main.view.xml조회조건 + 그룹/상태 집계 + 마스터 그리드
view/DetailDialog.fragment.xml코스트센터 상세 + 같은 그룹 비교 다이얼로그
controller/Main.controller.js필터·정렬·판정 로직·집계·CSV
model/ModelMock.jslocaldata JSON 읽기(Promise)
model/formatter.js유효기간 · 잔여일수 · 상태 · 정보미비 포맷
i18n/i18n_ko.propertiesko 로케일 리소스
localdata/costcenters.json코스트센터 마스터 검증용 데이터(42건)
localdata/costcentergroups.json코스트센터그룹 마스터(5건)

운영 전환 시에는 ModelMock 내부만 실제 서비스 호출로 바꾸면 화면과 판정 로직은 그대로 씁니다.

검증 결과

화면 구성에 쓴 데이터는 코스트센터 42건이며, 그룹별로는 생산 9건 · 영업 9건 · 관리 8건 · 공통 8건 · 연구개발 8건, 상태별로는 활성 27건 · 만료임박 9건 · 만료 6건, 정보 미비 7건입니다.

검증 항목결과
그룹별 합계 · 상태별 합계 = 전체 건수통과
코스트센터 코드 중복 없음통과
경계값(잔여 0일·90일·경과 1일) 판정 정확도통과
정보 미비 판정 — 책임자/사업영역/기능영역 결측 전건 반영통과
조회조건 필드 Enter/변경 시 즉시 재조회통과
화면 렌더링 — 실브라우저에서 조회 → 상세 → 집계 확인 후 캡처4/4

코스트센터 코드·명칭·책임자는 모두 검증용 데이터입니다.

자주 묻는 질문

이 화면에서 코스트센터를 새로 만들거나 수정할 수 있나요?

아니요. 이 화면은 조회·검증 전용입니다. 마스터 생성이나 변경은 표준 트랜잭션(KS01·KS02)이 담당하고, 이 화면은 그 결과를 유효기간과 필수항목 관점에서 모아 보여줍니다.

'만료임박' 기준 90일은 고정값인가요?

현재 구성에서는 90일을 기준으로 판정합니다. 조회기준일 자체는 화면에서 자유롭게 바꿔 조회할 수 있어, 특정 시점을 기준으로 미리 점검하는 용도로도 쓸 수 있습니다.

'정보 미비'는 어떤 항목을 기준으로 판정하나요?

책임자(담당자)·사업영역·기능영역 세 항목 중 하나라도 비어 있으면 정보 미비로 표시합니다. 상태 신호등과는 별개로 함께 표시되므로, 만료임박이면서 동시에 정보 미비인 코스트센터도 한눈에 걸러낼 수 있습니다.

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

코스트센터 마스터 자체는 표준 트랜잭션이 생성·유지보수하고 CSKS·CSKT에 그대로 남습니다. 표준 실행은 KS13 같은 T-code가 담당하고, 이 화면은 그 데이터에 유효기간 잔여일수 판정과 필수항목 결측 점검, 그룹별 집계를 더해 조회·검증 관점을 확장한 것입니다.

코스트센터 마스터 점검, 지금 쓰는 SAP 위에서 확장해 보세요

유효기간이 끝난 코스트센터나 정보가 비어 있는 코스트센터를 결산 시점이 아니라 평소에 미리 걸러낼 수 있으면 마스터 데이터 품질 관리가 한결 수월해집니다. 현재 SAP 환경 기준으로 어떻게 적용되는지 함께 확인해 드립니다.

코스트센터 마스터CSKSCSKTKS13유효기간정보미비관리회계OpenUI5