솔루션 홈
Budget Plan · 관리회계

SAP 예산계획 수립 — 부서별로 쓸 돈을 미리 나누기

부서와 비용 항목별로 연간 예산을 배분하고, 총액 한도 안에서 조정하며 저장하는 화면입니다.

예산은 나누는 일입니다. 전사 총액이 정해져 있고 그 안에서 부서와 항목으로 배분합니다.

한 부서를 늘리면 다른 부서를 줄여야 하는데, 총액이 보이지 않으면 조정이 어렵습니다. 배분하면서 잔여 한도가 즉시 보이도록 OpenUI5 화면으로 확장한 것이 이 앱입니다. 실제 구동 화면을 함께 공개합니다.

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

  • 예산 단위 — 회사코드(BUKRS)와 부서 · 코스트센터
  • 비용 항목 — 예산 배분 대상 항목
  • 기간 — 예산 연도와 월
  • 금액 — 항목·기간별 예산 금액
  • 저장 — 일괄 저장 결과(SavePlanData)
항목내용
업무 영역관리회계(CO) · 예산 수립
Namespaceco027_budgetplan
셸 구조조회조건 영역 + 예산 배분 그리드 + 한도 대비 요약
화면 수입력 화면 1개
데이터예산 항목과 저장 결과 등 다중 엔티티
성격입력형 — 저장 시 예산 테이블에 반영
주요 동작배분 · 한도 확인 · 일괄 저장
UI 테마sap_horizon 단일 적용

실제 화면 1종 둘러보기

회사코드·연도·부서로 예산을 불러오고 → 항목·기간별로 배분하며 → 잔여 한도를 확인하고 저장합니다.

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

Budget Plan — Main.view.xml
예산 배분 그리드와 한도
예산 배분 그리드와 한도 — 비용 항목을 행으로, 기간을 열로 두고 금액을 입력합니다. 상단에 총 한도와 배분액, 잔여 한도가 표시되고 입력할 때마다 갱신됩니다. 조회·초기화 버튼은 조회조건 영역 오른쪽 끝에 있습니다.

조작 방법

  1. 회사코드예산 연도를 고릅니다.
  2. 부서나 코스트센터를 정합니다. 예산 책임 단위입니다.
  3. 조회하면 기존 예산이 불러와집니다.
  4. 비용 항목별 금액을 기간에 맞춰 입력합니다.
  5. 잔여 한도를 확인하며 조정합니다. 음수가 되면 한도 초과입니다.
  6. 항목 간 금액을 옮겨 총액을 맞춥니다.
  7. 저장하면 예산이 확정되고 실적 통제 기준이 됩니다.

배분·검증 규칙

총 한도 안에서 항목과 기간으로 나눕니다.

배분액   = Σ(항목·기간별 예산)
잔여 한도 = 총 한도 − 배분액

잔여 > 0   →  아직 배분할 금액 있음
잔여 = 0   →  한도 정확히 소진
잔여 < 0   →  한도 초과 — 저장 차단 또는 경고

항목 합계 = Σ(기간별 금액)
기간 합계 = Σ(항목별 금액)

저장 검증  필수 항목 · 숫자 형식 · 한도 확인

잔여 한도를 상단에 고정하는 이유

예산 배분은 총액이 정해진 상태에서 나누는 작업입니다. 어느 항목을 늘리면 반드시 다른 항목을 줄여야 합니다. 잔여 한도가 항상 보이면 얼마를 더 쓸 수 있는지 알고 조정하게 되어, 초과한 뒤 되돌리는 일이 줄어듭니다.

예산 수립 4단계

단계내용결과
① 총액 결정전사 예산 규모 확정총 한도
② 부서 배분부서별 한도 배정부서 한도
③ 항목 배분비용 항목과 기간으로 나눔상세 예산
④ 확정승인 후 통제 기준 반영집행 통제

입력 항목

항목필수설명
회사코드 BUKRS필수대상 법인
예산 연도필수수립 대상 연도
부서 · 코스트센터필수예산 책임 단위
비용 항목필수배분 대상 항목
기간별 금액필수월별 예산 금액
비고선택산출 근거

결과 컬럼

컬럼의미 · 표시
부서 · 코스트센터예산 단위
예산 연도대상 연도
비용 항목배분 대상
월별 금액기간별 예산
항목 합계연간 항목 예산
기간 합계월별 전체 예산
총 한도배분 가능 총액
배분액 · 잔여 한도한도 대비 상황. 음수면 경고 색
셀 상태신규 / 수정 / 저장됨
저장 결과건수와 메시지

SAP 표준 기능 매핑

