
目录
SAP数据迁移失败,最主要的原因只有一个:计划是建立在业务以为自己的数据是什么样子的基础上,而不是建立在数据提取所显示的内容之上。本指南写给S/4HANA项目上的项目总监、数据负责人和财务负责人。内容包括迁移为什么会出问题、导致大多数切换失败的五个错误、一份可以照搬的模拟加载计划,以及2026年哪些SAP工具适合哪类工作。如果这周您只做一件事,就把客户、供应商和物料主数据完整提取一遍,亲自数一数记录条数。
一家制造企业为SAP实施花了18个月、450万美元。上线那天到了。每个人都紧张而兴奋。然后,数据迁移失败了。
没有一样东西是对的。客户数据缺失。库存数字有误。会计无法结账。CEO勃然大怒。
问题不在软件,也不在实施团队。失败出在业务以为自己的数据是什么样子,与数据实际是什么样子之间的差距。
SAP的数据模型不是一次平面导入。记录之间相互依赖。物料主数据有通用记录(MARA)、工厂数据(MARC)、估价数据(MBEW),如果使用MRP区域,还有MRP区域数据(MDMA)。只加载抬头而不加载与之相关的视图,物料是存在了,却无法在事务中使用。
S/4HANA还有自己的规则。客户和供应商是业务伙伴。遗留系统中的客户,会变成带有客户角色的业务伙伴,供应商则变成带有供应商角色的业务伙伴。信用额度、银行信息和税号都挂在这个业务伙伴之下。遗留系统能容忍存在缺口的记录,在这里会通不过校验。
然后是数据量。大多数企业对自己实际拥有的数据量之大感到震惊。一位客户以为自己有大约50,000条物料记录。把所有变体和工厂层级的记录都算上,数字接近500,000。按第一个数字制定的计划,经不住第二个数字。
- 按业务方以为的情况来计数
- 计划、工作量和时间表都按这个数字确定
- 每个变体和工厂层级的记录都计入
- 按估计数字制定的计划经不住它
那不是数据迁移问题,而是一个演变成了数据迁移问题的范围界定问题。
项目开始时的数据质量评估,通常是对数据的描述,而不是对数据的检查。财务总监说供应商主数据维护得很好。仓库经理说物料大体是干净的。这些都是印象。
第一次数据提取才会告诉您真相。本该在几年前清理却没有清理的供应商。早就停产却从未停用的物料。国家代码不一致的客户地址。通过电子转账付款的供应商缺少银行信息。
每一项都需要业务决策,而不是技术修复。只有应付账款部门能说出两个重复的供应商哪个才对。只有采购部门能说出哪些过时物料要冻结,哪些不带过去。这些决策需要时间,也需要了解这些数据的人。如果评估不是基于真实的数据提取,计划就建立在经不起数据检验的假设之上。一旦您有了真实的记录数,我的免费数据迁移估算器可以帮助估算工作量。
1. 把迁移当作后期的技术任务
迁移属于SAP Activate的每一个阶段。Explore阶段界定范围:对象、源系统、数据量和质量。Realize阶段构建模板并运行模拟加载。Deploy阶段运行最后的演练和切换加载。Run阶段在实际数据上对第一个期间的结账进行对账。
在Deploy阶段才开始迁移工作的项目,开始得晚了好几个月。本该在Realize阶段解决的质量问题,会在第一次模拟时冒出来,而这离切换只有几周。我的SAP时间表规划指南展示了迁移在整体计划中的位置。
2. 业务参与太少
迁移在执行上是技术性的,在决策上则是业务活动。IT无法生成重复供应商的清单。哪些客户账户作为活跃账户迁移,哪些作为历史保留,是财务决策。清理过时物料,需要采购、仓库和产品管理共同参与。
只用技术人员来配备迁移工作、把业务当作最后签字环节的项目,产出的数据可以加载进去,但从商业上看是错的。
3. 规划的模拟加载太少
一个运作良好的SAP数据迁移,在切换之前至少需要三次模拟加载,复杂的项目需要更多。只规划一两次的项目,是在为干净的数据和干净的映射做规划。这种情形很少见。更多的循环,并不说明迁移出了问题,而说明它规划得当。
4. 没有对试加载做对账
加载作业无错误完成,不等于校验。校验是把已加载的内容与预期的内容做比较:记录条数、财务合计数、未清项余额。然后再用流程冒烟测试,确认数据在事务中能用。
没有对账的试加载,照样浪费时间。它造成的缺口依然存在,到了下一次模拟,只不过更难追溯到原因。开始下一次之前,要先把每一次加载都对账。
5. 切换时的加载与演练不一致
切换迁移应当完全重复最后一次模拟:同样的提取脚本、转换逻辑、加载顺序、检查和时间安排。切换时的任何改动,都是在项目压力最大的时刻引入的未经测试的风险。
测试最少的部分,通常是增量。在最后一次模拟与切换之间,业务仍在新增供应商、修改订单、移动库存。要确定数据冻结日期,并把增量加载作为最后一次模拟的一部分来演练。
您的SAP实施是成是败,取决于您对数据迁移处理得好不好。就这么简单。
以这个循环结构为起点。每个循环都有目标和退出标准,对账签字之前,它就不算完成。
| 循环 | 目标 | 退出标准 | 负责人 |
|---|---|---|---|
| 模拟1 | 结构:每个对象按依赖顺序加载 | 按对象记录映射缺口和格式错误 | 数据迁移负责人 |
| 模拟2 | 质量:测试映射修复,并暴露数据问题 | 每个对象的错误率下降;清理决策已记录 | 数据管家 |
| 模拟3 | 业务规则:例外和边缘情形 | 管家接受每个领域中经过对账的样本 | 数据管家 |
| 模拟4 | 全量生产规模下的数据量和时间 | 全量加载在切换窗口内完成 | 切换经理 |
| 最后演练 | 切换的彩排,包括增量和冻结 | 条数和财务合计数已对账并签字 | 财务主管和数据负责人 |
围绕这份计划,有五件事会带来差别:
- 在Prepare阶段做一次完整提取。 是全部,而不是样本。对完整性、准确性、一致性和重复项做分析,然后根据结果估算清理工作量和时间表。
- 逐对象映射。 对每个对象(业务伙伴、物料、未清采购订单和销售订单、未清项、库存、固定资产),记录源到目标的字段、转换规则、校验检查和例外规则。
- 指定数据管家。 财务负责客户和供应商的财务数据。采购负责物料主数据。仓库负责库存。每个管家在每个循环之后,为自己的领域签字确认。
- 事先定义对账。 在第一次模拟之前,就商定哪些条数和合计数可以证明一次加载是正确的,这样到了切换时就没人再为此争论。
- 书面的切换顺序。 冻结、提取、转换、加载、校验、业务签字、上线与否决策(go/no-go)。与最后一次演练的顺序相同。
对于新的S/4HANA实施,SAP S/4HANA Migration Cockpit是SAP推荐的初始加载工具。自S/4HANA 2020起,它以Fiori应用Migrate Your Data的形式运行。事务码LTMC已弃用,现有的LTMC项目只能查看。该应用提供两种方式:使用暂存表迁移数据(由文件或您自己的工具填充),以及直接从SAP源系统迁移数据。本地部署和私有云的团队使用事务码LTMOM,即迁移对象建模器,来调整标准对象或构建自己的对象。Cockpit是为初始加载而建的,不适用于周期性接口或批量修改。
SAP Data Services是SAP的ETL平台。适用于大数据量、重度转换逻辑、多个源系统,或者您想要一个能在项目结束后继续使用的、可复用的数据质量框架。
第三方ETL工具,如Informatica、Talend或Microsoft SSIS,适用于组织已经拥有并具备相应技能的情况。
SAP Datasphere现已成为SAP Business Data Cloud的一部分,它不是迁移工具。它的位置是上线后的分析层。如果您把历史数据留在遗留系统里,又仍需对其出具报表,它就很重要。
对大多数标准实施来说,Migration Cockpit覆盖了大部分对象。高数据量、大量定制的遗留系统,或不寻常的源结构,通常需要Data Services或ETL工具与它配合使用。从ECC做转换,则是另一回事,详见我的ECC到S/4HANA迁移指南。
什么是SAP数据迁移?
SAP数据迁移,是在实施或转换中,从遗留系统提取数据,把它转换成适合SAP结构和规则的形式,再加载到SAP里。典型的对象有业务伙伴(客户和供应商)、带工厂数据的物料、未清采购订单和销售订单、库存余额、财务未清项和固定资产。它之所以难,是因为SAP强制执行依赖关系和校验规则,而遗留系统往往没有这些。
SAP数据迁移有哪些主要方式?
新建实施(绿地)把选定的主数据和未清项加载到全新的S/4HANA系统,把历史留在遗留系统或归档里。系统转换(棕地)就地转换现有的ECC系统及其历史数据。选择性数据转换介于两者之间,迁移选定的公司代码、对象或时间切片。选哪一种,取决于数据质量、对历史数据的要求,以及您想保留多少旧流程。
什么是SAP Migration Cockpit,什么时候该用它?
SAP S/4HANA Migration Cockpit是SAP推荐的、向S/4HANA做初始数据加载的工具,适用于所有版本。自S/4HANA 2020起,它以Fiori应用Migrate Your Data的形式运行;事务码LTMC已弃用。它提供预定义的迁移对象,在过账之前校验数据,并在字段级别报告错误。标准对象、正常数据量时用它。当数据量、转换逻辑或源结构超出模板的处理范围时,再加上SAP Data Services或其他ETL工具。
SAP数据迁移计划应安排几次模拟加载?
至少三次,最后一次是完整的切换演练。复杂的项目需要更多。在典型的计划里,第一次发现结构性的映射缺口。第二次测试修复,并暴露数据质量问题。第三次处理业务规则和边缘情形。最后一次完全重复切换,它的对账结果,成为上线当天的基线。
如何把客户和供应商迁移到SAP S/4HANA?
作为业务伙伴。在S/4HANA中,客户和供应商主数据通过业务伙伴维护,并附加客户角色和供应商角色。在新建实施中,Migration Cockpit通过它的业务伙伴对象加载它们。在从ECC转换时,必须在转换本身之前,先设置并运行客户与供应商集成。
是什么导致SAP数据迁移在切换时失败?
五种模式造成了大多数切换失败。模拟加载太少。切换顺序从未做过端到端测试。最后一次模拟之后遗留系统发生了变化,增量加载未经测试。对账缺口一直没有关闭。业务签字只依据抽查。“前1,000条记录看上去没问题”不算校验。上线需要对账过的条数和合计数。
下一步
您现在正在推进ERP项目吗?
如果这篇文章谈到的正是您当前正在推进的项目,那么一次30分钟的交流,往往比再花一周做内部分析走得更远。




