您现在的位置是:首页 > IT基础架构 > 软件与服务 >
用数据交换中间件打通ERP和MES任督二脉
摘要ERP系统先期在济钢上线运行,随着MES系统的实施,两者之间的数据交换是必需和关健的,数据交换中间件设计的好坏,将影响MES系统的实施进度及实施的程度。...
1 系统需求
ERP系统先期在济钢实施,随着济钢中厚板-三炼钢生产线ME5项目的启动,为了MES项目的顺利实施,两者之间的数据交换是必需的并且将会很频繁。若两者之间的数据传递不及时,将会严重影响ERP的决策执行进程,同时数据交换的质量将会影响到MES项目的实施。因此,设计一个友好的数据交换中间件非常关键。
济钢ERP系统对企业中的物流、资金流、信息流进行全面一体化管理。济钢ERP系统已经实施的模块组成,有财务模块、销售模块、生产制造模块、质量标准模块、采购模块、设备模块等。MES的主要功能有订单接收与设计、工序计划与调度、质量设计、库存管理、数据采集、产线跟踪、生产报表、接口管理付程管理等。数据交换中问件系统的设计是基于,MES系统接收的订单信息源头在ERP系统的销售订单模块,做订单质量设计的标准库数据在ERP系统的质量标准模块,发货指示需要在ERP系统给MES做指示,对客户发货MES完成不了,订单的分解、物料搬运单的处理、发票的生成也需要在ERP系统完成。同时,ERP系统需要MES系统的工序计划、消耗的物料信息、生产实绩需要人到ERP系统的成品库、副产品信息需要导入ERP系统的副产品库。数据交换中间件系统的应用,不但满足了ERP系统、MES系统相互的数据需要,连接了企业层和执行层的应用系统,保证了物流、资金流、信息流的统一,同时为总公司的精细化管理,生产方式面向订单生产的转变提供了可能。随着用户对产品的需求个性化,济钢的产品正朝着多品种、小订单的方向发展,ERP和MES系统之间的数据交换更加频繁,连接二者的数据交换中间件系统,在满足客户的需求,提高客户的满意度,增强总公司的竞争力,将起到更加重要的作用。
2 系统的功能开发
2.1 系统的设计原理
由于MES系统与ERP系统是两大独立的系统,在济钢是由不同的公司实现的,基于两大系统的功能复杂性,业务处理的多样性,数据交换中间件主要完成两个系统的业务流程的无缝接续,使得MES系统与ERP系统形成一个协调整体,充分发挥两大系统各自的功能特点。数据交换中间件的设计主要是基于两个系统使用的数据库是ORACLE数据库,采用后台加前台界面的开发模式,后台程序的开发采用PLSQL语言,充分使用了视图、临时表、触发器、过程、程序包、游标、任务等功能,利用了ERP系统的标准接口表,接合了ERP系统中的请求功能;前台界面采用了基于ORACLE数据库的FORMBUILDER开发工具,开发融合于ERP系统的FORM表单,挂接在系统中,直接在前台进行操作。ERP系统与MES系统数据的传输,采用创建DATALINK进行数据的传递。数据传输的原则是MES需要的数据由ERP负责按MES提供的规则写到MES相应接口表里;ERP需要的数据由MES负责按ERP提供的规则写到ERP相应接口表里。图1是LEVEL 3(MES)传送信息到LEVEL 4(ERP)的实例。
图1 LEVEL 3传送信息至LEVEL 4
2.2 系统的业务流程
MES接收ERP提供的排产订单,接收ERP质量模块里的标准信息,对订单进行质量设计,工序计划设计完成后,应按ERP的要求格式返回任务信息,由ERP作导入WIP模块处理,生成ERP的任务工单信息。生产完工后,完工实绩、投料信息、副产品信息应返回ERP系统,能源消耗也应一并返回,改判退废的操作单独处理,这些业务的处理均应与任务相关联。MES接到ERP的出库指示后,MES出库后应返回ERP的出库实绩,ERP进行订单的分解,库存的冲减,发票的生成处理等相关业务。系统的业务处理流程如图2所示。
图2 业务处理流程图
2.3 系统的功能
数据交换中间件从系统模块上分有ERP系统功能模块、MES系统功能模块、数据传输模块;从业务流程上分有订单接口模块(订单共同信息、订单行信息、订单结束信息)、任务模块(任务工单信息、生产实绩信息、投料退料信息、副产品信息、板坯转移信息)、出库模块(出库指示信息、出库实绩信息)、退废改判模块(退废改判信息)。数据交换中间件的功能组成如图3所示。
图3 数据交换中间件的功能组成图
3 系统的特色
3.1 数据交换中间件与业务紧密相连
数据交换中间件的设计是建立在业务需求的基业务处理流程的不同,分成不同的子模块来满足业务的妥求。可单接口是用来收集订单共同信息、订单行信息、订单结束信息,传给MES。任务接口是用来收集MES系统的工序计划、完工信息、投料信息、副产品信息、板坯转移信息,通过接口程序的处理,完成任务的创建、投料产出。出库接口是用来指示MES出库,在ERP里进行返回出库实绩的处理。
3.2 保证了亚务数据传递的实时性
订单信息收集的规则是ERP系统销售模块里的订单,需要经过审价,并且已经释放,状态为登记,计划发运日期不能为空,N-常规为排产标志,这些订单在第一时间传给MES。当订单信息有修改时,通过触发器拿到修改的订单行号,触发订单传输过程程序把修改的信息传给MES。
3.3 保证了业务数据在系统内处理的及时性
通过在ERP系统里定义请求运行接口程序包,执行时间间隔为1分钟,主要用来处理生产任务、完工实绩、副产品入库、投料消耗、出库实绩在系统内的处理。接口表里接到MES上传的信息,请求执行时,顺序处理接口表里的信息。
3.4 特殊业务的处理保证了业务流程的连续性
由于ERP系统内的工单是以月为单位,每月2日关闭工单的,这样就会出现MES上传信息的跨月问题;同时MES上传完工入库的信息,在ER尸已经完成相应的入库动作,这时MES对完工入库的信息进行了改判,这时会产生特殊的退废改判业务。为了处理这些特殊的业务在接日程序的处理中启用了特殊业务的处理模块,保证了业务流程的连续性。
3.5 多重错误检查机制保证了数据传输、处理的安全性
在每一个传输的临时接口表里设置了共同的三个字段:传输标志、传输时间、错误描述,传输标志用0来表示未传输,用1来表示已传输,用9来表示传输出错,1和9由接收方来修改,错误信息记录在错误描述里,同时接收方处理返回的错误信息记录在错误日志表里,便于错误的查找排除并能保证信息准确地传到对方接口表里。在接收信息的接口表里均有共同的标志字段,用来记录数据处理过程中的状态变化、处理结果、出错信息,系统检查机制保证了数据处理按步骤顺序处理。
4 注意事项
4.1 明确销售订单制造可能性(含客户特殊需求)和生产日期、交货期的确认
MES目前只能排工序计划(scheduled),做不了月、旬计划(planning),但可进行订单制造可能性判定和交货期的确认,这部分信息通过接口返回ERP,相应修改对应订单的交货期,销售公司读取交货期用来通知客户何时来提货。
4.2 数据交换时的物料编码统一管理的问题
MES提出通过接口发送给ERP信息中的投料(包括所有原料、辅料、能源动力等)、副产品、中间产品、产成品等物料编码不按ERP编码的提供。由于MES在订单生产管理中有自己的编码体系,没有用到ERP的物料编码,上传数据时不提供ERP的编码,但在接口数据交换时需要提供ERP进行编码转换时需要的子项,由ERP进行物料编码的转换。
4.3 入库批(坯)号的合并问题及出库指示问题
ERP管理库存信息,关注的是量(重量),关注的是量(重量)的变化,而不是张的数量,目前ERP达不到MES要求库管理的精细程度;同时板坯和板材的数据量非常大,在ERP系统中数据又不允许删除(MES可以定期将过去的数据移出或删除来节省空间),ERP系统中的库存数据表将无限庞大,给各种库存数据的出具(报表查询)和财务进行数据核对、核算带来非常大的困难,严重影响系统的性能。因此tHN系统中只能将数据合并后进行管理,出库时按照数量进行下达出库指示。MES根据下达的订单(包括数量)出库,并将出库实绩发给ERP,ERP合并后冲减库存。
4.4 MES接收订单的问题
销售公司在ERP系统的销售模块录入订单,进行中厚板、三炼钢订单的区分,订单特殊要求的维护,并在审价释放后进行排产日期的确认,此时MES通过接口实时的接收ER尸系统中需要中厚板、三炼钢排产的销售订单,销售公司的计划员在确定的某一个日期,通过报表系统生成建议计划报表,邮件发送给生产管制中心用来排产。
4.5 钢坯库和中厚板厂的销售出、入库带来的磅差问题
MES只能管理理论重量,而目前通过接口ERP系统接收MES上传的理论重量,进行理论重量入库,而实际出库时称重执行实重出库的业务。在压R尸系统的磅差由专门的磅差虚拟库进行管理。MES也应进行磅差管理,否则会由此带来两个系统数量不一致的情况,结果是中厚板成品库和钢坯库出人库数量难以核对。
5 结束语
经过前期的充分测试,随着济钢中厚板厂MES的上线实施,数据交换中间件系统根据MES的实施步骤逐渐启用,先后投用了订单接口、质量标准接口、任务接口、出库接口、退废改判接口。通过数据交换中间件系统的稳定运行,及其在连接MES系统与ERP系统所起的作用,实践证明数据交换中间件系统是一个友好的系统,很好的协调了ERP系统与MES系统,形成一个统一的整体,充分发挥两大系统各自的功能。
(本文不涉密)
责任编辑: