솔루션 홈
관리회계

SAP 롤링포캐스트 버전 대사 점검 — 개정을 거듭할수록, 최초계획과 최신포캐스트는 여전히 맞물려 있는가

분기마다 쌓이는 개정액을 최초계획에 더해 최신포캐스트와, 다시 실적과 대사합니다

롤링포캐스트는 최초에 세운 계획(BUD)을 분기마다 새로 들여다보고 FC1, FC2, FC3, FC4로 개정해 나가는 방식입니다. 문제는 개정을 거듭할수록 "지금 보고 있는 최신포캐스트가 최초계획에서 어떤 개정들을 거쳐 여기까지 왔는지"를 스프레드시트만으로 추적하기 어려워진다는 점입니다. 개정 건이 누락되거나 중복 반영되면 최신포캐스트 숫자와 실제 근거가 슬며시 어긋납니다.

코스트센터·계정과목별로 최초계획부터 최신포캐스트까지의 버전 이력을 표준 계획/실적 집계 구조 위에서 관리하고, 버전 전환 구간별 개정액을 누적해 최신포캐스트와 자동으로 대사하는 화면을 OpenUI5로 확장했습니다. 실제 구동 화면 4종을 함께 공개합니다.

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

  • 계획 데이터 — 코스트센터 계획/실적 집계 표준 구조(원가요소별 월별 금액)를 그대로 사용
  • 표준 화면 — 코스트센터 계획 입력(KP06/KP26) · 계획 버전 복사(KSBP) · 계획/실적 비교 리포트(S_ALR_87013611)
항목내용
업무 영역관리회계(CO) · 사업계획·실적
관련 기준서- (대상 영역: 사업계획·실적 - 롤링포캐스트 관리)
Namespacezui5.rollfcst
셸 구조조회조건 영역(우측 조회) + 탭(라인 상세/개정 이력/대사 결과), 상세 Dialog
화면 수조회 화면 1개(탭 3개) + 상세 다이얼로그
SAP 표준 T-codeKP06 · KSBP · S_ALR_87013611 · KSB1 (§7 참고)
성격조회·집계·대사형 — 최종 관리회계 판단은 회사·담당 부서 몫
UI 테마sap_horizon 단일 적용

실제 화면 4종 둘러보기

회계연도·코스트센터·버전·계정과목을 넣고 조회하면 라인 상세가 뜹니다 → 개정 이력 탭에서 버전 전환 구간별 개정액을 확인 → 대사 결과 탭의 행을 클릭하면 최초계획부터 최신포캐스트까지의 대사 상세가 다이얼로그로 열립니다.

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

Main.view.xml
롤링포캐스트 관리 메인화면 — 조회조건과 라인 상세
라인 상세 — 조회조건 영역 오른쪽 끝에 조회·초기화 버튼이 있고, 버전별 연간 소계와 실적 월별 라인을 함께 확인할 수 있습니다.
개정 이력
개정 이력 탭 — 버전 전환 구간별 개정액과 개정사유
개정 이력 — BUD→FC1→FC2→FC3→FC4 전환 구간별 개정액과 개정사유·개정일을 보여줍니다.
대사 결과
대사 결과 탭 — 최초계획·누적개정액·최신포캐스트·실적 대사
대사 결과 — 코스트센터·계정과목별로 최초계획+누적개정액=최신포캐스트 여부와 실적 대비 차이·점검결과를 보여줍니다.
대사 상세 다이얼로그
행 클릭 시 뜨는 대사 상세 다이얼로그
대사 상세 — 행을 클릭하면 최초계획부터 최신포캐스트, 실적까지 한 번에 비교하는 다이얼로그가 열립니다.

조작 방법

  1. 회계연도 · 코스트센터 · 버전 · 계정과목을 지정합니다.
  2. 입력 필드에서 Enter 키를 누르거나 조회조건 영역 오른쪽 끝의 조회 버튼을 누르면 재조회됩니다. 초기화 버튼은 조건을 비웁니다.
  3. 버전을 "전체"로 두면 버전 조건 없이 조회합니다.
  4. 대사 결과 탭의 행을 클릭하면 대사 상세 다이얼로그가 열립니다.
  5. 대사 결과 탭 우측 하단의 CSV 내려받기 버튼으로 현재 조회된 목록을 내려받을 수 있습니다.

포캐스트 대사 판정 로직

코스트센터·계정과목별로 등록된 버전별 금액을 바탕으로 누적개정액을 계산하고, 최초계획에 더한 값이 최신포캐스트와 일치하는지 대사합니다.

