随着企业的发展,各项数据的权威性显得尤为重要,针对解决企业的基础数据治理以及传输问题,数通畅联开发出了MDM主数据管理平台。主数据治理方案可以将企业的组织、人员、客户、供应商等高度共享的数据进行统一管理,对需要的业务系统进行同步分发,使数据易采集、易理解、易分析,提高部门与部门之间的沟通效率。
近期工作主要是为某装备制造企业的主数据治理项目做准备,熟悉主数据治理方案中数据的同步分发以及数据初始化全过程,以组织主数据为案例在本地搭建整套组织主数据功能模型、数据同步流程、分发流程以及数据初始化导入流程,为后续主数据调研实施奠定基础。
ESB:AEAI ESB主要作用是作为企业信息系统的“龙骨”来集成各业务系统,实现异构系统的互联互通,用来拉取、调度各个业务系统的数据,一般被称为企业服务总线。ESB主要包含三个模块:服务器ESB Server、设计器ESB Designer以及管理控制中心。ESB Server是运行环境,基于定制的Tomcat 扩展开发,管理控制中心则是部署在ESB Server的Java Web应用,是基于开发平台构建的。ESB Designer是基于Eclipse Plugin开发的图形化、拖拽式的设计Web服务、消息流程的构建工具。
MDM:基础数据平台帮助创建并维护整个企业内主数据的单一视图,保证单一视图的准确性、一致性以及完整性,从而简化数据清洗工作、提高数据质量、加快业务系统对接和业务流程再造速度,提高业务响应速度。同时各业务系统复用一套主数据,各系统就像一个大系统的各个业务功能模块,企业IT架构可以实现柔性调整、升级、改造,从而支撑企业的业务战略目标落地。
总体需求可分为两大部分:
1.描述MDM+ESB主数据治理方案的典型业务应用场景,分析企业痛点;
2.以具体的组织数据为例,实现从数据清洗同步到数据分发的全过程。
随着各行业信息化政策的不断推进及各个企业决策者对信息化的重视,信息化系统不断增多,孤岛系统数量不断增加,跨系统间业务处理频繁,系统集成趋势明显,各系统之间数据分散、重复,未完全形成业务闭环,数据不一致,难以进行整合,没有形成数据资产,各系统间孤立的数据信息不能为运营决策提供有效支撑。首先需要将企业内部主数据、基础数据进行整合,形成业务闭环,形成企业数据资产。
根据主数据治理过程中的实际业务场景,将主数据划分为四类,分别为人事类(组织、人员)、客商类(客户、供应商)、生产类(BOM、物料分组、物料)以及知识类(知识产权),上述主数据将会从现有ERP系统、PLM系统、MES系统、OA系统以及线下Excel中获取基本数据信息,对数据进行清洗及分类后,最终同步至MDM主数据平台进行数据管理及分发。
以组织主数据为例,模拟HR数据库作为组织的数据源头,PM系统作为数据消费者,通过ESB和HR的组织服务获取组织数据,并调用MDM的接收接口实现数据同步,再在主数据内配置对应的BPM工作流,通过调用PM系统的服务接口实现数据的分发操作,确保各个系统内数据是准确的、一致的,该功能整体实现思路将在下一部分进行详细介绍。
整体实现思路架构如下:
使用HR数据库模拟HR业务系统,PM模拟PM系统,使用ESB创建HR数据获取服务,进行数据初始化,在数据同步流程内进行数据的格式转换、数据清洗、数据映射并调用MDM的OpenAPI接口,将数据同步到MDM内。
通过MDM数据建模、功能建模、流程建模生成对应的主数据模型以及OpenAPI接口,在数据提交通过后调用数据分发接口将数据分发到PM系统内。
整体ESB流程及数据表命名规则如下:
1.首先直接创建HR、PM数据库模拟两个应用系统,在对应的系统内分别创建两个表,组织表命名为organization:
2.使用ESB创建HR系统数据推送接口(Web Service)以及PM系统的数据接口(Rest Service),方便后续ESB同步、分发集成流程的调用:
1.在HR系统organization存在一个类别字段Type(自动分发autoDistribut、主数据分发mdmDistribut),根据类别进行数据分发判断;
2.数据清洗在ESB同步集成流程,首先通过主数据接口模板获取HR数据,接下来进行数据清洗,在集成流程内定义清洗规则,例如将HR编码为空的字段清洗掉等,接下来将清洗过后的数据放到DataSet内;
3.在DataSet根据HR系统的Type值进行自动分发和主数据分发判断。
a)如果Type为autoDistribut,调用MDM接收数据接口将数据插入到人员主数据表内,接下来直接触发MDM-PM分发集成流程,在集成流程内调用PM Rest Sevice接收数据服务,集成流程内如果存在数据格式异常,使用Java转换节点直接转换即可;
b)如果Type为mdmDistribut,调用MDM接收数据接口将数据插入到人员主数据表内,MDM人员数据为初始化状态,点击提交按钮,经过审批,审批全部通过后调用PM接收接口分发到PM系统当中。
1.首先通过数据建模创建组织数据模型,配置组织主数据对应的参考数据信息及元数据信息;
2.在流程建模内复制流程初始模板创建组织需要的新增流程、变更流程以及归档流程;
3.数据建模提交后通过功能建模生成组织对应的表结构以及SQL,在功能配置内点击配置表单页面和列表页面信息并绑定流程建模创建好的流程;
4.最终在功能建模部署后,自动生成对应的页面进行功能展示。
在数据准备阶段已经创建对了对应的HR数据获取服务、PM数据接收服务以及对应的数据表,具体实现过程主要包含主数据的创建及流程对接、同步服务开发、分发服务开发以及数据初始化清洗处理,具体实现步骤如下。
数据初始导入流程,首先从线下Excel中通过Excel读取组件,获取对应数据信息;接下来通过定义数据清洗规则,在Java转换模板内进行数据清洗并进行数据格式的转换;最后用MDM数据插入接口将数据同步到MDM内,具体流程如下:
数据初始化整体流程设计如下:
首先通过Excel读取组件读取准备好的Excel表格数据,在Java清洗模块定义清洗规则,获取表格内最大DataSet索引值赋值给count;接下来定义index初始值,获取MDM调用接口需要的tokenId,在循环内将数据格式进行处理转换,调用MDM数据接口将数据插入到主数据内;最后根据index索引进行循环判断,如果index>=count则退出循环,反之则继续循环插入。
通过Excel读取组件读取准备好的Excel表格数据。
对模板进行解析,解析后选择对应的数据集合,进行名称编码匹配。
在Java转换节点中定义获取tokenID所需要的appCode和appPwd,并获取数据集合的最大索引count值。
解析调用MDM预置获取数据接口将获取tokenID。
在Java转换节点内获取每个dataRow,并将数据进行封装。
调用主数据接口将数据初始化。
从MDM组织导出的Excel实际上是xml文件,必须将其另存为Excel2010文件,也就是xlsx为后缀的文件。
数据同步流程在流程内调用HR数据获取服务接口,根据数据状态进行数据查询,将查询到的数据进行XML格式封装,转换成DataSet,通过Java转换节点获取MDM的tokenId,最后调用MDM接口插入数据,具体过程如下。
数据同步整体流程设计如下:
首先Http调用组件调用HR数据获取服务,数据获取后将数据进行二次封装得到一个XML;
接下来将XML进行DataSet数据转换,定义index索引值为0,通过appCode和appPwd获取tokenID,通过dataSet.size()获取count最大索引值,之后将数据转换成Json,调用MDM数据接口将数据插入到主数据内;最后根据index索引进行循环判断,如果index>=count则退出循环,反之则继续循环插入。
Http调用组件调用HR数据获取服务获取HR系统当中的数据。
返回值为一个result,使用Java转换节点对数据进行处理。
对数据进行转换,转换成DataSet。
定义索引值和最大值以及获取tokenID,和数据初始导入流程相同,在此不做过多赘述,直接调用MDM数据新增接口将数据插入即可。
数据分发流程,首先通过Java转换组件获取MDM的tokenId,并根据Http请求传入的编码值进行主数据信息查询,接下来获取PM系统中的接口实现数据同步,具体流程以及实际配置信息如下。
数据分发整体流程设计如下:
通过主数据流程建模会得到CODE参数,对tokenId进行处理,通过Java转换组件配置appCode和appPwd,通过Http调用节点对数据进行查询封装,查询出一个dataRow,获取对应的父节点编码,将数据写入。
通过主数据流程建模会得到CODE参数,此处从MDM获得主数据唯一编码值。
对tokenId进行封装。
通过调用OpenAPI中的接口获取数据。
调用PM系统数据接收接口,直接进行数据插入。
数据分发需要走BPM流程,在流程内调用上述数据分发集成流程服务接口,并将数据传递到该流程内,本章节主要讲述如何配置元数据字段信息参与流程,具体流程配置以及相关操作如下。
整体流程如下:
由组织数据录入人员,经过对应人员的审核以及MDM管理的审批,在生效数据处调用数据分发集成流程。
显示Rest服务调用接口。
在Rest服务地址调用数据分发流程,进行数据拼接。
传入指定code值,code值在功能建模处配置,让其参与流程,定义对应编码DataCode。
在流程建模流程变量处新增业务数据编码。
在调用时选择流程变量中编码即可。
在上述部分的编码参与流程,流程变量配置定义流程编码后,必须与流程定义列表处流程变量编码一致。
通过本次主数据同步、分发以及数据初始化操作,对主数据治理方案有了一定的了解,为后续主数据治理项目做了铺垫,在实际项目实施与产品开发完善过程中也暴露了自身的诸多问题,现从经验积累、企业运营及产品开发心得层面做出总结。
通过近期装备制造业的实施工作,对主数据治理项目有了更进一步的了解,清晰地认识到了主数据治理项目及企业应用集成的重点,主数据治理项目同其它行业一样的实施难点在于对业务的不够了解,只有将企业的整体运营模式吃透,才能对主数据治理及企业应用集成实施更加得心应手。
近些年来企业IT信息部门的角色在转变,在国内很长的一段时间内IT部门一直作为企业的支持性部门,但是随着企业的不断发展,信息化系统的不断增多,IT部门已经成为了企业内外部沟通、连接客户和合作伙伴的重要通道,是企业日常运营的重要支撑,这就意味着IT信息部门承担着更大的责任。在企业信息化不断发展的过程中,对于信息部门人员的素质要求也随之增高,以便在瞬息万变的数字化市场环境下,迅速给公司及客户创造价值。
通过近期对生产制造企业业务部门的调研,在业务方面有了更多的理解和提升,MDM主数据管理平台更多是服务于系统的,为各个业务系统提供基础的数据支撑。而在调研过程中,客户往往还会提出各种各样的需求,由此也清晰地认识到,不论是OA系统还是MDM主数据管理平台,都是实现业务的虚拟化载体,技术的最终价值是帮助客户解决业务问题,只有真正帮助客户解决实际问题,才会源源不断的产生收益。
随着各行各业对信息化重视程度的不断加深,企业的各类信息化系统日益增多,孤岛系统数量不断增加,各系统之间数据分散、重复,使得跨系统业务处理更加频繁、不便。在企业未完全形成业务闭环的情况下,数据不一致,难以进行整合,没有形成数据资产,各个系统间孤立的数据信息不能为企业的运营提供有效支撑,因此,对各个系统进行集成势在必行。
数通畅联作为以集成产品和解决方案为主打的技术型公司,从研发到技术,产品和解决方案都是从实践来,再到实践中去,产品研发的最终指向就是解决某个特定业务问题。没有业务,技术的存在就没有意义,二者是密不可分的。IT技术支撑业务运转、促进业务创新,业务模式呼唤更灵活的技术解决方案,而深刻理解IT产品技术、深入掌握业务脉搏的复合性人才正是21世纪最稀缺的资源。