표준역할이 화면에서의 확장
KP06코스트센터 원가요소 계획항목별 예산 입력
KO22내부오더 예산 배정오더 예산
CJ30프로젝트 예산 배정WBS 예산
BPGE · BPJA예산 데이터저장 대상
CSKS코스트센터 마스터예산 단위

도입 시 확인이 필요한 부분

예산을 코스트센터에 둘지 내부오더에 둘지 정해야 합니다. 경상 비용은 코스트센터, 프로젝트성 지출은 내부오더나 WBS 가 적합합니다. 또 예산 가용성 검사를 켜야 초과 집행이 실제로 통제됩니다.

참고 CDS 뷰

@AbapCatalog.sqlViewName: 'ZCBUDGETPLAN'
@EndUserText.label: '예산계획 (Z)'
define view Z_C_BUDGET_PLAN
  as select from zbudget_plan as Budget
    left outer join cskt as CCtrText on Budget.kostl = CCtrText.kostl
                                   and CCtrText.spras = 'K'
{
  key Budget.bukrs,
  key Budget.gjahr as BudgetYear,
  key Budget.kostl as CostCenter,
  key Budget.kstar as CostElement,
  key Budget.poper as Period,
      CCtrText.ktext as CostCenterText,
      Budget.amount  as BudgetAmount,
      Budget.waers,
      Budget.changed_by,
      Budget.changed_at
      // 총 한도는 상위 배정 테이블에서, 잔여 = 한도 − 배분 합계
}

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

OpenUI5 구성

기능사용 컨트롤
화면 골격sap.m.Page + 조회조건 · 한도 요약 · 배분 그리드
조회조건sap.m.Select — 우측 끝에 조회
한도 요약총 한도 · 배분액 · 잔여를 상단 고정
배분 그리드sap.ui.table.Table — 셀 인라인 편집
잔여 표시sap.m.ObjectNumber — 음수 경고 색
이벤트onPAI 단일 진입점, fcCode 로 분기

셀 상태를 남기는 이유

예산 배분은 여러 셀을 오가며 조정합니다. 저장 전에 무엇을 바꿨는지 확인하려면 표시가 필요합니다. 변경된 셀만 훑어보면 의도하지 않은 수정이 있었는지 잡을 수 있습니다.

파일 구성

경로역할
manifest.json앱 디스크립터 — ko 로케일 · sap_horizon
view/Main.view.xml조회조건 · 한도 요약 · 배분 그리드
controller/Main.controller.js조회 · 인라인 편집 · 한도 계산 · 저장
model/ModelMock.jslocaldata JSON 읽기(Promise)
js/formatter.js금액 · 잔여 한도 색 포맷터
localdata/HeadsDraft.json예산 데이터
localdata/SavePlanData.json저장 결과
localdata/ZFCMC_F02_C018*.json예산 엔티티

검증 결과

검증 항목결과
항목 합계 = 기간별 금액 합계 (전 항목)통과
배분액 = 모든 셀 합계통과
잔여 한도 = 총 한도 − 배분액통과
입력 시 한도 요약이 즉시 갱신통과
필수 항목 미입력 시 저장 차단통과
XML · JSON 전체 파싱오류 0건
화면 렌더링 — 실브라우저 배분·저장 실동작 후 캡처통과
테마 런타임 확인sap_horizon

자주 묻는 질문

한도를 넘으면 저장이 막히나요?

설정하기 나름입니다. 막으면 통제가 확실하지만 조정 과정이 불편합니다. 경고만 띄우고 승인 단계에서 걸러내는 방식도 씁니다.

사업계획과 예산계획은 무엇이 다른가요?

사업계획은 매출과 손익을 포함한 사업 전망이고, 예산계획은 쓸 돈의 배분입니다. 사업계획의 비용 부분이 예산으로 이어지는 구조가 일반적입니다.

기중에 예산을 바꿀 수 있나요?

증액이나 이관으로 조정합니다. 다만 변경 이력을 남겨야 왜 바뀌었는지 설명할 수 있고, 승인 절차도 함께 두는 것이 안전합니다.

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

예산 데이터는 표준 예산 테이블에 저장되고 가용성 검사가 이를 읽습니다. 이 화면은 배분 과정에서 잔여 한도를 즉시 보여 주는 확장입니다.

예산 수립, 지금 쓰는 SAP 위에서 확장해 보세요

잔여 한도가 보이면서 나누면 초과한 뒤 되돌릴 일이 없습니다. 현재 SAP 환경 기준으로 어떻게 적용되는지 함께 확인해 드립니다.

예산계획예산 수립부서 예산비용 항목한도배분OpenUI5