MDM主数据管理是把企业的多个业务系统中最核心的、最需要共享的主要数据进行整合,集中进行数据清洗和标准化,并且以集成服务的方式把统一的、完整的、准确的、具有权威性的主数据分发给需要使用这些数据的应用系统,而ESB则是主要作为企业信息系统的“龙骨”来集成各业务系统,实现异构系统的互联互通。
本文是对ESB和MDM协同使用实现数据的同步分发进行总结。在对MDM产品的功能及接口进行了解与熟练使用后,进行功能开发,实现从源头数据库到MDM的数据同步、再从MDM到目标数据库的数据分发功能。在本文中会介绍功能的设计实现思路、具体的实现过程、数据架构、功能测试及分析总结。
总体需求主要包括对同步分发流程的业务需求进行说明,并对同步分发流程的功能需求进行整体分析,另外对于整体的集成架构进行介绍。
本次同步分发基于实际业务需求,需要在同步过程中模拟真实业务,将ERP、财务系统数据同步至MDM,并下发至业务系统中。基于实际业务情况,将ERP系统的收款、付款单据通过ESB同步至财务的应收、应付单据以及财务凭证中,并保证业务单据和基础数据的有效关联。
本次同步分发流程中基础数据需要如下:
1.获取源头系统的客户、供应商和银行账户等数据:
在ESB创建ERP数据获取服务,根据code可以查询单条数据或者根据状态查询关联的多条数据。
2.将数据同步到MDM主数据中:
在同步的过程中,调用MDM预制的存入临时表和真实表接口,调整好数据的入参,将数据先同步到临时表再同步到真实表,自动回写同步日志。
3.MDM自动分发到目标系统当中:
在同步流程中调用BPM自动提交接口,在MDM管理控制台配置前置任务和调用接收服务接口路径,调用财务接收服务将数据存入财务系统当中对应表中。
集成架构以ESB+MDM为主,通过ESB实现MDM相关数据的同步,整体架构图如下:
1.以ERP为数据源头,提供客户、供应商、银行账号并进行数据的同步,在主数据中进行治理后调用BPM将该三类主数据分发至财务系统中。
2.以MDM为数据源头,提供组织、人员、物料、产品、参考数据并进行数据的分发,将主数据分发至ERP系统与财务系统中。
3.以财务系统为数据源头,将核算项目、会计科目分发至MDM系统中,在MDM中进行存储,不进行下发。
4.以ERP为数据源头,提供收款单/付款单并通过ESB进行数据的同步,数据同步至财务系统中的应收单/应付单。
本次同步分发流程主要包括两个部分,一部分是进行主数据的模型创建,另一部分是对ESB企业服务总线进行集成流程配置。本次同步分发流程的核心目的是通过调用同步分发流程,一键将源头系统的数据同步MDM再自动分发到目标系统中。
首先,对ESB、MDM等产品进行调试,尽量使用最新版避免出现产品问题;其次,先熟悉产品操作,了解ESB组件的使用、MDM在功能实现过程中需要用到的接口、掌握调用其需要的入参格式、调用方式等等。
在上文已经对本次工作需求做出了阐述,在拿到需求后,先整理出大体的实现思路,再根据实现思路进行更为具体的实现过程设计,本次开发工作的大体实现思路如下:
1.配置主数据的各类模型;
2.创建数据的数据查询服务接口;
3.创建数据的财务接收服务接口;
4.在SMC管理控制台API服务模块进行查询服务、接收服务以及主数据服务注册配置;
5.在主数据管理平台进行BPM流程的配置和分发接口配置;
6.在SMC管理控制台应用集成配置生成对应的集成流程;
7.在ESB流程内部调用数据获取服务接口进行数据格式的清洗映射转换;
8.调用主数据管理平台的批量导入临时表接口将数据导入至临时表中;
9.调用主数据管理平台的批量导入实体表接口将数据写入主数据管理平台当中;
10.最后调用主数据管理平台的自动提交接口调用目标系统的接收数据接口将数据分发至财务系统。
在此将根据从需求整理出的大概实现思路,进行更为具体的设计,对于同步分发流程的开发过程进行整体概述。本次流程主要包含MDM以及ESB应用集成配置两大部分,整体如下:
1.在MDM主数据管理平台按照业务需求创建基础模型并进行部署。
2.在MDM主数据管理平台按照业务需求创建功能模型并进行部署。
3.在ESB设计器创建源头系统数据的数据查询服务接口。
4.在ESB设计器创建目标系统数据的数据查询服务接口。
5.在ESB的SMC管理控制台API服务模块进行查询服务注册配置并对对应接口配置入参出参。
6.在ESB的SMC管理控制台API服务模块进行接收服务注册配置并对对应接口配置入参出参。
7.在ESB的SMC管理控制台API服务模块主数据服务注册配置并对临时表接口配置入参出参。
8.在ESB的SMC管理控制台场景配置中进行流程的场景配置并对其进行提交生成集成流程。
9.根据创建应用集成流程,并在设计器生成进行二次调整在同步流程中添加BPM自动提交接口调用分发流程。
10.对设计的流程进行整体测试。
在开发流程前,首先对各数据页面的显示进行实现,完成主数据系统中的数据建模以及功能建模。在本章节中将分别对主数据的数据模型、功能模型以及ESB动态模型创建过程进行介绍。
1.主数据模型:通过配置主数据的数据模型,配置该主数据的基本信息、来源系统以及分发系统。
2.功能模型:通过配置主数据系统的功能模型,来对数据的显示格式以及页面的展示效果进行配置。
3.动态模型