판정 조건결과 상태사용자 조치
최초계획(BUD) + 누적개정액 = 최신포캐스트 (오차 0.01 미만)정상추가 조치 불필요
최초계획(BUD) + 누적개정액 ≠ 최신포캐스트확인 필요개정 이력 탭에서 해당 코스트센터·계정과목의 개정 건을 재확인

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

포캐스트 개정 금액은 관리회계 판단의 결과물이지 이 화면이 만들어내지 않습니다. 이 화면은 등록된 버전 이력을 바탕으로 정합성을 점검하는 도구이며, 개정 사유의 타당성에 대한 최종 판단은 회사와 담당 부서가 합니다.

버전 롤링 처리 단계

단계내용
1단계최초계획(BUD) 등록
2단계분기별 포캐스트 개정(FC1→FC2→FC3→FC4) 등록 및 개정사유 기록
3단계버전 전환 구간별 개정액을 개정 이력으로 누적
4단계누적개정액을 최초계획에 더해 최신포캐스트 산출 및 대사
5단계최신포캐스트와 실적을 비교해 차이금액·차이율 산출
최초계획(BUD) + 누적개정액 = 최신포캐스트(FC4)
실적 - 최신포캐스트 = 차이금액
차이율 = 차이금액 ÷ 최신포캐스트

조회조건

필드필수설명
회계연도선택4자리 연도(미입력 시 전체)
코스트센터선택미입력 시 전체
버전선택전체/BUD/FC1/FC2/FC3/FC4/ACT(전체 선택 시 조건 미전달)
계정과목선택미입력 시 전체, Enter 키로 바로 조회

결과 컬럼

컬럼설명
회계연도 · 코스트센터 · 계정과목기준 조직·계정 정보
버전 · 기간(월)BUD·FC1~FC4·ACT 구분과 연간/월별 구분
개정액 · 개정사유 · 개정일버전 전환 시 변경된 금액과 사유·일자
최초계획 · 누적개정액 · 최신포캐스트대사식 좌변·우변 구성 요소
실적 · 차이금액 · 차이율 · 점검결과최신포캐스트 대비 실적 차이와 정상/확인 필요 판정

SAP 표준 기능 매핑

SAP 표준 T-code연관 기능
KP06 / KP26코스트센터 계획 입력 — 최초계획(BUD) 참고
KSBP계획 버전 복사 — 버전 간 개정 이력 참고
S_ALR_87013611코스트센터 계획/실적 비교 리포트 — 대사 결과 구성 참고
KSB1코스트센터 실제 라인아이템 — 실적 집계 참고

요구사항 매핑표

대상 영역요구사항대응 기능원천 데이터
사업계획·실적(롤링포캐스트)버전 간 정합성 확인 - 최초계획에서 최신포캐스트까지 개정액이 빠짐없이 반영되었는지대사 결과 탭(최초계획+누적개정=최신포캐스트)코스트센터 계획/실적 집계
사업계획·실적(롤링포캐스트)최신포캐스트 대비 실적 차이 모니터링차이금액·차이율 컬럼코스트센터 실제 라인아이템

도입 시 확인이 필요한 부분

버전 개수(BUD~FC4)와 개정 주기는 회사의 롤링포캐스트 운영 프로세스에 맞춰 조정해야 합니다.

참고 CDS 뷰

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

@AbapCatalog.sqlViewName: 'ZRFCSTLINE'
define view Z_I_RollingForecastLine
  as select from cosp
    association [1..1] to csks as _Ccenter on cosp.kostl = _Ccenter.kostl
    association [1..1] to skat as _Account on cosp.kstar = _Account.saknr
{
  key cosp.gjahr   as FiscalYear,
  key cosp.kostl   as CostCenter,
  key cosp.versn   as Version,
  key cosp.kstar   as GLAccount,
      _Ccenter.ktext as CostCenterName,
      _Account.txt50 as GLAccountName,
      cosp.wkg001 + cosp.wkg002 + cosp.wkg003 + cosp.wkg004 +
      cosp.wkg005 + cosp.wkg006 + cosp.wkg007 + cosp.wkg008 +
      cosp.wkg009 + cosp.wkg010 + cosp.wkg011 + cosp.wkg012 as AnnualAmount
}
group by cosp.gjahr, cosp.kostl, cosp.versn, cosp.kstar
// 개정 이력(버전 전환 구간별 개정액)은 별도 엔티티셋으로 관리

OpenUI5 구성

