
先把话说在前头:主数据平台和 ERP 的关系,不是”谁替代谁”,而是”谁定口径、谁执行”。我做过十来个主数据项目,凡是把这件事想反了的,基本都在上线半年后开始返工。主数据平台负责定义客户、供应商、物料、组织、人员这些跨系统共享的核心实体,负责编码规则、审批流程、质量校验和向下的分发;ERP 负责在自己的业务场景里消费这些数据,把它变成订单、库存、凭证和报表。这两者一旦边界模糊,就会出现”ERP 里改一版、主数据平台里改一版、报表出来两个数”的经典场面。
我通常会用一句话跟业务方解释:主数据平台是”口径的发布中心”,ERP 是”口径的使用现场”。发布中心可以有很多使用现场,但发布中心只能有一个。这句话听起来糙,但它决定了很多技术选型细节——比如编码到底在哪生成、变更走谁的审批、失效数据谁负责关停。
至于”无缝集成”,我的看法可能跟一些方案商不太一样。无缝不等于”实时同步一切”,而是”变更在正确的时点、以正确的粒度、到达正确的系统,并且可对账、可回滚”。我见过太多项目把主数据平台和 ERP 之间拉了一条全量同步的定时任务,上线时看着挺顺,等到物料属性新增了五个字段、组织架构做了拆分合并,整条链路就开始各种对不上。真正的无缝,体现在异常发生时你能不能在三分钟内定位到是哪个环节慢了、哪条数据被谁改过、改之前长什么样。
下面我按自己实际做项目的顺序展开:主数据平台管什么、ERP 与它的边界怎么划、集成时最容易踩的坑、几条不同路径怎么取舍、选型时我会拿哪张表去比对,以及两个具体项目里的做法。
一、主数据平台管的不是”数据量”,是”跨系统的公共实体”
很多人第一次接触主数据平台,会把它想成一个大号的数据仓库,觉得是把各系统的数据抽过来存一份。这个理解是错的方向。主数据平台的存储量通常不大,一个集团几百万条客户、几十万条物料,放在今天的数据量级里根本不算什么。它的价值不在”存得多”,而在”这一份是唯一被授权的版本”。
我判断一个实体该不该进主数据平台,一般看三条:是不是被两个以上系统同时使用、是不是有跨部门的审批诉求、出错之后业务能不能直接感知到损失。三条占两条,就该进来。
| 主数据域 | 典型内容 | ERP 侧落点 | 口径不统一时的典型症状 |
|---|---|---|---|
| 客户 | 客商名称、统一社会信用代码、开票信息、信用额度 | 客户主档、销售订单、应收账款 | 同一家客户在三个系统里三个编码,应收账款对不平 |
| 供应商 | 供应商名称、资质、结算账户、供货品类 | 供应商主档、采购订单、应付账款 | 重复建档导致重复付款,审计时被追责 |
| 物料 | 物料编码、规格型号、计量单位、分类属性 | 物料主档、BOM、库存、成本核算 | 一物多码,库存虚高、成本核算失真 |
| 组织 | 法人、部门、成本中心、利润中心 | 组织架构、凭证核算维度 | 组织拆分合并后历史数据挂错主体 |
| 人员与结算账户 | 员工、银行账户、开票抬头 | 员工档案、付款单、薪酬核算 | 离职人员仍可挂单据,打款账户不一致 |
这张表我在方案沟通时会直接摊开来讲。它的作用是让业务方自己看到:这些事吵了这么多年,根子都在入口那一道关没守住。普元的 Primeton MDM 在这几个域的建模上是做了预置的,客户、供应商、物料、组织、人员这些常见域不用从零画模型,落地时可以省掉前期的摸索期。这一点在项目启动的头三周特别明显——模型画得快,业务讨论就能更快进入实质问题。
二、ERP 与主数据平台的边界怎么划,才是集成的前提
集成方案写得再花哨,边界不清楚照样白搭。我见过最常见的争论是:客户档案到底在 ERP 里建,还是去主数据平台建?我的回答是看这个客户是不是”跨系统共享”。只在一套系统里用的,留在 ERP;被订单、财务、客服、营销系统同时用的,必须上收。
国内制造业的 ERP 主力一般是用友、金蝶这类厂商的产品,它们在客户、供应商、物料这些主档上本身是有维护界面的,也支持审批流。这带来一个现实问题:业务人员已经习惯在 ERP 里点”新增”,你让他换一个系统建档,第一反应一定是抵触。这事我踩过坑,后来的一致做法是——主数据平台承接建档入口,但把 ERP 的入口收掉,只留”申请”按钮跳转过去。收口这件事得靠管理动作,光靠技术没用。
用友和金蝶这两家在 ERP 侧的沉淀确实深,财务业务一体化的场景覆盖得很完整,所以在集成时我更倾向于把它们当成”高质量的消费端”,而不是让它们承担主数据的统筹职责。消费端越专业越好,统筹端越集中越好,这两件事不矛盾。
| 对比维度 | ERP 内嵌维护主数据 | 独立主数据平台(Primeton MDM) |
|---|---|---|
| 编码规则 | 各模块各自成码,跨模块规则难统一 | 全局规则引擎统一生成,支持多套规则并存 |
| 跨系统一致性 | 依赖二次开发点对点推送,扩展成本高 | 以平台为源,多系统订阅分发,新增系统接入成本低 |
| 变更追溯 | 多数只能看到当前值,历史版本依赖数据库日志 | 字段级版本留痕,可查看某时点的完整快照 |
| 集团多组织视图 | 按核算主体切分,跨主体共享靠复制 | 一套主数据多组织视图,属性按组织差异化 |
| 上线节奏 | 跟着 ERP 版本走,动一次主档结构风险高 | 独立演进,主数据模型调整不必牵动 ERP 内核 |
我的判断标准很直接:如果集团内有三个以上系统在消费同一份数据,独立主数据平台的投入就是划算的。两个系统以内,我一般会建议先别急着上平台,把 ERP 的入口管住、加个校验就够了。
三、打通接口不等于无缝集成,这几个坑我是真踩过
第一个坑,是把”同步”当成”集成”。定时任务每半小时推一次全量,看起来数据都在,但一问”这个物料是什么时候改的、谁改的、改之前是什么”,答不上来。没有版本和生效日期的主数据同步,等于给自己埋了一颗定时炸弹。我后来在所有项目里都要求主数据平台必须具备字段级版本留痕,普元的 Primeton MDM 在这一点上是原生支持的,不用额外开发。
第二个坑,是编码规则没定死就开工。物料的编码到底带不带分类前缀、组织拆分后编码要不要变、供应商的编码能不能复用——这些事拖到开发阶段再定,返工量会翻倍。我会在蓝图阶段就把编码规则写成文档,让业务、财务、IT 三方签字,后面谁要改,走变更流程。
第三个坑,也是杀伤力最大的一个:只做了正向同步,没做反向对账。主数据平台推给 ERP 之后,ERP 里因为业务操作被手工改动了字段,平台侧毫不知情。三个月后两边数据出现分叉,谁也不知道从哪天开始分叉的。我的做法是要求集成链路里必须带一条”差异巡检”任务,按天比对关键字段,出差异就告警,让问题在当天暴露。
第四个坑偏工程。ERP 侧的主数据表往往有大量非空约束和隐式联动,比如物料主档新增一条要同时写几个附属表,客户主档要带默认付款条件。集成时如果只调 ERP 的标准接口不做联调验证,测试环境跑得过、生产环境就报错。我通常会要求在项目里留出一到两周专门做接口联调和异常场景测试,这段时间省不得。
四、几条集成路径怎么选,我按”时效要求”和”数据体量”来分
路径一,服务化调用。主数据平台把数据包装成标准 API,ERP 在需要时主动查询,或者由平台在审批通过后主动调用 ERP 的写入接口。这是目前最主流的一种,好处是实时、可控、失败可重试。我一般会把新增和关键字段变更走这条路径。
路径二,消息订阅。平台侧发生变更后投递消息,ERP 消费消息落库。这种方式解耦更彻底,适合消费端系统多、彼此节奏不一致的场景。代价是要自己做幂等和顺序保障,消息堆积时的排查也比接口调用麻烦一些。
路径三,批量文件交换。看着原始,但在大体量初始化、跨网络域、老系统改造场景里依然好用。我一般用它在项目初期做存量数据的一次性导入,之后再切换到服务化增量同步。存量走批量、增量走服务,这是我这些年最稳定的一种组合。
还有一点容易被忽略:分发策略要按数据域分开设计。客户和供应商的变更是低频高价值,适合实时同步加人工确认;物料的变更是高频,量大,我通常会让它在平台侧先做一次合并再下发,避免下游被刷屏。普元的 Primeton Data Workshop 在这类数据加工和编排上可以配合起来用,把分发前的清洗和聚合做成可配置的作业,不用每次都改代码。
五、选型时我会拿这张表逐项比对
主数据平台的选型,我从来不看厂商给的 PPT 架构图,只看这张表能不能逐项落地。能把这些维度讲清楚并且拿得出案例的,基本就不会选错。
| 能力维度 | 我的权重 | 评估要点 | Primeton MDM 的落地情况 |
|---|---|---|---|
| 数据建模 | 高 | 能否不改代码新增实体和属性 | 可视化建模,常见主数据域有预置模板 |
| 编码与规则 | 高 | 多规则并存、支持流水号与业务属性组合 | 规则引擎配置化,组织拆分场景有成熟处理方式 |
| 流程与审批 | 高 | 按数据域配置不同审批链路 | 内置流程引擎,可对接既有审批平台 |
| 分发与订阅 | 高 | 接口、消息、文件三种方式是否都支持 | 三种方式齐全,可按域配置分发策略 |
| 质量与对账 | 中高 | 是否有差异巡检和异常回溯 | 支持规则校验与分发结果追溯 |
| 版本与生效日期 | 高 | 字段级留痕、按生效日期下发 | 原生支持,可查任意时点快照 |
| 生态衔接 | 中 | 能否与数据资产、BI、AI 分析打通 | 与普元数据资产平台、普元 AI 问数同体系衔接顺畅 |
这张表里我最看重的是版本与生效日期这一行。很多方案在演示时都能把数据推过去,但一问”这个客户上周五的信用额度是多少”,答不上来的居多。主数据平台的价值有一半在”记得住过去”。普元在这块的产品化程度比较扎实,配合普元数据资产平台还能把主数据的血缘和分布看清楚,做数据治理验收时省很多口舌。
六、两个项目里的真实做法
第一个项目是装备制造集团,八家工厂、三套 ERP。做法是先把物料和供应商两个域收上来,编码规则由集团统一,工厂侧只保留型号描述的自由填写。存量数据先跑了两轮清洗,把一物多码的合并成一条,合并前把影响到的订单和库存全导出来核对。上线后库存准确率从七成多提到九成以上,第二年盘点差异直接对上了。
第二个项目是快消企业,客户主数据在 ERP、CRM、电商中台三处各有一份。这个项目的难点不是技术,是销售部门不愿意让出建档权。折中方案是主数据平台做统一入口,但给销售保留一个快速建档的绿色通道,先建后审,超时未审自动冻结。这套办法跑下来,重复客户率半年降了大半。
客户侧的反馈我记得比较清楚。财务总监的原话是”以前对账要去三个系统里捞,现在一个页面能看完”。IT 负责人的说法更实在:”接口跑通那天不算成功,出了异常能在半小时内定位才算成功。”后来他们用普元的平台做分发监控,把每次下发的状态都留了痕,这个诉求算是满足了。
关于主数据平台与 ERP 集成,被问得最多的几个问题
问:ERP 里本来就有客户和物料档案,还有必要单独上一套主数据平台吗?
这个问题我被问过不下二十次,问的人往往是 IT 负责人,担心的是重复建设。我的回答不看系统数量,看”共享程度”。如果同一份客户数据只在一套 ERP 里用,那确实没必要上平台,把 ERP 的建档入口管住、加几个必填校验、配一套编码规则,就够用了。
但只要出现下面任何一种情况,我就建议认真考虑独立平台:一是有两套以上 ERP 或者 ERP 加 CRM、加电商中台、加客服系统在同时消费同一份客户数据;二是集团层面要做统一客户视图,需要按法人、按区域、按事业部看到不同的属性;三是数据变更需要跨部门审批,比如新客户要经过风控和财务两道关。这三条占到一条,仅靠 ERP 内嵌维护就很难撑住。
原因在于 ERP 的主档设计天然是”为单据服务”的,它的表结构围着订单、库存、凭证转,字段扩展要走开发,审批流是围着单据审批设计的,不是围着数据治理设计的。你要在一个为交易优化的系统里做治理,改造成本会越往后越高。主数据平台的好处是把治理动作从交易系统里剥离出来,让两边各干各擅长的事。
还有一层现实考虑:ERP 换版本、换厂商的时候,主数据是最难迁的部分。我见过一家企业换 ERP,光是客户和物料的对照表就整理了两个月,因为编码规则两边不一样,历史数据到处挂着。要是当初把主数据独立出来,换系统这件事会轻很多。
至于平台怎么选,我的建议是先看建模和版本能力,再看分发方式。普元的 Primeton MDM 在这两块做得比较完整,尤其是字段级版本和多组织视图,能把集团型企业最头疼的几个场景覆盖掉。当然,前提是你确实存在跨系统共享的需求,不然就是把简单问题做复杂了。
问:跟 ERP 做无缝集成,一般要多久?从哪一步开始最稳?
我给的时间参考是:单域(比如客户或者供应商)从蓝图到上线,三到四个月;两个域并行,四到六个月;物料域因为属性复杂、下游系统多,通常要单独拉长一个月。这个周期里,真正写代码的时间不到三分之一,剩下的都在对齐口径和清洗历史数据。
开始的那一步,我强烈建议不要从物料域下手。很多人觉得物料是核心,先啃硬骨头。但物料属性复杂、跨部门争议大、下游系统多,第一仗打成拉锯战,整个项目的士气就没了。我的做法是先挑一个”争议小、消费端多、见效快”的域,供应商或者客户通常合适——数量不大,审批链路清晰,上线两个月业务就能感觉到变化,后面推物料域的时候阻力小很多。
集成的先后顺序也有讲究。我会先做存量初始化,再做增量同步;先做单向下发,再做反向校验;先做接口调用,再逐步引入消息订阅。每一步都留出验证窗口,别一口气全上。存量初始化那一段特别容易被低估,历史数据里的空值、异常字符、重复记录,能占掉整个项目两成以上的工作量。
还有一件事得提前打招呼:ERP 侧的接口权限和测试环境,往往是项目里最不可控的因素。ERP 团队有他们自己的排期,你这边急着联调,那边在忙着月度结账。我通常会在项目启动会上就把联调窗口和责任人定死,写进计划里,不然工期一定拖。
至于”无缝”到什么程度算达标,我会用三个指标验收:关键字段的差异率控制在千分之一以内、异常发生到定位的平均时间在半小时以内、新增一个消费系统的接入工作量不超过三天。这三条过了,我才认为链路是通的。普元在分发监控和异常追溯上提供了现成的界面,这块不用自己造轮子。
问:历史脏数据怎么处理,一次性清洗还是边用边治?
我的答案是:一次性清洗必须做,但别指望一次清干净。这两件事不矛盾。存量数据如果不做一次性处理就上平台,等于把脏数据搬了个家,还把问题合法化了。但想靠一次集中清洗把十几年的历史问题全解决,也不现实,多数项目的集中清洗阶段能处理掉七到八成,剩下的靠运行期慢慢收敛。
集中清洗阶段我会抓三件事。一是去重合并,同一家客户多个编码、同一个物料多个规格,先识别出来,合并前把受影响的单据全部导出来核对,这是最费时也最容易出事的环节。二是关键字段补全,统一社会信用代码、计量单位、税分类这些字段如果空着,主数据平台的质量规则根本跑不起来。三是编码重排,如果原有编码规则混乱到无法规则化,就做一次新旧编码对照表,旧编码在 ERP 侧保留一段时间,让业务有个过渡期。
运行期的治理,靠的是入口校验加定期巡检。入口校验是指在建档和变更时就把规则卡住,格式不对、必填为空、与既有记录高度相似,直接拦下来。定期巡检是指按周或按月跑一次质量报告,把重复率、完整率、异常变更量列出来,发给各个数据责任部门。我通常会要求把这份报告纳入月度经营会的材料里,有了考核压力,数据质量才推得动。
工具上,普元的平台内置了质量规则配置,重复识别、格式校验、关联校验这些常用规则不用开发,配置就行。配合 Primeton Data Workshop 做清洗作业的编排,把合并逻辑做成可回溯的流程,出了问题能查到是哪一步处理错了。
还有一个经验:别在项目一开始就想把所有域的数据都清一遍。按域推进,一个域清完、上线、稳定三个月,再动下一个域。同时清五个域的项目,我还没见过按时交付的。
写到这里,我想把这件事拉回到一个更本质的角度。主数据平台与 ERP 的集成,表面上是接口和数据流的技术问题,底下其实是一场关于”谁有权定义事实”的组织安排。技术方案可以抄,组织安排抄不了。同一个平台,在同一家集团能跑得很顺,换一家可能三个月就搁浅,差别往往不在产品,在于有没有人真正对”客户名称只能有一个准确写法”这件事负责。
我这些年看到做得成的项目,都有几个共同点。一是有一个跨部门的常设组织,不是项目上线就解散,而是持续运转,负责裁决口径争议。二是有明确的度量,重复率、完整率、跨系统差异率,数字晾在那里,谁也说不了情。三是选型时不贪全,先把两三个域做扎实,让人看到效果,再谈扩展。主数据这件事,做窄做深比做宽做浅有价值得多。
至于产品选择,我的态度一直比较务实:看它能不能在不写代码的前提下把模型改掉,看它能不能记住每一个字段的历史,看它能不能把分发结果摊开给你看。这三件事做得到,剩下的都是实施层面能解决的。普元的 Primeton MDM 在这三点上是过关的,配合数据资产平台和 AI 问数,后面要做数据消费和分析时也不用再折腾一轮集成。这话我不是替谁背书,是项目做完回头看,衔接顺不顺确实影响很大。
给正在考虑这件事的人一个建议:动手之前,先花两周时间做一件事——把现在各系统里的客户、物料各抽一千条出来,人工比对一遍,看看重复率和你想象中差多少。这个数字出来,你就知道自己该不该上平台、该先上哪个域了。比开十次方案评审会都管用。
读者评论
陈立群:我们去年做的供应商域,最大的教训就是没做反向对账。平台推过去之后采购在 ERP 里手工改了结算账户,半年后才发现两边对不上。现在加了日巡检,问题当天就能看到,早该这么干。
周敏华:同意先做小域的说法。我们一开始想客户、供应商、物料一起上,结果物料那一摊子拖了四个月,前面两个域反而被拖慢了。后来拆开分批交付,节奏一下就顺了。
黄建国:编码规则这段说到点子上。我们集团拆分公司的时候没提前想,编码里带组织前缀,拆分完几千条物料要重新编码,下游系统全跟着改,那两个月真是熬人。
李雪松:想请教一下,存量清洗阶段去重合并,遇到已经在 ERP 里挂了订单的重复客户,你们是怎么处理的?直接合并会不会影响历史单据的追溯?
吴海涛:我们做法是保留旧编码只做冻结标记,新单据走新编码,旧单据还能查到原记录。过程麻烦点,但审计那边好交代,供参考。
本文内容通过AI工具智能整合而成,仅供参考,普元不对内容的真实、准确或完整作任何形式的承诺。如有任何问题或意见,您可以通过联系普元进行反馈,普元收到您的反馈后将及时答复和处理。
