EBS 预算主数据 → Fusion BC 预算主数据完整映射实施方法论
适用于:迁移蓝图、ETL 规范、主数据梳理工作包、业务调研问卷、数据转换方案 整体思路:先对象对齐 → 业务规则对齐 → 字段级映射 → 清洗转换规则定义 → 加载顺序 → 校验方案 → 迁移风险规避
前置基础认知(所有映射工作起点)
- EBS 核心对象:
GL_BUDGETS(预算头)、GL_BUDGET_VERSIONS(版本)、预算控制组GL_BUDGET_CONTROL_GROUPS、允许预算科目GL_BUDGET_ASSIGNMENTS - Fusion BC 核心对象:
Control Budget(控制预算)、Budget Version(预算版本)、Budget Control Rules(控制规则)、预算维度过滤器 - 本质鸿沟:
- EBS:预算依附分类账 + CCID(科目组合)单一体维度模型
- Fusion:预算独立多维模型,预算与总账松耦合,支持跨分类账预算池
第一阶段:业务层面映射对齐(映射前必须完成,否则字段映射无效)
步骤 1:盘点 EBS 预算现状(调研输出清单)
- 所有在用预算
GL_BUDGETS:预算名称、归属 LEDGER_ID、状态、有效起止期间 - 是否启用预算版本(绝大多数 EBS 客户未启用)
- 预算控制策略清单:严格控制 / 预警 / 不控制;是否启用 PO 承付、发票占用
- 预算范围:哪些 CCID 允许做预算(GL_BUDGET_ASSIGNMENTS)
- 预算类型区分:运营预算、资本预算、项目预算(EBS 无标准字段,靠命名区分)
- 是否使用独立预算日历
GL_BUDGET_PERIODS
步骤 2:制定 Fusion 目标架构决策(关键决策点,写入蓝图)
| 业务决策项 | 可选方案 | 映射影响 |
|---|---|---|
| Control Budget 和 EBS 预算 1:1 还是合并 | 方案 1:1:1 迁移;方案 2:同集团多 EBS 预算合并为一个 Fusion 控制预算 | 1:1 最简单;合并则必须增加预算维度区分原有预算 |
| 是否启用多版本 | 方案 1:仅单一已发布版本(兼容 EBS 习惯);方案 2:启用多版本管理 | EBS 预算调整 = 新增预算日记账;Fusion 调整使用 Budget Transaction,不要频繁新建版本 |
| 预算维度设计 | 是否拆分部门、项目、支出类型为独立预算维度 | EBS 全部压在 CCID,必须拆段映射 |
| 预算日历 | Fusion 强制复用总账会计日历 | 若 EBS 使用独立预算日历,必须调整预算起止区间适配总账日历 |
| 跨分类账预算池 | 是否启用 Fusion 账簿集绑定多个分类账 | EBS 一个预算只能归属单个分类账 |
推荐标准落地策略(绝大多数项目采用) EBS 预算1:1 映射为 Fusion Control Budget;只维护 1 个正式发布版本「Original Budget」;预算调整使用预算事务,不新增版本。
第二阶段:业务对象层级映射(顶层蓝图)
| EBS 业务对象 | Fusion 目标对象 | 映射基数 | 转换简要规则 |
|---|---|---|---|
| GL_BUDGETS 预算定义 | Control Budget(控制预算) | 1:1 | EBS 一条预算头 → 一条 Fusion 控制预算 |
| GL_BUDGET_VERSIONS | Budget Version | 1:0 /1:1 | EBS 未启用版本 → 统一创建 1 套「Original Budget」;启用版本则一一对应 |
| GL_BUDGET_CONTROL_GROUPS+GL_BC_OPTIONS | Budget Control Rules | 1:N | 一套 EBS 控制策略,可以转化为多条 Fusion 维度控制规则 |
| GL_BUDGET_ASSIGNMENTS(允许预算 CCID) | Budget Dimension Filter 维度过滤器 | N:1 | 离散 CCID 清单 → 梳理为维度区间规则,禁止逐条导入 |
| GL_BUDGET_ENTITIES | 无对应对象 | 0:0 | 废弃,不迁移 |
| GL_BUDGET_PERIODS | 不迁移独立日历 | — | 使用 Control Budget 起止期间限定生效区间 |
第三阶段:字段级标准映射矩阵(可直接复制进 ETL 文档)
3.1 GL_BUDGETS → Control Budget
| 源表字段 | 目标对象属性 | 转换逻辑 | 备注 |
|---|---|---|---|
| BUDGET_ID | ExternalBudgetId(外部参考字段) | 直接赋值 | 不做主键,仅用于溯源对账 |
| BUDGET_NAME | BudgetName | 直接复制 | 统一清理特殊字符 |
| BUDGET_SHORT_NAME | BudgetShortName | 直接复制 | |
| STATUS_CODEO = 打开 / C = 关闭 | StatusCode | O→OPEN;C→CLOSED | Fusion:OPEN 允许预算交易;CLOSED 冻结预算 |
| LEDGER_ID | LedgerId / LedgerSetId | 单分类账使用 LedgerId;集团统一预算池使用 LedgerSetId | EBS 限制一个预算只能绑定单个账簿,Fusion 突破该限制 |
| START_PERIOD_NAMEEND_PERIOD_NAME | StartPeriodNameEndPeriodName | 直接映射 | Fusion 校验期间必须属于分类账会计日历 |
| DESCRIPTION | Description | 直接复制 |
3.2 GL_BUDGET_VERSIONS → Budget Version
| 源字段 | 目标属性 | 转换规则 |
|---|---|---|
| BUDGET_VERSION_ID | ExternalVersionId | 溯源字段 |
| BUDGET_ID | BudgetId | 通过 EBS BUDGET_ID 关联找到 Fusion Control Budget 内部主键 |
| VERSION_NAME | VersionName | 无版本场景统一赋值:Original Budget |
| STATUS | VersionStatus | EBS 无草稿概念;迁移后初始状态设置PUBLISHED |
⚠️重要约束:Fusion 只有状态 = PUBLISHED 的版本,才参与预算控制计算;DRAFT 版本仅用于编制,不生效。
3.3 EBS 预算控制配置 → Budget Control Rules
EBS 没有一张完整表存储全部控制策略,需要组合多张表 + 系统配置文件提取业务参数数据源:GL_BC_OPTIONS+GL_BUDGET_CONTROL_GROUPS
| EBS 业务配置项 | Fusion 目标属性 | 映射转换 |
|---|---|---|
| CONTROL_LEVEL(ABSOLUTE/WARNING/NONE) | ControlLevel | 语义完全对齐 |
| 是否启用 PO 预留(RESERVE_PO_FLAG) | Consumption Stage = Commitment | 勾选则纳入承付占用计算 |
| 是否启用发票预留 | Consumption Stage = Expenditure | |
| 预算控制粒度 | Dimension Granularity | EBS 固定 CCID 层级;Fusion 自定义维度层级(部门 + 账户等) |
| 超额容忍比例 / 金额 | Tolerance Amount/Tolerance % | EBS 大多客户化开发,需要业务重新确认容忍规则 |
3.4 GL_BUDGET_ASSIGNMENTS(允许预算 CCID)→ Fusion 维度过滤器
❌禁止方案:逐条导入 CCID 明细
EBS 存储海量离散科目组合,直接平移会造成 Fusion 性能极差。
✅标准映射转换流程
- 抽取全部
CODE_COMBINATION_ID对应的弹性域段值(公司、部门、账户…) - 按各段值聚合,归纳出连续区间、有效段值列表
- 在 Fusion Control Budget 下创建【维度过滤规则】:
示例:账户段 500000~599999;成本中心 001~999
- 过滤规则作用:只有满足维度条件的交易才参与预算校验
特例:无法归纳区间、极少量零散 CCID → 使用例外清单维护(尽量避免)
第四阶段:主数据加载先后顺序(强依赖,ETL 执行顺序不可颠倒)
Step1:Control Budget(控制预算头)【顶层】 Step2:Budget Version(预算版本,依赖Control Budget内部ID) Step3:Budget Control Rules(控制规则,依赖Control Budget) Step4:配置预算维度过滤器(依附Control Budget)Fusion 加载方式:使用 REST API,不支持直接操作物理表 API 清单回顾
# 控制预算 /fscmRestApi/resources/11.13.18.05/controlBudgets # 预算版本 /fscmRestApi/resources/11.13.18.05/budgetVersions # 预算控制规则 /fscmRestApi/resources/11.13.18.05/budgetControlRules第五阶段:数据校验规则(映射完成后的对账标准)
5.1 主数据条数校验
- EBS 启用预算数量 = Fusion Control Budget 成功加载数量
- 版本数量与业务方案保持一致
5.2 属性校验
- 预算状态(打开 / 关闭)映射无误
- 预算起止期间落在分类账会计日历内
- 控制策略:严格 / 警告和源系统业务规则一致
5.3 范围校验
选取典型 CCID,转换为 Fusion 维度组合,验证是否在维度过滤器范围内
第六阶段:高频映射痛点 & 解决方案(直接写入迁移风险章节)
痛点 1:EBS 预算依赖独立预算日历,和总账日历不一致
解决方案: 废弃独立预算日历,重新对齐预算起止期间至 Fusion 总账标准会计日历;业务确认预算区间调整方案。
痛点 2:EBS 所有预算维度挤压在 CCID 弹性域,没有独立项目、支出类型维度
解决方案: 前置开展弹性域段拆分设计,把 CCID 各段映射为 Fusion 预算维度;预算不再绑定完整科目组合。
痛点 3:大量 EBS 客户从未启用 GL 预算版本
解决方案: 不迁移空版本,统一自动创建一套「Original Budget」作为唯一生效版本,所有预算调整通过 Budget Transaction 实现。
痛点 4:EBS 一个预算只能归属一个分类账,客户希望 Fusion 实现跨账簿统一预算池
解决方案: 多个 EBS 预算合并为单一 Control Budget,使用【预算维度】区分原账簿,绑定 Fusion 账簿集 (LedgerSetId)。
痛点 5:GL_BUDGET_ASSIGNMENTS 几十万条离散 CCID,无法归纳区间
解决方案: 推动业务梳理管控口径,重新定义预算允许范围规则;少量例外通过维度排除规则处理。
第七阶段:交付物清单(一套完整映射工作包)
- 《预算主数据业务对象对齐文档》
- 《ETL 字段映射矩阵 Excel》(源表、源字段、目标对象、目标属性、转换逻辑、依赖、清洗规则)
- 《预算维度转换规则说明书》(CCID 弹性域→Fusion 预算维度)
- 《主数据加载顺序 & API 调用规范》
- 《主数据校验对账脚本与验收标准》