기능사용 컨트롤
화면 골격sap.m.Page + 조회조건 Toolbar + IconTabBar(3탭)
조회조건sap.m.Input · sap.m.Select — 우측 끝에 조회 버튼, Enter 키로 즉시 재조회
라인 상세 · 개정 이력 · 대사 결과sap.ui.table.Table(각 엔티티셋에 개별 바인딩) — 대사 결과 행 클릭 시 상세 다이얼로그
상세sap.m.Dialog — 선택 행의 바인딩 컨텍스트를 그대로 사용
공통 처리전역 오류 처리기(ErrorHandler) — 메타데이터·요청 실패를 메시지로 표시

서비스 경로는 manifest.jsondataSources 에 상대 경로로 선언한 OData V2 모델을 그대로 바인딩하며, 조회조건은 sap.ui.model.Filter 로 조립해 $filter 로만 전달합니다. 버전을 "전체"로 둘 때는 필터를 아예 생성하지 않습니다. 총건수는 $inlinecount=allpages 로 확인합니다.

파일 구성

경로역할
index.htmlOpenUI5 부트스트랩 — sap_horizon
Component.js컴포넌트 초기화, 전역 오류 처리기 연결
manifest.json앱 디스크립터 — zui5.rollfcst · OData dataSources · ko 로케일
view/Main.view.xml조회조건 + 탭(라인 상세/개정 이력/대사 결과)
view/DetailDialog.fragment.xml대사 상세 다이얼로그
controller/Main.controller.js조회·필터 조립·다이얼로그 로직
controller/BaseController.js공통 처리(CSV 내려받기 등)
model/ErrorHandler.js전역 오류 처리
model/formatter.js금액·차이율·점검상태 서식
i18n/i18n_ko.propertiesko 로케일 리소스

검증 환경 구성 상세는 이 글에서 다루지 않습니다. 운영 전환 시에는 화면과 판정 로직은 그대로 두고 데이터 계층만 실제 서비스 호출에 맞추면 됩니다.

검증 결과

화면 구성에 쓴 데이터는 최초계획·누적개정액·최신포캐스트의 관계가 항상 검증되도록 구성했습니다.

검증 항목결과
대사식 전수 검증(최초계획+누적개정액=최신포캐스트, 개정이력 합계=누적개정액)통과(차이 0건, 의도적 예외 2건 별도 표시)
표시 금지 검사 — 커스텀 프로그램ID·앱 식별자·출처 표현 검출0건
화면 렌더링 — 실브라우저에서 조회 → 탭 전환 → 행 클릭 상세까지 실동작 후 캡처4/4
조회 버튼 위치 · sap_horizon 테마 적용 · Enter 키 조회확인
OData 계약 — 동사 경로 미사용, $filter·$orderby·$top·$inlinecount 로만 조회조건·페이징 전달확인

화면 수치는 모두 검증용으로 구성한 가상 데이터입니다.

자주 묻는 질문

이 화면은 언제부터, 어떤 범위에 사용할 수 있나요?

별도의 법정 시행일은 없습니다. 사내 롤링포캐스트(분기별 포캐스트 개정) 프로세스를 운영하는 코스트센터 단위 관리회계 계획 데이터를 대상 범위로 합니다.

"확인 필요" 표시는 오류가 확정되었다는 뜻인가요?

아니요. 이 화면은 분류·집계·대사를 돕는 조회·점검 도구이며, 표시된 차이의 원인 확정과 최종 관리회계 판단은 회사와 담당 부서가 합니다.

화면에서 보이는 데이터는 실제 운영 데이터인가요?

아니요. 이 글과 화면 캡처에 쓰인 수치는 화면 동작과 대사 로직을 확인하기 위해 구성한 검증용 샘플 데이터이며, 실제 코스트센터·계정 데이터가 아닙니다.

최신포캐스트는 어떻게 계산되나요?

최초계획(BUD)에 버전 전환 구간(BUD→FC1→FC2→FC3→FC4)별 개정액을 모두 더한 누적개정액을 합산해 산출합니다. 이 합계가 실제 최신포캐스트 값과 다르면 "확인 필요"로 표시됩니다.

롤링포캐스트, 버전이 쌓이기 전에 대사 구조부터 먼저 잡아보세요

버전 전환마다 개정액을 누적해 두면, 최신포캐스트가 어디에서 왔는지 언제든 되짚어볼 수 있습니다. 현재 SAP 환경 기준으로 어떻게 적용되는지 함께 확인해 드립니다.

관리회계롤링포캐스트코스트센터 계획버전 관리예산 대사OpenUI5