1 引言
企业服务总线(EntERPrise Service Bus,ESB)是一个用于整合应用程序和服务的灵活的连接基础架构,也是一个基于消息的调用企业服务的通信模块,提供了智慧的面向服务的架构(SOA)方法,以解决与点对点连接和集成相关的高耗资、低效率IT复杂性问题,同时,维持最高级别的可靠性。ESB提供一种标准的软件底层架构,各种程序组件能够以服务单元的方式“插入”到该平台上运行,并且组件之间能够以标准的消息通信方式来进行交互。
ESB的概念是从面向服务体系架构(Service -Oriented Architecture,SOA)发展而来的,与以服务为导向的应用架构体系(SOA)紧密连接在一起,是SOA核心组成部分,是SOA架构中应用整合的骨干。ESB产品有很多种,开源产品有Mule、Apache ServiceMix、Apache Synapse、JBoss ESB等,商业产品有IBM WebSphere EntERPrise Service Bus、IBM WebSphere Message Broker、IBM WebSphere DataPower、Oracle Service Bus、Oracle EntERPrise Service Bus等。
铁路装备制造业企业信息系统集成是一项长期而复杂的工作,因此,将信息系统集成工作通过一个统一的集成平台实现是十分必要的。为实现对各集成系统的统一开发与管理,可选择ESB相关产品,例如IBM WebSphere Message Broker(简称WMB)作为统一的集成开发和部署平台。
2 PDM与ERP集成内容
在铁路装备行业中,PDM通常管理所有与产品相关的信息(包括零件信息、配置、文档、CAD文件、结构、权限信息等)和所有与产品相关的过程(包括过程定义和管理)。ERP系统主要是对生产计划、加工订单、销售订单、采购订单和生产成本等进行管理,侧重于生产制造过程中的管理。PDM和ERP系统之间存在很多交互信息,这些交互信息构成PDM和ERP系统集成的主要内容。
为实现以PDM为代表的技术信息和以ERP为代表的制造信息之间的集成,PDM系统需要为ERP系统提供产品设计的相关信息,ERP系统需要为PDM系统提供产品制造成本的相关信息。下面讨论的集成内容主要是PDM系统将产品物料信息、BOM信息以及工艺路线信息等传递给ERP系统,即PDM与ERP系统之间的单项传递。
物料主数据:是指某一物料编码对应的所有物料信息,包括基本数据、采购数据、销售数据、质量数据、MRP1-4、会计数据和成本数据等。物料主数据需要考虑创建和变更两种方式。
BOM(Bill of Material)数据:BOM即物料清单,也叫产品结构表。BOM是指将产品的原材料、零配件、组合件予以拆解,并将各单项物料按物料编码、名称、规格、单位用量、损耗等依照制造流程的顺序记录下来,排列为一个清单。在产品的整个生命周期中,根据不同部门对BOM的不同需求,主要存在几种BOM:设计物料清单EBOM、计划物料清单PBOM、制造物料清单MBOM等。本文主要讨论的对象是制造BOM信息的集成。制造BOM是描述制造过程物料的结构和关系,根据生产产品的特性,制造BOM又可分为两种,即物料BOM和WBS BOM。WBS BOM即是单车BOM,也就是每一车辆都有单独的BOM,BOM按照车辆展开。BOM的集成包括BOM创建和BOM变更两个子流程。
工艺路径(Routing)数据:是指从原材料到成品生产每步所需的每个工序的顺序。工艺路径是详细描述某项目制造过程的文件,通常包括抬头、顺序、工序及组件分配4部分。
3 PDM与ERP集成方案
为实现PDM和ERP间信息集成,需要将PDM发送信息和ERP接收信息的接口接入WMB。PDM与WMB接入方式通过中间库实现,ESB通过监控数据库事件表来获取数据。SAP与WMB接入方式通过WMB产品自带的SAP Adapter实现。SAP Adapter连接方式通常有4种:BAPI INBOUND,BAPI OUTBOUND,ALE INBOUND,ALEOUTBOUND。由于SAP作为接收数据方,并且需要实时接收返回数据,因此,选择BAPI OUTBOUND即出站方式作为连接方式。
物料主数据从PDM传入ERP前通常需要各相关部门的审批,例如,采购数据需要采购部门审批,会计、成本数据需要财务部门审批等,另考虑ESB不适合做流程审核等集成应用,因此,选择物料主数据的审批功能在OA系统或流程审批系统中实现。OA系统或流程审批系统审批结束后,将物料主数据信息传输至ERP。
PDM、OA系统或流程审批系统将业务数据传输至WMB系统后,WMB主要通过开发消息流将业务数据根据需求进行消息路由和格式转换。另外,由于BOM数据和工艺路径数据量较大,需要将各消息流配置并发调用功能。
PDM与ERP整体集成方案见图1。
图1 PDM与ERP整体集成方案
4 PDM与ERP集成接口设计
4.1 中间库设计
中间库设计主要包括表结构设计和触发器设计。
表结构设计分为两部分,即交易表设计和业务表设计。这里的交易规定为触发一次主消息流的动作。交易表中字段通常包括:消息序列号、业务类型、申请人、申请时间、传输标志、传输时间等。业务表主要是PDM传输业务数据,包括物料主数据表、BOM创建表、工艺路径创建(抬头、顺序、工序、组件分配)表、BOM变更表、工艺路径变更表、错误信息返回表等。
触发器主要作用是实现不同业务类型处理不同逻辑的触发和主消息流的触发。为实现不同业务类型处理不同逻辑,需要设计两个触发器,即交易表触发器、交易明细表触发器。为实现数据库触发主消息流,需要设计事件表触发器。
交易表触发器的作用是将传入中间库的业务数据根据各自业务类型做业务逻辑处理,然后插入交易明细表。比如,WBS BOM需要做拆分,则将拆分完成的WBS元素号和交易信息插入交易明细表;物料BOM不需要拆分,则直接将交易信息插入交易明细表。交易明细表触发器的作用是当有数据传入交易明细表后则直接触发在事件表中插入一条数据。事件表触发器的作用是触发主消息流,即当有数据插入事件表中,则自动产生对应该数据的EVENT_ID,该EVENT_ID是触发主消息流的主键。
4.2 消息流设计
主消息流是在Websphere Message Broker中实现的,首先采用Database Input节点作为消息接入入口,该节点的作用是实时监控中间库,当事件表中有数据产生,则触发该节点启动消息流;监控到数据后在计算节点(Compute)中根据业务类型将消息流路由到不同的子消息流中:到达子流后首先经过Compute节点处理,用ESQL将监控到的数据构造成ERP、OA或流程审批系统规定格式的数据:然后通过调用RFC/Web Service方式将数据发送至目标系统;最后将目标系统的返回信息插入到错误信息表中。
5 结论
PDM与ERP系统的集成是铁路装备行业实施信息化过程中面临的迫切问题,实现两个系统之间的有效集成,保证产品数据的一致性、完整性、唯一性及共享性,不仅能使产品的设计、制造过程更加顺畅,而且能避免由于信息重复输入而可能带来的错误,精确地传递信息,促使整个企业设计制造部门之间协同工作,大大提高企业的运行效率。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/