首页 ERP与MES的集成方法研究与应用

ERP与MES的集成方法研究与应用

举报
开通vip

ERP与MES的集成方法研究与应用同济大学 硕士学位论文 ERP与MES的集成方法研究与应用 姓名:王成桥 申请学位级别:硕士 专业:控制科学与工程·控制理论与控制工程 指导教师:吴启迪;乔非 20060301 ★■.r摘要摘要计算机与信息技术的发展使得制造型企业的管理方式发生了深刻改变,随着企业资源计划(EnterpriseResourcePlanning,ERP)以及制造执行系统(ManufacturingExecutionSystem,MES)的相继引入,整个企业的管理日益信息化和自动化。ERP主要应用于企业的上层管理,负责整个企业的上层管...

ERP与MES的集成方法研究与应用
同济大学 硕士学位论文 ERP与MES的集成方法研究与应用 姓名:王成桥 申请学位级别:硕士 专业:控制科学与工程·控制理论与控制工程 指导教师:吴启迪;乔非 20060301 ★■.r摘要摘要计算机与信息技术的发展使得制造型企业的管理方式发生了深刻改变,随着企业资源 计划 项目进度计划表范例计划下载计划下载计划下载课程教学计划下载 (EnterpriseResourcePlanning,ERP)以及制造执行系统(ManufacturingExecutionSystem,MES)的相继引入,整个企业的管理日益信息化和自动化。ERP主要应用于企业的上层管理,负责整个企业的上层管理运作。MES则被定位为上层的计划管理系统和底层控制系统之间的面向车间层的管理系统,在制造型企业的应用也越来越广泛。随着企业信息化的深入,ERP与MES的集成就变成了必须的,通过集成可以实现数据信息的传递和互补,从而达到企业整体信息化的目的。企业要实施集成的ERP与MES系统就要考虑到ERP本身的可扩展性。同时,MES系统本身的支持也是必须的。随着ERP系统与MES系统两种产品的商品化,实施了两套系统的企业必须考虑如何能完成两系统的集成,实现企业内部流程的统一和企业综合自动化系统的构建。本文在介绍ERP与MES基础理论的基础上,分析了ERP与MES集成的必要性,总结了ERP与MES系统的集成现状和发展趋势,同时分析了ERP与MES集成的基本信息,总结了几种不同的集成方法。随后介绍了典型ERP_SAPI奶的集成相关技术,主要包括SAPR/3的系统概述以及几种不同的集成技术介绍,如文件集成技术和接口集成技术。接着,针对企业具体实际需求,利用两种不同的集成方法设计了ERP(SAPR/3)与MES集成系统,分别基于两种集成 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 实现了ERP与MES系统的集成并解决了关键的集成技术。最后,对ERP与MES的集成研究进行了总结,对集成模式方法的发展提‘出了展望。关键词:企业资源计划、制造执行系统、集成模式、SAPR/3 Abstract ■ ,一 ABSTRACT Withthedevelopmentofcomputerscienceandinformationtechnology,themethodsofmanufacturingmanagementhavebeenchangedgreatly.Atthesametime,withtheintroductionofenterpriseresourceplanning(ERP)andmanufacturingexecutionsystem(MES),theinformatizationandautomationofwholeenterprisehasbeenimproved.ERPisplanningsystemsinoffice,whichcanmakeplanningfortheoperationofwholeenterprise.MESisinformationsystemsthatresideontheplantfloorbetweentheplanningsystemsinofficeanddirectindustrialcontrolsintheproductionmanufacturingprocess.Withthedevelopmentofinformatizationofenterprise,theintegrationbetweenERPandMEShasbeennecessary.Troughtheintegration,theinformationfromdifferentsystemscanbesharedandtheinformatizationof 、_enterprisecanberealizedlastly. ‘However,ERPandMEShasbeencommercialincreasingly,theimplementationof’integrationsystemmustbeconsideredhowtointegratebetweentwocommercial systems.SowemustconsiderthescalabilityandopennessofERPandMESSOthattheintegrationbetweenERPandMEScanbeimplementedconveniently.Troughtheintegration,thebusinessflowofwholeenterprisecanbeoptimizedandimproved. Firstly,troughanalyzingthenecessityandactualityofintegrationbetweenERPandMES,theaim、contentandsignificanceofresearchcanbeputforward.Secondly,somerelatedtheoryandtechnologiesaboutintegrationcanbesummarized,andsomemethodsofintegrationbetweenERPandMEScanbebroughtforward.Atlast,basedontherequirementofspecialenterprise,theintegrationmodelbetweenERPandMEScanbedevelopedusingtwomethodsofintegration.Intheprocessofdevelopingintegrationsystemmodel,somerelatedintegrationtechnologiesaboutERP(SAPR/3)canberesearchedandapplied. Finally,theresearchandapplicationofintegrationbetweenERPandMEScanbesummarized.Meanwhile,thedevelopmentofthemethodsandtechnologyabout ★integrationcanbeprospected.秆 ●II Abstract Keywords:enterpriseresourceplanning(ERP),manufacturingexecutionsystem(MES),themethodsofintegration,SAPR/3, 、 ‘ 气 ~ 一 III q、0’一?、,~厂.,学位论文版权使用授权书本人完全了解同济大学关于收集、保存、使用学位论文的规定,同意如下各项内容:按照学校要求提交学位论文的印刷本和电子版关部门或者机构送交论文的复印件和电子版;在不以赢利为目的的前学位论文作者签名:易哦斫J加存乡月卵经指导教师同意,本学位论文属于保密,在年解密后适用本授权书。指导教师签名:学乎敝储虢衫坼年月日细(年孑艮ljB本;学校有权保存学位论文的印刷本和电子版,并采用影印、缩印、扫描、数字化或其它手段保存论文;学校有权提供目录检索以及提供本学位论文 全文 企业安全文化建设方案企业安全文化建设导则安全文明施工及保证措施创建安全文明校园实施方案创建安全文明工地监理工作情况 或者部分的阅览服务;学校有权按有关规定向国家有提下,学校可以适当复制论文的部分或全部内容用于学术活动。 同济大学学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师指导下,进行研究工作所取得的成果。除文中已经注明引用的内容外,本学位论文的研究成果不包含任何他人创作的、已公开发表或者没有公开发表的作品的内容。对本论文所涉及的研究工作做出贡献的其他个人和集体,均己在文中以明确方式标明。本学位论文原创性声明的法律责任由本人承担。 签名:.狮1年 厂 0 第1章绪论 第1章绪论. 随着计算机信息技术的发展,企业的管理方式越来越信息化。各种各样的企业信息系统开始推广与应用,在这之中ERP具有深远的影响意义,对于企业的管理方式变革产生了重要的作用。同时,在制造业中MES系统也已经越来越发挥充分的作用。制造业信息化已经成为提高制造型企业市场竞争力和适应市场变化的根本途径。实现上述目标的关键是充分实现ERP系统与连接底层控制系统的MES的集成实施。 1.1制造业信息系统的发展 企业资源计划(EnterpriseResourcePlanning,ERP)起源于制造业的物料需求计划(MaterialRequirementPlanning,MRP)经过制造资源计划(ManufacturingResourcePlanning,MRPII)发展而来的【¨。是由美国GartnerGroupInc.咨询公司首先提出的。是当今国际上先进的企业管理模式。主要针对企业所拥有的人、财、物、信息、时间和空间等综合资源进行综合平衡和优化管理,面向全球市场,协调企业各管理部门。围绕市场导向开展业务活动,使得企业在激烈的市场竞争中全方位地发挥足够的能力,从而取得最好的经济效益。ERP已经发展成为当今企业管理方面软件的主流,比较主流的ERP产品有SAPR/3、OracleERP、用友的U8、金蝶刚3、新中大A3等。 对于制造业,一般都会涉及到车间层的生产系统和底层的控制系统以及调度系统。除了ERP以外,其他的企业信息系统也是必不可少的。在这之中制造执行系统(ManufacturingExecutionSystem,MES)就随之发展起来了。美国先进制造研究机构AMR将MES定义为“位于上层的计划管理系统与底层的工业控制系统之间面向车间层的管理信息系统”【21,它为操作人员/管理人员提供计划的执行和跟踪所有资源的(人、设备、物料、客户需求)当前状态等信息。MES国际联合会对MES的定义为:MES能够通过信息传递对从订单下达到产品完成的整个生产过程进行优化管理。当工厂发生实时事件时,MES能够对此即时地做出反应和报告,并用当前准确数据对它们进行分析和处理。这种对状 第1章绪论 态变化的迅速响应使MES能够减少企业内部没有附加值的活动,有效的指导工厂的生产运作过程,从而使其既能提高工厂及时交货能力,改善物料的流通性能,又能提高生产回报率。MES还能通过双向的直接通讯在企业内部和整个产品供应链中提供有关产品生产行为的关键任务信息。 AMR同时也提出了制造业的集成企业模型,清楚的描述了ERP、MES与底层控制系统这三个系统之间的关系【3J(如图1.1)。 图1.1集成企业模型图 计划层:强调企业的计划性。它以客户订单和市场需求为计划源头,充分利用企业内的各种资源,降低库存,提高企业效益。通常指ERP。 执行层:强调计划的执行和控制。通过MES把ERP与企业的生产现场控制有机地集成起来。 控制层:强调设备的控制,属于底层的控制系统。如PLC,DCS等。 1.2ERP与MES集成的必要性 从企业集成模型可以看出,MES在计划管理与底层控制之间架起一座桥梁,填补了两者之间的空隙。近年来,一些ERP软件试图将其车间管理的功能向下延伸,一些底层控制软件尝试向上延伸功能,尽管增加了一些功能模块但收效不大。这样的实际情况同样也支持MES系统的出现。通过两系统的集成实现企业信息的共享和企业流程的贯通。 此外,美国ARC公司的调查结果也体现了ERP与MES系统集成的必要性。调查结果表明:53%的客户反映ERP对工厂生产存在负面影响。这主要是由于光有ERP并不能帮助和指导工厂分析其生产的瓶颈、改进和控制产品的质量,以及对具体的产品生产进行排产;必须有其他的衔接系统衔接ERP和底层控制系统,只有这样才能更好的发挥ERP的计划管理作用。另一方面,即使是最好2 第1章绪论 的MES解决方案,对于整个企业来讲,也不过是提供一个相对狭窄的视角,缺乏在管理层为进行决策支持所需要的生产执行数据的广度和深度;也必须有来自上层管理系统即ERP提供的宏观计划信息。 MES是面向制造过程的,它必然与其他的制造管理系统共享和交互信息。作为车间生产管理系统核心的MES可以看作是一个通讯工具,它为企业各种其他应用系统提供现场的数据信息。通过ERP与MES的集成并最终集成到底层控制系统,企业的上层管理与计划人员可以更贴近企业的生产控制层,及时获得更多的底层实时信息;同时车间或控制层人员可以获得上层及时的计划指导来把握整个生产过程。 因此,可以看到在制造型企业集成ERP系统和MES系统的必要性。通过集成使得企业的整体信息得到贯通,提高企业的生产效率和竞争力。 1.3ERP与MES集成的现状分析 随着信息化的浪潮,国内外各种类型的企业纷纷投入资金进行自身企业的信息化建设。对于ERP与MES集成的现状分析可以从国外和国内两个方面去分析。 一方面,在国外由于企业信息系统的发展较早,ERP与MES集成的研究与应用也较早。绝大部分企业实施了类似的集成系统。在集成系统实施的过程中采用的集成方法如基于XML的集成方法【4】;通过中间件的集成方法【5】【6】【71;。但综合考虑这些ERP与MES的集成应用一般可分为两种情况: ●基于成熟的商业ERP和MES软件,通过选取合适的集成方法进行集成 系统的实施。 ・基于整体开发ERP与MES的完整系统来实现集成系统的功能。 另一方面,在国内由于ERP的应用起步比较晚,而且MES系统的应用也是IIIIII起步,所以基于ERP与MES的集成研究与应用发展也比较晚。因此,国内的ERP与MES集成应用特点为: ・实施了集成系统的企业较少,很多企业都是ERP系统与MES系统独立 运行并没有实现两系统的集成和信息贯通。 ・在实施了ERP与MES集成系统的企业中,大多数都是通过开发完整的系统来实现ERP与MES的集成功能的。 第1章绪论 ・随着企业的发展以及国内ERP与MES产品的商品化趋势,越来越多的 企业必然要实施成熟的商品化ERP与MES软件,这符合企业自身的利益。对于如何集成两个成熟商品化ERP与MES系统的研究成为一个越来越热门的话 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 。 综上所述,随着ERP和MES软件商业化水平的发展,基于现有商业软件的集成化系统必然得到研究和应用。这也就要求软件企业在设计软件系统的时候要考虑到软件在集成化和扩展性方面的发展要求。 1.4论文的背景、来源和主要研究内容 根据前面对国内夕bERP、MES系统的发展、系统之间集成的必要性分析和系统之间集成的现状研究的基础上,可以明确的看到进行ERP与MES系统集成研究的重要性。正是由于这些研究和应用对于我国企业信息化的发展起着推动作用,才有各种研究机构纷纷进行这方面的课题研究。本文也正是基于“同济大学‘面向21世纪教育振兴行动计划’项目:智能生产系统集成与优化实验室建设”的基础上进行研究和应用的。 依据上述思想,本文各章节的具体安排如下: 第二章主要介绍ERP与MES系统集成的基本理论,通过总结ERP与MES的发展过程以及进行系统之间集成信息的分析,基于现有的技术基础总结和提出了两种集成模式以及三种集成方法。 第三章基于现有的集成平台基础介绍了在进行ERP与MES系统集成中用到的平台和涉及到的相关技术。主要包括ERP平台SAPR/3的相关技术。分析了SAPR/3系统的架构、开发工具以及进行系统集成所涉及的其他相关技术。 第四章基于实际需求,设计了ERP与MES的集成系统模型。模型采用了基于中间文件和基于中间数据库与接口的两种设计方法。 第五章基于中间文件方法实现了ERP与MES系统的集成。 第六章基于中间数据库与接口方法实现了ERP与MES系统的集成。 第七章对论文的工作和研究成果进行总结,并提出了以后尚需进一步研究的问题。 各章的关系如图1.2。4 第1章绪论图1.2论文章节关系图 第2章ERP与MES集成的理论基础 第2章ERP与MES集成的基础理论 2.1ERP原理及现状 2.1.1ERP发展历程 ERP的形成大致经历了4个阶段【1J:基本MRP阶段、闭环MRP阶段、MRP—II阶段以及ERP的形成阶段。同时随着ERP的不断发展现在又出现了ERP—II的概念。ERP理论的形成和发展是随着产品复杂性的增加,市场竞争的加剧及信息化而产生的。 ERP的发展历程可以总结为以下四个阶段: 1.物料需求计划——MRP阶段 20世纪60年代的制造业为了打破“发出订单,然后催办”的计划管理方式,设置了安全库存量,为了需求与订货提前期提供缓冲。20世纪70年代,企业的管理者们已经清楚的意识到,真正的需求是有效的订单交货日期,因而产生了对物料清单的管理与利用,形成了物料需求计划——MRP。起初的MRP是单向的,利用基本MRP原理制订的生产计划与采购计划往往容易造成不可行。因为随着市场的发展及基本MRP的应用与实践,闭环MRP开始出现和发展,即考虑能力的约束,在满足能力需求的前提下,才能保证物料需求计划的执行和实现。 2.制造资源计划——MRPII阶段 20世纪80年代,企业的管理者们又意识到制造业要有一个集成的计划,以解决阻碍生产的各种问题。要以生产的库存控制的集成方法来解决问题,而不是以库存来弥补或以缓冲时间的方法来补偿,于是MRP—II,即制造资源计划产生了。MRPII把企业各个子系统有机的结合起来,组成一个全面生产管理的集成优化管理系统。其中,生产和财务两个子系统的关系尤为密切。MRPII的所有数据共享同时也保证了数据的一致性。 3.企业资源计划——ERP阶段20世纪90年代以来,随着科学技术的进步,解决合理库存与生产控制问题 ■ ■第2章ERP与MES集成的理论基础所需要处理的大量信息和企业资源管理的复杂化,要求信息处理的效率更高。传统的人工管理的方式难以适应以上系统,这时只能倚靠计算机系统来实现。而且信息的集成度要求扩大到企业的整个资源的利用和管理,因此产生了新一代的管理理论与计算机系统——企业资源计划ERP。ERP的主线也是计划,但ERP已将管理的重心转移到财务上,在企业整个经营运作过程中贯穿了财务成本控制的概念。ERP的管理过程基本上涉及企业的所有供需和财务过程。4.ERPII阶段进入21世纪,随着ERP的不断发展以及更广范围的扩展,ERP必然要涵盖供应链管理(SupplyChainManagement,SCM)、客户关系管理(ClientRelationshipManagement,CRM)、电子商务等;同时ERP也将更加强调系统的实时性、集成性以及协同商务的概念,这就是ERP—II。除了以上介绍的ERP的功能扩展,在这个阶段ERP的发展,主要表现在以下方面:・在制造业中,ERP将与制造执行系统MES集成,形成实时化的系统对制造业的车间层进行实时控制【31。・在设计方面,ERP将与PDM、CAD等集成实现对数据、设计的综合管理。・在商业业务中,ERP将增强供应链管理功能、工作流管理功能来优化企业的能力。 ・在技术方面,广泛采用先进计算机技术如客户机/服务器分布式结构、面向 对象技术、Intemet技术等。 2.1.2ERP的基本概念 ERP系统是建立在信息技术基础上,以系统化的管理思想,为企业决策层及员工提供决策运行手段的管理平台。是对企业内部的物料、劳力、设备等资源的全面计划。ERP的发展已经进入一个新的阶段,但ERP最核心的功能模块基本上没有变化。主要包括物料管理、销售管理、采购管理、主生产计划、物料需求计划、能力需求计划、库存管理、财务管理等模块。主要的流程信息如图2.1 第2章ERP与MES集成的理论基础 物料流入信息流物料矛苋出 /\l—\ 物流过程I//‘> 弋\/7 l供应市场H琴粤r_1砷于r叫销售r叫需求市场/\——一l匡<、\l资金流过程\夕 l资金流入信息流资金流出 图2.1ERP主要流程信息图 除了ERP的流程以外,要理解ERP一些基础概念是必不可少的。这些基本概念也是制造型企业其他信息系统所需求的。下面分别介绍一些ERP中最基础的概念18J: ・物料编码。是计算机管理物料的检索依据。为ERP系统的运行所需的 所有物料进行编码是ERP最基础的工作。物料编码主文件是用来存储物料在ERP系统中的各种基本属性和业务数据的。包括物料的技术资料信息,如物料名称、品种规格、型号、计量单位、默认工艺路线、单位重量等;物料的库存信息,如物品来源、库存单位、最大库存量等与库存相关的基本信息;物料的计划管理信息,如提前期、生产周期等与主生产计划(MPS)和MRP相关的基本信息;以及一些其他的与销售、采购、财务相关的基本信息。 ●物料清单(BillofMaterials,BOM)。是产品结构的技术型描述文件。 它表明了产品组件、子件、零件直到原材料之间的结构关系,以及每个组装件所需要的各下属件的数量。BOM又称为产品结构树。物料清单是生成MRP的基本信息,是联系MPS与MRP的桥梁。 ●工作中心(WorkingCenter)。是ERP系统的基本加工单位,是进行物 料需求计划与能力需求计划运算的基础。是定义物品工艺路线的依据。是车间作业安排的基本单元。是完工信息与成本核算信息的数据采集点。 ・工艺路线(routing)。主要说明物料实际加工和装配的工艺顺序、每道工序所使用的工作中心、各项时间定额及外协工序的时间和费用。工艺 第2章ERP与MES集成的理论基础 路线主要用于能力需求计划的分析计算;用于计算BOM的有关物料提前期;下达车间作业计划等。 2.1.3ERP的现状及发展趋势 ERP自被提出以后已经有了长足的发展,目前世界范围内的ERP发展格局正呈现出激烈变化。在ERP实施当中,国外基本上已经普及,绝大部分大中型企业都实施了ERP。这个过程中,一大批企业应用软件厂商崛起,世界最大的企业应用服务软件厂商SAP就是其中的发展典型。同时各软件商之间的竞争也逐渐加剧。Oracle公司连续的收购给人产生了深刻的映象。在国内,ERP也呈现出良好的应用和发展趋势。尽管实施了ERP的企业还主要局限在一些大中型的企业中,同时ERP实施的水平同国际上还有一定的差距,但是随着我国企业信息化水平的推进以及巨大的市场空间ERP必然能够得到更大的发展。 再从国内的ERP软件厂商来看,占有高端市场的基本上是一些欧美的成熟的企业应用软件厂商如SAP、Oracle等,国内的软件企业如用友、金蝶等基本处于中低端市场。但是由于国外的厂商在管理流程、财务制度等方面与国内的情况有很大不同,在系统实施的时候进行的二次开发量会更大。 ‘随着ERP的研究和应用的推广以及ERP自身功能的扩展,ERP逐渐向集成化发展。体现真正的集成电子商务、供应链平台、企业应用集成(EAI)[91[101等广义的企业资源计划。同时,客户需求作为管理信息系统发展的源动力,随着客户需求的变化ERP的功能范围也将会得到不断的延伸。 2.2MES定位和发展趋势 2.2.1MES的发展定位 在企业管理软件的发展过程中,ERP占据了主流地位。但这些管理软件大都属于企业的上层生产计划管理系统,对车间级制造执行过程的管理基本不能或不能完善的解决生产调度中出现的复杂多变的问题。如目前大多数的ERP产品只能做的零件级生产计划,而没有做到工序级生产计划,但由于系统的同生产日历是以日为最小时段,其计划的精度只能精确到日,生产计划还是比较粗9 第2章ERP与MES集成的理论基础 糙,难以充分利用企业的所有资源和能力。因此,为了解决生产计划的适应性以及增加底层生产过程的信息流动,提高计划的实时性和灵活性。迫切需要~种新系统的出现。为了解决这个问题,在20世纪90年代末美国先进制造研究机构(AdvancedManufacturingResearch,AMR)提出了制造执行系统(ManufacturingExecutionSystem,MES)[11】的概念,并将MES定位为重点解决车间生产管理问题。 MES定位填补了上层管理系统与底层控制之间的鸿沟。一方面,MES可以将来自上层管理软件的生产管理信息细化、分解,形成操作指令传递给底层控制系统。另一方面,MES可以实时监控底层设备的运行状态,采集设备、仪表的状态数据,经过分析、计算与处理,触发新事件,从而将控制系统与信息系统联系起来。同时作为面向制造过程的MES必然与其他企业信息系统进行信息的交互传递,这些系统主要包括SCM、ERP、产品数据管理(ProductDataManagement,PDM)、CRM以及其他底层控制系统。图2.2反应了MES的定位。 图2.2MES系统定位图 2.2.2MES的功能分析 制造执行系统在整个企业的信息化中,起着承上启下的作用。它在ERP系统产生的生产计划的指导下,收集底层控制系统的与生产相关的实时数据,安排短期作业计划、监控、资源调配和生产过程优化的相关工作。MES国际联合会给出的制造执行系统的功能【12】如图2.3所示。10 第2章ERP与MES集成的理论基础 /\/ f供应链管r’/’~——————一,。I企业资源 MEs’1计划 J// I现檠羹据}、.睡黧圈7而务和轰1...采集 .口礴顶嗣瞪孺硼.........,..,.一、1 I细生产计};和状态管i o划理{和警管}≮誉茹j理f、’’~一,/ 一售系一 ̄]小哆1 o、\、、\ 富I'、匿圈/f7豪i]一i孟i、一 于指定生产单元相关的优先级、属性、特征、方法等的作业排序功能。其目的就是要安排一个合理的序列以最大限度地压缩生产计划中的辅助时间,这个计划通过基于有限资源能力的作业排序和调度来优化车间性能。 物料、劳动者等其他生产能力实体以及开始进行加工时必须具备的文档+(如工艺文件等)和资源详细历史数据,指导劳动者,机器,工具和物料如何协调的进行生产,并跟踪其现在的工作状态和刚刚完工情况。对资源的管理还包括为满足生产计划的要求而对资源所作的预留和调度。生产调度管理:以作业、订单、批量以及工作订单等形式管理和控制生产单元中的物料流和信息流。生产调度能够调整车间规定的生产作业计划,对返修品和废品进行处理,用缓冲管理的方法控制每一点的在制品数量。通过生产指令将物料或DN-r_命令送到某一加工单元开始工序的操作。各功能简述如下:・工序级详细生产计划:负责生成工序级操作计划,即详细计划,提供基・资源分配和状态管理:对资源状态及分配信息进行管理,包括机器设备、・ 第2章ERP与MES集成的理论基础 ・文档控制:管理和分发与产品,工艺规程,设计,或工作指令有关的信 息,同时也收集与工作和环境有关的标准信息。该部分还完成包括对存 。 储的生产历史数据进行维护的操作。 ・产品跟踪和产品清单管理:通过监视工件在任意时刻的位置和状态来获 取每一个产品的历史纪录,该记录向用户提供产品组及每个最终产品使用情况的可追溯性。 ・性能分析:将实际制造过程测定的结果与过去的历史记录和企业制定的 目标以及客户的要求进行比较。其输出的报告或在线显示用以辅助性能的改进和提高。 ・人力资源管理:提供实时更新的员工状态信息数据(工时,出勤等), 基于人员资历、工作模式、业务需求的变化来指导人员的工作。人力资源管理可以与设备的资源管理模块相互作用来决定最终的优化分配。 ・生产质量管理:根据工程目标来实时记录,跟踪和分析产品与加工过程, 以保证产品的质量控制和确定生产中需要注意的问题。 ・过程管理:基于计划和实际产品制造活动来指导工厂的工作流程。这一 模块的功能实际上也可由生产单元分配和质量管理来实现。这里是作为一个单独的系统来实现。 ●设备维护管理:跟踪和指定企业维护设备以保证制造过程的顺利进行, 并产生除报警外的阶段性、周期性和预防性的维护计划,也提供对直接需要维护的问题进行响应。 ・数据采集:监视,收集和组织来自人员,机器和底层控制操作数据以及 工序,物料信息。这些数据可由车间手工录入或由各种自动方式获取。MES的现状及发展趋势 自从MES的概念被提出以后,MES的应用就开始迅速发展。尤其是美国和日本在这个领域有广泛而深入的研究和应用。实施MES的企业数量正在飞速增 ProductionManagement、Siemens IndustrySolutions、IndusInternational等【"J。 122.2.3长。同时由于起步早,世界上的成熟的商品化MES软件基本上出自美国、日本和欧洲。比较著名的MES软件公司有InvensysEnergy&Automation、Honeywell在国内,随着MES概念的引入,MES的研究和应用也得到了很大的发展,市 第2章ERP与MES集成的理论基础 场上也出现了一些MES软件产品,但从这些产品的介绍和应用情况来看,这些MES软件在软件的实用性、集成性、重构性和扩展性方面具有较大弱点。这些方面还有待提高。国内主要的‘MES软件产品如表2.1【11】。 表2.1国内主要MES产品 软件名称适用行业软件厂商 天为M匣S1.0机械制造大连理工大学&大连华 铁海新兴科技公司 MES机械制造南京比邻软件有限公司O—MES制造业瀚科科技发展有限公司孔明生产计划系统中小型生产制造企业深圳东洋网蓝软件服务 有限公司 myCIM半导体制造上扬软件(上海)有限 公司 /VIES制造运行系统光电材料、电子组装等羽冠计算机科技股份有 限公司(中国台湾) TodayMES机械制造广州今朝科技有限公司PrrM匣S机械制造普天系统集成有限公司BR—lvⅡ}S机械制造南京航空航天大学&倍 锐科技有限公司 MES作为生产形态变革的产物,其起源大多源自工厂的内部需求,传统的MES(TraditionalMES,T-MES)是从70年代的零星车间级应用发展起来的,并逐渐向具有一定集成能力的复杂大系统发展。T--MES系统可分为专用MES系统和集成MES系统两类,专用MES系统是针对某个特定领域的问题而开发的系统,如车间维护、生产监控、有限能力调度等ll训。它的系统重构性能弱,很难随业务过程的变化而进行功能配置和动态改变。集成的MES是针对某个行业而设计的,在功能上已经实现了与上层事务处理和底层实时控制系统的集成,但此类系统是针对特定行业,缺少通用性和广泛集成能力。 在进一步实施企业高级信息系统的时候,要考虑整个系统的整合性,MES必须满足系统集成的需求,因为MES不是孤立的,它必然要与上层的计划系统和底层的控制系统发生数据和信息的交互。因此,在MES的发展趋势中可集成 第2章ERP与IVIES集成的理论基础 性就成为最重要的一点了。 2.3ERP与MES的集成发展 MES系统出现之初就开始考虑与ERP系统的集成,也正是由于ERP系统无法很好的指导底层控制系统MES系统才出现的。ERP与MES集成的研究与应用从MES概念的出现就开始了。综合国内外ERP与MES集成的发展情况,两系统的集成发展一般有如下三种情形: ●从ERP向下的发展。由于ERP出现较MES早,在MES出现以前ERP 就已经获得了大量的应用,而MES是车间层的管理系统,通过对ERP生产计划模块的车间管理功能的细化就可以实现基本MES的功能。这种集成化的发展主要是在ERP的生产计划模块集成MES的功能,也可以认为是ERP功能的向下延伸【14】。比较典型有SAP公司的R/3系统就集成了MES的部分功能。 ●从MES向上的发展。在制造型企业中,比较小型的制造型企业起初主 要是实施了车间层的管理系统如MES,随着企业自身的规模发展,大型的ERP系统的实施就是其发展的方向,为了实现ERP系统和原有MES系统的信息共享和集成,基于MES开发的ERP系统就是一种发展趋势,这种集成了ERP与MES功能的系统可以认为是MES向上的一种发展,同样也是ERP与MES集成发展的一种模式115J。 ・平行集成的ERP与MES。这种情况一般是已经实施了商品化的ERP与 MES系统的企业,为了实现两系统的集成和信息共享,进行的基于两系统功能的平行集成,在集成的过程中并不是基于某个系统而设计另外的系统,而是综合考虑现有两系统的特点选取某种集成方法进行集成系统的设计与实现【15】。 综上所述,ERP与MES的集成发展目前主要有以上三种情形,随着计算机技术以及系统集成技术的发展,这两种系统集成的发展一定会向一体化方向发展,同时加上与其他企业应用系统的集成形成统一的企业集成平台u酬。2.4ERP与MES集成信息分析14 第2章ERP与MES集成的理论基础 2.4.1企业信息系统集成技术 集成j是指将分散的各种因素或单位结合成为一个更加和谐的整体。信息系统集成是根据一个复杂的信息系统或子系统的要求把多种产品和技术验明并连接入一个完整的解决方案的过程。在最初,企业应用系统大多是用来替代重复性劳动而设计的一些简单系统。很少跟企业的运作联系起来也没有考虑企业系统的集成。随着企业管理和信息技术的发展,越来越多的公司开始意识到应用集成的价值和必要性。ERP的流行要求能够支持已经存在的应用和数据,这就引入了企业应用集成(EnterpriseApplicationIntegration,EAI)的概念。随着企业的各种应用系统的迅速增加,越来越多的企业开始重视不同应用系统之间的集成以及企业内部的应用系统和外部客户供应商系统之间的集成,实现数据流和业务运作的自动化。 企业信息系统集成能够将企业的流程进行整合,满足企业信息化和自动化的需要。为了实现系统之间的集成,软件必须满足如下特性: ・开放性。是指软件的体系结构必须具有开放性,能够使得第三方在其基 础之上进行二次开发。 ・集成性。是指软件系统必须能够考虑以后功能的扩充和集成。考虑系统 之间的不同集成度,可将集成分为3个级别,即数据级、程序级和流程级。数据级集成主要目的是实现数据在不同应用系统之间的移动,能够以最低的代价实现一定程度上的信息共享。程序级集成提供比数据级集成更紧密的应用集成,实现业务逻辑的共享并使各个应用系统的状态保持一致;程序集成可以实现实时集成,实现了一定的业务流程之间的联系。一般通过两种途径实现:接口调用和消息传递。流程级集成是在程序级集成基础之上发展起来的最高程度的企业系统集成;它面.向企业的业务流程,为企业应用系统之间的互操作提供体系结构级的解决方案;在这个级别上的集成必须满足业务流程的可配置化,通过配置改变企业的信息流流向,使应用系统之问的互操作顺序满足新的业务流程的要求。 ・可扩展性。可扩展性主要体现在系统架构方面的可伸缩性。由于系统集 成以后还必须考虑进一步的集成发展,因此,在系统架构方面就非常必须考虑满足同益增多的集成系统之间的需求。 第2章ERP与MES集成的理论基础 以上三点是在考虑企业信息系统集成中最主要的。随着计算机技术的发展,企业应用软件更加向集成化和一体化的趋势发展。 2.4.2ERP与MES集成信息分析 在制造业中目前大多数ERP产品只做到零件级的生产计划,而没有做到工序级生产计划。而MES是用来采集从接受订货到制成最终产品全过程的各种数据和状态信息。我们假定控制层要求的实时时间系数是1,那么MES层的实时时间系数为10,ERP层的时间系数为100[17】。由此,以把MES作为夹在ERP与控制层之间的一个中间层,起传递ERP和控制信息的作用。这三层的具体数据流可以由图2.4看出。 广蒹]f,■磊≯、)f时间因子f10’0X7/竺竺竺|——、—————————一\‘ 图2.4企业三层结构数据流图 由此可见,通过三层结构模型企业可以从宏观和微观两个方面对企业的运作进行控制。同时,在三层结构内的企业信息集成和流动可以从两个方面去分析。 第2章ERP与MES集成的理论基础 (1)自顶而下的信息流传递 ERP系统的驱动数据来源于客户订单和销售预测,在MRP运行之后将主要产生两种输出:采购件的采购订单和自制件的工作订单。采购订单直接下达给采购部门,或与SCM系统集成进行物流计划以及跟踪、监控物流状态、自制件的工作订单下达到相应的工作中心(一般指车间)的MES,工作订单中包含了物料、生产数量、完工日期等信息,除了工作订单还有一些其他信息如标准物流BOM、标准生产工艺、设计文档等下达到MES,根据这些信息MES产生更为详细的资源分配、工序和生产调度,并形成工作指令下达给控制层的工人、设备或控制系统,同时将控制系统需要的控制参数发送给控制层11剐。 (2)自底而上的信息流反馈 底层控制系统接受到MES下达的工作指令完成相应工序。在控制层工作的同时或完成后将底层信息实时地反馈给MES,这些信息既包括实时生产信息,如起止时间、装配时间、等待时间、排队时间、实际工作时间、完成数量、废品数量,又包括作业任务状态以及底层设备人工状态;MES在反馈的底层信息基础上,对某些信息再进一步处理并反馈给ERP系统,工作订单状态、完成情况、起止时间、资源状态、工时信息、实际的物料BOM、实际的生产工艺、WIP信息、废品信息、实际库存状态,这些反馈信息对ERP系统至关重要【19j:1)使ERP系统中物料BOM、生产工艺根据反馈数据得以调整;2)实时的资源状态(物料、人工、设备);3)实时信息的反馈使成本计算、WIP状态、库存状态更加可靠。由此可见,MES/ERP以及底层控制系统的信息流是整个制造业信息化的基础。下面将给出ERP与MES以及底层控制系统信息交换如图2.5所示。 第2章ERP与MES集成的理论基础 企业资源计划(ERP) 靴、 睡一事,将葵斟詹翳辎,转籁咖蟋 制造执行系统(rvu三s) 辩舅攀 图2.5ERPfMES/底层控制系统信息 2.5EI心与MES集成方法 ERP与MES的集成应该根据企业自己的实际应用环境和目标需求确定解决方案。通过对企业的运营模式、发展目标和业务过程作充分的研究,确定信息如何共享、交换以此保证信息的正确传输。通过比较现有的企业信息系统集成方法,总结了几种比较实用的ERP与MES系统集成方法。分别为接口调用集成方法、数据库集成方法和中间文件集成方法。 2.5.1接口调用集成方法 接口调用集成方法应用比较广泛,一般情况下在进行集成系统的开发中都需要在系统中开发一些可供调用的接口用于实现数据信息的交换以至流程的集成 【20】,比较典型的接口调用集成方法如API接口调用集成方法【2¨。 这种集成方法同一般的接口函数调用基本相同,通过接口调用实现数据的传递和流程的集成。这种方法比较适合程序级别或流程级别的集成12’2|。但这种方法要求相应的系统必须有适合的接口函数或者能够有开放性以便进行接口开发。比较流行的ERP软件SAPR/3中的业务应用程序接口(BusinessApplicationProgramInterface,BAPI)或远程功能调用(RemoteFunctionCall,RFC) 18 第2章ERP与MES集成的理论基础 接口就是比较典型的API接口,通过对接口的调用可以获取数据信息和实现程序、流程集成【231。这种方法的示意图,如图2.6。 ● ..........J,.,。.。...............。......一/I ERP接API调用 口、、 \ ERPMES \ \、 API调用E>MS接 /口 图2.6直接集成模式API调用集成方法 2.5.2数据库集成方法 在数据库集成方法中可以是对于两系统之间数据库的直接集成,也可以是通过间接的数据库进行数据级别的信息交换与集成。对于一般性的两系统数据库的集直接成可以通过直接调用系统数据库的形式读取数据。这种集成也比较有利于程序级别或流程级别的集成。一般通过JDBC/ODBC的数据访问方式就可以进行数据库的集成,当然数据格式的一致性是必须的124J。 对于采用间接数据库的集成。这种方法主要是通过中间数据库进行行不同系统之间的数据信息共享和集成。一般中间数据库集成方法主要用来进行数据级别的系统集成。同时,基于中间数据库可以构建中间系统用来辅助ERP系统和MES系统之间的流程级别的集成。这种方法相比中间文件集成 法更支持大规模的数据存取和系统集成。 2.5.3文件集成方法 文件集成技术主要包括Excel文档、XML文档以及其他格式的文档。利用文档方便简便的格式,通过文档传递交换数据信息实现系统之间的集成。一般文件作为一种信息的中间储存传递方式,中间文件集成方法适合数据级的集成,如果系统之间不需要进行完整紧密的流程集成,只是一个系统需要另外系统的某些数据信息,文件集成方法就是一个很好的选择。另外随着文档技术的发展,现在的XML技术也支持流程级别的系统集成的实现。中间文件集成方法可以 第2章ERP与MES集成的理论基础 通过建立中间文件库,通过将需要的信息保存到中间文件库,然后需要的时候进行读取文件库的文件信息进行系统的集成。中间文件集成方法如图2.7。 图2.8间接集成的中间文件集成方法 以上总结了ERP与MES系统之间的不同集成方法。对于企业具体的需求,可以考虑不同的情况选择集成方法进行系统集成的实施。同时,也可以采用多种集成方法,进行系统的集成。这需要在具体集成系统的设计时进行灵活的选择。20 第3章ERP与IVIES集成相关技术 第3章SAPR/3相关集成技术 本文的研究是基于SAPR/3系统的。SAP公司是全球最大的企业应用软件提供商,是ERP界的主流企业。R/3是其开发的世界上覆盖面最广的、功能最强的ERP系统。全球有15000多家著名公司运行着SAP系统瞄J。本文的集成研究之所以基于SAPR/3系统也正是由于刚3作为最优秀的ERP软件的代表,通过对刚3的研究可以追踪当今企业管理软件的潮流。通过对刚3的架构和技术上的研究,了解相关的技术特点,为实现基于刚3的ERP与MES系统的集成奠定基础。 本章主要总结SAP邸的相关集成技术,作为企业应用软件技术的领导厂商,这些技术对于我国的企业应用软件研究有重要的参考意义。 3.1SAP刚3系统概述 SAPI奶系统是主要应用于大型企业的分布式标准ERP软件,系统的主要功能模块包括:销售与分销、物料管理、生产计划、质量控制、工厂维修、人力资源、工业方案、办公室和通信、项目系统、资产管理、控制、财务会计等。这套系统是用c语言及SAP自己的第四代语言ABAP/4开发的【26J。随着ERP概念的进一步发展及市场需求的改变,SAP不断推出新的产品,mySAPERP解决方案就是其中的产品127J。 3.1.1SAPR/3系统结构 SAPR/3是一个基于客户机/Jl艮.务器三层结构遵循面向对象的模块化软件,三层结构【28】分为演示服务器层(PresentationServerLayer)、应用服务器层(ApplicationServerLayer)、数据库服务器层(DatabaseServerLayer)。三层结构如图3.1:21 第3章ERP与MES集成相关技术 l/一—\】f,r、1f澎{/Lj≤三乡 簇服务砖I"\?--i删腓}{器h_删订似肿汀l l、,,j\/ 演示服务器 图3.1SAPR/3系统结构图 数据库层用来管理SAP邸的关系数据库以及程序生成的数据;ABAP/4程序运行在应用层上,ABAP/4程序读取数据从数据库层中然后在应用层进行数据处理。演示层是一个用户界面,通过图形用户界面(GUI),用户能同系统进行交互。这种结构的优点是:大量的计算在后台服务器上进行,并且也减少了网络流量;当系统的功能发生变化时,只需要对应用服务器层的应用服务进行维护,而不需要对客户端进行维护,大大地减少了维护成本。 3.1.2SAPR/3核心系统 邸系统由核心系统(Basis)、应用系统组成。R/3的核心系统确保它的应用可运行于不同的操作系统平台之上。物料、财务等所有应用系统在Basis模块之上由ABAP语言开发。 R/3Basis系统【29】是R/3系统的核心部分,从逻辑结构角度讲,刚3Basis系统包括了SAPR/3三层结构的大部分显示层和应用层组件,并将二者整合为一体,同时还通过核心及基础服务通过DBMS与底层数据库进行交流。 R/3Basis系统包括三个组成部分,分别为核心基本服务(KernelandBasisServices)、ABAP开发平台(ABAPWorkbench)以及演示层组件(Prese.ntationComponents)[29】。核心及基本服务组件是所有SAPR/3应用的运行时环境,其主要任务如下: ・运行时应用(Runningapplications)。所有的R/3应用程序都在次组件内 部的软件处理器(虚拟机)上运行。 ・用户和处理管理(Userandprocessadministration)。R/3系统是多用户系 统,每个用户是相对独立的,而且单个用户可以同时运行多种不同的应用。该组件负责管理操作系统任务,用户在其控制下登录R/3系统,并 第3章ERP与MES集成相关技术 使用系统功能。也就是用户并不直接与主操作系统打交道,只有刚3才是主操作系统的唯一用户,在主操作系统和用户之间起媒介作用。 ・数据库访问(Data6aseaccess)。R/3系统都会连接到一个数据库系统,’ R/3的各种应用并不能直接处理数据库,而是通过Basis系统提供服务进行数据库的操作。 ・系统通信(Systemcommunication)。R/3应用可以与其他R/3系统或非 SAP系统进行数据交换,可以通过业务应用程序接口(BusinessApplicationProgrammingInterface,BAPI)接口或RFC(RemoteFunctionCall,RFC)接口访问刚3系统。 ABAP工作台是Basis系统上的组件,是一个以ABAP语言为基础功能极为强大而全面的系统定制和开发工具。该平台本身即由ABAP语言开发,并完整整合至刚3Basis系统内部。 3.1.3SAP邸仓库与ABAP开发工作台 R/3仓库与ABAP开发工作台是SAP系统中的重要组成部分,也是系统开发的主要工具。R/3仓库中存储着系统开发过程中的对象(如程序等),这些对象大多是通过ABAP开发平台中的各种系统工具创建的。SAP的数据库系统中包含两个主要逻辑区域,储存不同的数据内容,一是大量与特定集团(Client)相关的客户数据表和应用数据表数据;此外,还存在一个R/3仓库(R/3Repository)存储所有SAP系统开发过程中的对象(ABAPdevelopmentobjects),这些对象成为仓库对象(RepositoryObjects),包括ABAP程序、数据库表结构定义、系统数据类型等。仓库对象不是企业数据,而是系统内部数据,与数据集团无关,一旦创建就可以再整个SAP系统中使用。仓库对象则又进一步按照不同的应用进行组织,这些具体的应用被称为开发类别(DevelopmentClasses)。 ABAP/4开发工作台(ABAP/4Workbench)129J是一个完备的开发环境,可用以开发企业级的客户机/月艮务器应用程序。它提供从数据定义、用户界面设计、处理逻辑、报表生成、测试与调试、文档管理,一直到管理正进行的编程工作的整套软件开发生命周期支持。并且提供了一个完善的元数据管理环境称为ABAP/4词典,以及一套可重复使用的可执行程序库。,ad3AP/4开发工作台包含一个资源库信息系统(RepositoryInformationSystem),资源库包含所有的开发 第3章ERP与MES集成相关技术 类,例如,程序、数据库表定义、或者中央数据类型定义等。开发类也叫做资源库对象。ABAP/4开发工作台的一些基本工具如图3.2所示: 图3.2ABAP开发工作台工具 ObjectNavigator是最常用的编程环境类似于VB.Net的集成开发环境;ABAPEditor是用来进行程序代码编辑的窗口;ABAPDictionary是对存放在底层的标准数据库中的数据进行描述的工具,通过一套OpenSQL语言进行访问,OpenSQL是SAP一种基于标准SQL语言的数据库查询语言;ScreenPainter和MenuPainter分别是进行屏幕制作和菜单制作的工具;FunctionBulider是一种维护和测试函数模块的工具。 这些开发工具中ABAP编辑器和ABAP字典是最常用的,ABAP编辑器同其他的程序编辑器类似。ABAP字典是SAP系统中定义和管理数据元素和数据库元素的中心工具。在ABAP程序中访问数据库的方式可以是标准SQL语言或通过ABAP字典提供的OpenSQL语言,刚3系统的数据库接口会将OpenSQL语言转化为相应的数据库语言。这也使得系统更具有夸平台性。 3.1.4ABAP语言概述 ABAP/4是刚3的开发语言,并伴随这R/3的发展而不断发展。ABAP/4语言一个非常重要的特点是它集成在ABAP开发工作台,ABAP开发工作台是一个完备的客户机、服务器开发环境。ABAP/4环境具有以下主要特点129】:・是一种基于结构化程序设计的第四代编程语言,尤其在报表生成方面, 第3章ERP与MES集成相关技术 类似于COBOL语言。并且是事件驱动的语言,具有面向对象的特性,尤其在对话框编程方面。 ・。是一种集成、完善的开发环境,包括数据字典、数据建模工具、程序编 辑器、界面绘制器、测试与调试工具等。 ・是开放的、可移植的,因为SAP系统提供了可移植的开放性程序接口。・具有高度的模块性,提供强大的数据处理功能。并且支持标签、消息等 多种语言文本元素。 ・面向对象特点,随着ABAP引入面向对象的概念,ABAP逐渐会发展成 为一种面向对象的高级语言。 总之,ABAP己逐渐成为一种完善、高效、功能强大的编程语言,为世界各地所有的SAP应用程序员提供优化的工作环境。 3.2SAP集成接口技术 SAPR/3是一个开放的系统,支持用户开发。同时也提供了接口或接口开发的条件用于进行与外部系统之间的信息交换。SAP提供多种数据信息集成交换的方法,进行系统集成最常用的就是远程功能调用(RemoteFunctionCall,RFC)接口和业务应用程序接口(BusinessApplicationProgrammingInterface,BAPI) 【301。同时R/3也充分利用了组件技术,并且通过一个业务框架来支持系统之间的集成。 3.2.1SAPRFC接口技术 RFC是SAP在ABAP/4中进行远程过程调用(RemoteProcedureCall,RPC)的实现方式。是访问R/3的主要途径,也是R/3的编程和通讯接口。通过RFC接口能调用各种R/3的函数、模块和外部应用;其他R/3系统和应用能够通过RFC调用R/3的功能模块【川J。 功能模块在ABAP/4语言中有非常重要的地位,类似于其他语言中的函数。功能模块的设计是在ABAP开发工作台中的FunctionBuilder中进行的,同时也需要在ABAP词典中进行数据结构的定义。如果将功能模块的一个属性标记成RFC的形式,这个功能模块就成为RFC功能模块。RFC功能模块是可以在外 第3章ERP与MES集成相关技术 部程序中调用的,是访问ERP数据的一种主要形式。尽管RFC功能模块并不涉及现在比较流行的面向对象技术,但它已经被长期广泛使用,存在于许多的系统中,用来实现接口的功能。随着面向对象技术的兴起和应用,SAP又提供了更面向对象化的接口访问工具BAPI,但是由于RFC接口被广泛应用,这两种接口目前经常被同时采用。 3.2.2SAP业务框架技术 软件组件技术的发展使得软件像硬件一样进行搭积木式的重组、复用等。1996年微软与许多ERP厂商共同制定技术标准“商业应用程序接口”即BAPI,通过BAPI不同企业应用软件可以与ERP软件进行信息交换IZ5J。在SAP中,BAPI技术是随着面向对象技术引入ABAP语言的,是伴随着业务框架技术的形成而产生和引入ERP中的。框架的思想并不是全新的,它可以更好地集成各个独立的应用程序,并且便于将来的程序标准化。其目的是为了简化不同的软件产品交互方式。SAP将这种思想应用到了企业软件中,形成了业务框架的思剧3¨。 SAP的R/3业务框架为那些以业务应用组件和业务对象为基础的R/3的功能模块提供了一个框架。SAP以“SAP业务对象”的形式来管理R/3的程序与数据,引入面向对象的技术。业务框架使得SAPR/3系统可以与其他即系统或非I奶系统进行集成。业务框架的关键要素包括:业务组件、业务对象,业务应用程序接口,以及一些程序通讯标准。这种思想实质上是面向对象技术在企业软件中的应用扩展。业务组件可以看成是ERP中的模块,例如人力资源模块就是一个业务组件,它是由一些业务对象及其功能组成的。业务对象是面向对象技术的应用,它封装定义了一些业务数据、函数和接口。而且所有的业务对象都存放在ERP的业务对象仓库(BusinessObjectRepository,BOR)中。同时每个业务对象都提供一些访问接口叫做业务应用程序接口。程序可以通过一些预定的通讯方式进行接口访问,通过面向对象的方式与业务对象通讯。 SAP的业务对象封装了R/3的数据和业务流程,同时隐藏了这些基础数据的结构和实现细节。在业务对象仓库中包含许多业务对象。BAPI是由业务对象的方法来提供的。它们提供了与ERP软件的高级接口,使得ERP组件能够进行面向对象的通讯。业务对象封装业务数据和业务过程,同时隐含最底层的数 第3章ERP与MES集成相关技术 据结构和实现方法。为了实现数据和业务过程的封装,业务对象一般包括四个层次【32】,如图3.3。 | } 图3.3业务对象结构 第一层是业务对象内核层(BusinessObjectKernel),它包含核心的业务逻辑(BusinessLogic),如雇员名字,年龄,地址等。第二层包含约束条件和业务规则(负责完整性),例如不同的定价条件被分配为约定的最小销售数量。第三层包含业务对象的方法、属性、输入事件控制和输出事件,其中方法就是业务应用程序接口(BAPI)。第四层是访问层提供了一些方法业务对象的方法,如COM/DCOM、CORBA、RFC等。 3.2.3BAPI技术 BAPI是指派给业务对象的方法或程序,是可以在相应的业务对象上进行的各种操作的封装。举例来说,对客户发票来说,不同的BAPI提供了各种不同的功能,如验证;税的计算的核实、运费等;确定未付或过期支票;确定收款额等。SAP标准版本拥有一个超过200个BAPI的库,这一数字还在不断增加,用户还可以根据自己的需要自行开发BAPI。‘ 业务对象资源库【29】(BusinessObjectRepository,BOR)将业务对象和它们相应的BAPI捆绑在一起加以存储和管理。BAPI有如下特性: ●它们是和SAP的业务对象联系在一起的 ・支持以RFC调用与外部系统交换信息 ・执行的时候无须向访问程序返回任何界面对象框 BAPI具有面向对象的最大优势,包括: ・可以用任何计算机语言开发和实施27 第3章ERP与MES集成相关技术 ・支持标准接口可以与不同的通信技术兼容 ・可以进行匿名的扩展与维护 业务应用程序接口(BAPI)被定义为业务对象的方法,这些接口能被用于内部软件组件集成和外部客户应用开发集成系统。BAPI设计需要如下工具:数据字典、功能模块库和业务对象仓库。BAPI是在业务对象仓库(BOR)中定义的业务对象的方法,并且通过能被远程调用的功能模块(FunctionModule)来实现。功能模块是在功能模块库中设计定义的有时也叫函数模块,用于可供访问的输入输出参数,功能模块使用的数据结构的定义和描述在数据字典中定义。由此可以将BAPl实施的步骤总结如下: (1)在数据字典中定义BAPI中需要用到的数据结构; (2)实现BAPI的基于RFC 协议 离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载 的功能模块设计: (3)在业务对象仓库中将BAPI定义为业务对象的方法。 图3.4显示了业务对象SalesOrder以及其熟悉、方法(BAPI)等。 图3.4业务对象SalesOrder 第3章ERP与MES集成相关技术 3.3SAP文件集成技术 除了通过接口的方式实现访问SAPR/3的数据和信息集成以外,还可以通过文件的方式进行数据信息的交换和集成。在第二章已经提到,ERP与MES的集成可以采用中间文件的方法,通过文件集成的方法具有简便灵活的特点。SAPR/3同样也支持这种文件信息传递和集成的方法。 通常情况下,SAP系统程序主要与系统中心数据库中的数据进行交换,但有时ABAP程序也需要读取外部的数据源(即系统层次结构中的其他两层——演示服务器和应用服务器)中的数据。这两个层次的数据往往是通过各种格式的文件进行存储的,ABAP提供文件操作接口与演示服务器和应用服务器中的文件进行数据交换。这些文件可以用在数据的临时存储设备或本地程序与SAP系统的接E11301。例如可以将一个文本文件中的数据读取到程序中,或者将程序中的数据对象放置到某种格式的文件中临时存储。但对于演示服务器和应用服务器中的文件,SAP的具体处理方式是不同的。 由于文件名和路径名在不同的系统中有不同的格式,因而设计文件操作的程序也往往具有平台相关性。解决方法之一是使用FILE事务创建逻辑文件名及路径名,并将该名称与各个需要的操作系统相衔接,在ABAP程序中,可以使用功能模块FILEGETNAME得到当前平台可以识别的文件名。下面分别介绍如何处理应用服务器和演示服务器上的文件进行数据的交换和系统的集成。3.3.1ABAP处理应用服务器上的文件 ABAP中对应用服务器顺序文件的操作主要有五种,分别是打开、读取、写入、关闭和删除文件f30】。其中打开、关闭和删除是对整个文件进行操作,而读取和写入则是对文件中的数据进行操作。 ◆使用OPENDATASETY语句打开文件: OPENDATASETdsn<options>. 如果不指定选项,则文件dsn将按二进制模式打开。如果系统打开文件的操作成功操作成功,则系统字段SY-SUBRC返回0,否则返回8。如果未指定路径,则系统将在应用服务器上SAP系统运行目录中打开文件。 <options>用于指定打开模式: _FORINPUT读取方式,如果文件不存在则忽略此命令。如果打开 第3章ERP与/VIES集成相关技术 文件已打开,操作指针将复位到文件的起始位置。 ・FOROUTPUT写入方式,如果文件不存在则创建文件;如果文件 已存在但出于关闭状态,则删除其内容;如果文件己存在且已打开,操作指针复位到文件的起始位置。 ・FORAPPEND写入方式,如果文件不存在则创建文件;如果文件已 存在但处于关闭状态,系统将打开文件并将指针定位到文件末尾;如果文件存在且己打开,也将指针定位设置到文件末尾。SY-SUBRC总是返回O。 ・FORTEXTMODE文本模式,读取或写入数据时,数据将逐行传输, 系统假定文件具有行结构。如果要将字符串写入文件或已知现有文件时基于行结构的格式,则应使用文件模式。例如,读取在应用服务器上用专用文件编辑器创建的文件。 _FORBIANARYMODE二进制模式,读取或写入数据时系统逐字节 地传输数据。传输期间系统不解释文件内容。在将某文件内容写入到另一文件时,系统将传输源文件的所有字节。在从文件读取数据字段时,传输的字节数目取决于目标字段大小。 ・FORPOSITIONpos打开文件并将读写数据操作指针定位于位置 pos,该位置从文件其实处起按字节计算。以二进制模式工作时,经常需要指定位置;文本文件的物理寻址方式取决于操作系统,因而往往不确定其位置。 ・MESSAGEmsg系统将在变量msg中放置相关的操作系统消息。要 进行错误处理,应与通过该选项和系统字段SY-SUBRC返回值一起接收完整的错误消息。 ・FILITERflit该选项与操作系统属性相关,对于UNIX或者NT系统, 可以通过将系统指令置于flit中执行。 DATASET语句关闭文件: CLOSEDATASETdsn. 只有在重新写入形式打开文件前要删除当前文件内容时,才有必要关闭文件。 ・使用DELETEDATASET语句删除文件: DEIETEDATASETdsn・使用CLOSE 第3章ERP与MES集成相关技术 如果系统成功删除文件,SY-SUBRC返回0,否则返回4。 ◆使用TRANSFER语句向文件中写入数据: 。 TRANSFERftodsn【LENGTHlen]. 该语句将数据对象f的值写入文件dsn。 ◆使用READDATASET语句从文件中读取数据: READDATASETdsnINTOf【LENGTHlen]. 该语句从文件dsn中读取数据值赋值给变量f。 以上主要介绍了利用ABAP语言如何操作应用服务器上的文件数据,通过这样的程序接口可以读取应用服务器上的数据实现信息的传递和满足系统集成的需求。 3.3.2ABAP处理演示服务器上的文件 演示服务器即为程序员本机,ABAP中并没有直接的语句进行与处理应用服务器文件类似的操作语句,但SAPBasis系统中提供标准的功能模块实现数据从本机到服务器之间的上传和下载功能1301。 SAP系统本身提供两个功能模块DOWNLOAD和WSDOWNLOAD。通过这两个功能模块可以编写ABAP程序下载需要的SAP数据保存为不同的文件格式。使用DOWNLOAD在文件传输的时候会显示用户对话框。用于选择文件的保存地址和格式。而使用WSDOWNLOAD的时候没有用户对话的过程。其中的数据传递过程通过程序中定义的内表进行。内表是ABAP语言中的数据格式。表3.1显示了DOWNLOAD功能模块的主要输入输出参数。 表3.1DOWNLOAD功能模块主要输入输出参数 输入参数功能输出参数功能. BIN——FILESIZE二进制文件长度ACTFIUeNAME文件名 FILENAME文件名ACTFII肛TYPE文件类型FIIETYPE文件类型(BIN、FII正SIZE传输字节 ASC、DAT) 同时WS—DOWNLOAD由于是无用户对话的,输出参数只有FILELENGTH表示传输字节数。 如果需要在程序中使用程序员本机文件的数据,一般步骤是将文件中的数31 第3章ERP与MES集成相关技术 据上传到内表中,再对内表数据进行操作。可以使用功能模块UPLOAD和WS—UPLOAD实现文件上传操作,其中使用UPLOAD在文件上传的时候会显示用户对话框。表3.2显示了UPLOAD功能模块的重要输入输出参数。‘ 表3.2UPLOAD功能模块主要输入输出参数 输入参数 FILeNAME FII,ETYPE功能文件名文件类型(BIN、 ASC、DA=r)输出参数ACT功能文件名文件类型FILENAMEACT——FILETYPE nEM用户对话窗口标 题FILESIZE传输字节数 同时WS—UPLOAD由于是无用户对话的,输出参数只有FILELENGTH表示传输字节数。 总之,SAP邸提供了文件集成的接口和方法,为实现通过文件的传递数据和信息集成提供了便利的方法。例如,可以通过EXCEL文件等形式来传递数据和信息。 第4章ERP与MES集成系统设计 第4章ERP与MES集成系统设计 本章主要基于实际项目,进行ERP与MES集成系统的集成方案设计,在设计的过程中采用了两种集成方法。分别利用中间文件集成方法和中间数据库与接口的集成方法进行集成模型的设计。其中ERP系统采用SAPI奶系统。4.1集成背景分析 /\ S(荽每/,留苦o,,氍T贝』l犁_王王/7{文件}二二;/,7{霉羹翼;B-P霎S-,义/J、叫u图4.1基于手jl:文件的仿真调度流程图 第4章ERP与MES集成系统设计 这种手工的方式大大降低了工厂的生产效率。投料文件完全可以通过ERP输出下达到TB.PSS系统驱动系统进行调度仿真,然后安排详细的作业计划。‘ 综合考虑集成要求,本章主要通过两种集成方法进行ERP与MES集成系统模型的方案设计。分别设计基于中间文件的集成方案和基于中间数据库与接口的集成方案。 4.2基于中间文件的ERP与MES集成方案设计 本节通过采用基于中间文件的集成方法设计ERP与MES的集成方案。通过集成MES系统需要的日投料Excel文件就可以由SAPI奶系统进行输出,而不需要手工的输入投料信息到Excel文件。同时也可以将MES系统的反馈信息上传到SAPR/3系统中。这种基于文件的ERP与MES系统集成方案的功能可以概括如下: (1)从SAPR/3系统输出Excel日投料文件。信息主要包括序号、卡 号、优先级、交货期和数量。 (2)MES系统基于日投料计划文件进行仿真调度,安排详细生产计 划。 (3)导出MES完工信息到Excel文件。信息主要包括卡号、步数、工 序ID、状态ID、设备名和发生时间。 (4)上传完工信息Excel文件到SAPR/3系统。 集成方案的设计如图4.2。r一……一—] r一一 L~j日投料计划j~.j: ■~∥: ERP(Excel)一——一…~——一■~~:/:MES}.一…一一一一j 一:(SAPR/3)l…一,(TB-PSS): ,,- :厂一一:j。~j一71—3工信息r-----I(Excel) 图4.2基于文件的ERP与MES集成方案集成系统的程序是通过ABAP语言实现的,通过在R/3中编辑对应功能的 第4章ERP与MES集成系统设计 ABAP程序实现输出和上传Excel文件的功能,主要的程序包括两方面的功能即输出Excel文件的ABAP程序和上传Excel文件的ABAP程序。ERP系统做出初步作业计划下达为Excel文件,MES系统基于初步作业计划进行更详细的作业计划的指定来知道生产;最后,来自MES系统的完工信息输出为Excel文件再反映到ERP系统中。 如果文件的数量很多可以完全将文件看做一个文件库,类似于数据库,通过文件库收集信息实现系统之间的数据信息交换集成,这种集成方案可以设计为以下的模式:1)将ERP系统和MES系统中的输出文件转换成通用文件格式。2)将通用格式存放于中间文档库中,以供调用。3)ERP和MES系统可以分别调用通用格式的文档,然后转换成自己需要的格式,从而进行数据信息的交换实现系统集成。这样的集成也是基于中间文件的间接集成模式,集成模型如图4.3。 铮固回铮 图4.3基于文件库的中间文件集成模式 4.3基于中间数据库与接口的ERP与MES集成方案实现 本节通过采用基于中间数据库与接口的中间系统集成方案来设计ERP与MES的集成系统模型。设计中ERP采用SAPR/3,MES采用TB--PSS系统。4.3.1集成功能分析上一章通过中间文件实现了两系统之间的信息交换和集成方案的设计,但 第4章ERP与MES集成系统设计 是随着集成系统实施的深入,对数据的需求量会逐渐增加,单纯的文件集成方法已经不足以满足系统之间集成的需要,这就要求引入一种新的集成模式和方法。引入中间数据库进行系统之间的集成就是一种很好的方法,这种方法更适合于流程级别的系统集成。 MES(TB.PSS)系统需要来自ERP系统的日投料计划,同时MES也将生成完工信息反馈给ERP系统。在集成的过程中,MES(TB.PSS)系统是基于access数据库的,可以将日投料信息写入MES(TB.PSS)系统的Access数据库中,然后MES(113.PSS)系统基于数据库中的日投料计划进行仿真和指定详细生产计划。引入中间数据库后,可以通过以下步骤实现两系统之间的集成: (1)通过接口调用的方式将ERP系统中的日投料信息包括卡号(物料 号)、优先级、交货期、数量等导入中间数据库。 (2)通过接口程序将中间数据库的日投料计划信息导入MES (113.PSS)系统的access数据库中,用来驱动MES(TB.PSS) 系统的运行。 上面的步骤是实现通过中间数据库的方式将ERP的日投料计划导入MES系统实现驱动MES系统运行作出详细生产计划的作用。为了实现这个过程,需要开发基于中间数据库的中间系统,通过中间系统调用ERP的接口,使得ERP的计划信息首先传递到中间数据库然后再传递到MES(TB.PSS)系统的access数据库,驱动MES(113.PSS)系统的运行。 当MES(TB.PSS)系统制订详细作业生产完成后,收集完工信息用于上层管理系统进行计划和统计。要实现这个功能需要通过以下步骤: (1)将MES(TB.PSS)系统收集到的完工信息主要是完工数量通过数 据库接口传递到中间数据库中。 中间系统通过ERP接口将完工信息写入ERP用于计划统计。 4.3.2集成方案设计 引入中间数据库的间接集成模式很好的满足了MES(TB.PSS)系统与ERP系统之间的集成需求。本节主要基于具体的集成模式进行集成方案的设计。 根据集成功能的需求要实现将集成需要的数据从ERP下载到中间数据库中,ERP必须有支持下载数据的接口,通过对接口的调用实现ERP数据下载到中间数据库中。实现这个功能,一方面,必须在ERP中开发实现下载数据的接 第4章ERP与MES集成系统设计 口;另一方面,必须基于中间数据库开发中间系统用来实现调用ERP接口下载数据到中间数据库中。 同时,对于将MES收集的完工信息也必须通过这个中间系统写入ERP中。这些需求就要求两系统之间的集成模式不只是基于简单的中间数据库模式,也必须通过接口与中间系统实现信息的传递和集成。 最后,要将从ERP系统下载到的数据信息传递到MES系统,或者将MES系统的完工信息传递到中间数据库都必须通过数据库接口实现,完成数据在不同数据库之间的转移。 总之,综合考虑两系统中间的集成需求,采用基于中间数据库的中间系统集成模式,并通过接口调用的方法实现数据信息的传递是最适合的集成方法。选择好集成模式以后,基于中间数据库和接口的中间系统集成模式进行集成方案的设计。在集成方案的设计中,可以分为以下步骤: (1)集成接口的设计。由于ERP系统采用SAPR/3,要从邸下载日 投料计划信息和上传完工信息到I奶,必须通过接口的方式。在 第三章介绍了I奶的接口集成方式,可以通过RFC接口或BAPI 接口进行系统集成。在这两种接口方法的选择上采用的原则是: 如果已经有标准的BAPI接口就使用标准BAPI,否则就设计开 发RFC接口实现数据信息的下载。 (2)中间数据库的设计。采用中间数据库的集成方法进行数据信息的 交换和集成。这里的中间数据库不是单纯的数据库而是中间系统 的基础,这里采用SQLServer2000数据库。 (3)中间系统的设计。中间系统是实现系统集成的模块,通过中间系 统可以调用RFC或BAPI接口实现数据信息的下载或上传。中间 ’系统的设计是基于VB程序设计语言的;并基于SQLServer2000 中间数据库。 (4)数据库数据导入导出。通过后台程序的操作实现数据信息由中间 SQLServer2000数据库转移到MES系统的Access数据库(主要 包括日投料计划数据的转移)或MES收集的完工信息转移到 SQLServer2000数据库。 以上提出了集成系统模型设计的步骤,利用基于中间数据库和接口的中间系统的集成方法,实现系统集成的框架图如图4.4。37 第4章ERP与MES集成系统设计 淞 (113一 P:SS) 图4.4基于中间数据库与接口的中间系统ERP与MES集成框架图38 第5章基于中间文件的ERP与MES集成系统实现 第5章基于中间文件的ERP与MES集成系统实现.上一章设计了两种集成方案,本章针对第一种方案设计了基于中间文件的ERP与MES集成系统。并讨论集成方案的实现。集成系统的实现主要有三个步骤即: (1)从ERP系统输出计划文件信息; (2)MES系统根据计划文件进行详细计划制订并采集完工信息文件输出;(3)将完工信息文件上传到ERP系统。 下面分别对这三个集成实现过程进行介绍。 5.1从SAPR/3输出日投料计划文件 SAPR/3系统的文件集成接口为实现基于文件的系统集成提供了便利。通过ABAP语言编辑程序抽取R/3的计划信息到演示服务器的Excel文件。首先,编辑ABAP程序“ZRMM_WCQ_0001”在ABAP编辑器中,用于实现抽取R/3的计划信息。读取ERP的计划信息到Excel文件。部分数据传递模块的ABAP代码如下: REPORTZRMM_WCQ_0001nostandardpageheadingline-size100. 毒定义部分 tables:mkpf,mseg. data:beginofit—mainOccurs0, itemlikemseg-EBELP, AUFNRlikemseg-AUFNR, priority(1)typeC, datetime(20)typeC, MENGElikemseg—MENGE, endofit—main. 奄选择屏幕部分 select-options:p_dateformkpfoBUDATobligatorydefaultsy—datum. start.of-selection. performselect—data. end.of-selection.39 第5章基于中间文件的ERP与MES集成系统实现 为了方便操作将程序“ZRMM_WCQ_0001”指定给事务代码“ZZMM”。事务代码是在SAPR/3系统中能够方便的调用所对应的程序。调用事务代码“ZZMM,,执行下载计划日投料计划信息文件的程序,输出的日投料结果作为SAP报表显示在屏幕上,主要包括了卡号、优先级、交货期、数量。如图5.1 图5.1日投料计划SAP报表 然后,将SAP报表保存为Excel文件,通过依次选择“清单”、“保存”、“文件”,选择文件格式为Excel,保存到本机上。如图5.2。 图5.2保存SAP报表为Excel文件 第5章基于中间文件的ERP与MES集成系统实现 打开Excel文件,显示日投料计划信息如图5.35。 i鬯】文件Q9编辑哩)视图鬯)插入辽)格式Q)工具辽)数据辽)窗口世)帮助噬)!兰釜塞璺型1望!垫!主:叠:!兰:!堡三:!!!塑鲨舀i竺 玉生一=:=:.::,兰主望。塑.壁塑竺兰.:翌:…二!。:兰:竺竺!!一遴!!!堡苎!籍 AI,五1 ^lBCDEF 11130048681412005-6-58:255,000 22300486814i2005—6—58:265.000 3330048681412005-6-58:265.000 4430048681412005-6-58:265.000 5530048681412005—6—58:265.000 6630048681412005-6-58:265。000 7730048681412005—6—58:265。000 8830048681412005-6-58:275.000 9930048681412005—6—58:275.000 1010300486814i2005-6-58:275。000 111130048681412005—6—59:095.000 1212300486814i2005—6—511:265,000 131330048681412005-6-51i:275.000 141430048681412005-6-511:275。000 151530048681412005-6-511:275。000 161630048681412005-6-512:305.000 171730048681412005—6—512:315。000 181830048681412005—6—512:325,000 19 图5.3Excel文件日投料计划 MES制订详细生产计划并输出完工信息文件 ERP系统输出日投料信息为Excel文件以后,MES(TB.PSS)系统读取ExcelMES(TB.PSS贝岭仿真系统)读取日投料计划Excel文件进行仿真安排计 415.2文件,依据文件信息仿真制订详细生产计划。并将完工信息输出为Excel文件。划,界面如图5.4。依次选择按钮“信息加载”、“模型”、“选择”,选择Excel文件,然后点击“开始仿真”按钮进行仿真。 l詈一 ?。一=『j一 . 图5.4MES系统基于日投料计划进行仿真 仿真结束后,MES系统可以收集生产线上的完工信息然后将这些信息输出为Excel文件,完工信息包括卡号、步数、工序ID、状态ID、设备名和发生时间。如图5.5。42 第5章基于中间文件的ERP与MES集成系统实现 i渤寸件∞编揖∞视嗣∞插入∞格式∞T且∞麴摇∞商口叫帮且}I∞AdobePD?i!堂:塑垒型!曼i鍪!璺:!:l婆!三二!!!塑.竺盗i兰竺 !望:。:::兰!}望二!三!!叠!!篓竺篓兰:笙望鉴:釜墨!望:壁:蔷 i兰兰曼潼 A1,詹117 ABCDEFGH l1171100MRS3545 211723.01E+080STP0194 311723.OIE+082STPOI114 411733.OIE+080ⅢAT05120 511了33.OIE+082ⅢAT05150 6100100MRS35267 了l10023.015+080WFMOI5了1 只l10f)夕3.01E+OR夕WFll01636 910034.09E+080STP07707 1010034.09E+082STP07727 1111744.18E+Og0IIRl0985 12{11744.18E+082IIIU01000 13{79100MRS341299 14|7923.OIE+080STP041317 15{7923.OIE+082¥7P041337 167933.OIE+080IAT041344 17{7933.OIE+082HAT041374 18 图5.5完工信息 5.3上传完工信息文件到SAP邸 MES输出完工信息文件后,SAPR/3系统通过ABAP程序读Excel文件,将文件上传到刚3系统中,通过SAP报表显示在界面上。实现这个功能主要需要通过SAP的文件接口,利用ABAP的上传文件功能模块“WSUPLOAD”实现。. 在ABAP编辑器中编写程序“ZRMMWCQ0002”并指定给事务代码“ZYMM”。ABAP程序代码中主要的部分包括两个子函数如下: atselection-screenonvalue-requestforp_file. performget_filepath. start.of-selection. performread—data. end.of-selection. formget_filepath. callfunction’WSFILENAMEGET’43 ▲第5章基于中间文件的ERP与MES集成系统实现EXPORTD叮Gdeffilename=”def_path=’c:\Imask=’.半.txt.’mode=’0’title=’SelectFile(.txt)toupload’IMPORTINGfilename=p__fileEXCEPTIONSinv_winsys=1nobatch=2selectioncancel=3selectionerror=4others=5.readdata.CAI,I,FUN(了rION’WSUPLOAD’EXPORTⅡ呵GFIUeNAME=pfileFILETYPE=’DAT.TABLESDATATAB=itmainEXCEPTIONSCONVERSIONERROR=1FILEOPENERROR=2FILEREADERROR=3INVAUDTYPE=4NOBATCH=5UNKNOWNERROR=6INVAI。IDTABLEWIDTH=7GUIREFUSEFIIETRANSFER=8CUSTOMERERROR=9OTHERS=10.代码中使用了两个功能模块“WSUPLOAD”和“WSFILENAMEGET”R/3的事务代码栏中输入事务代码“ZYMM”可以调用要上传的完工信息Excel文件,实现文件上传到SAP刚3系统中。然后通过SAP报表的形式显示在界面上,如图5.6。endfoITll.form用于获取文件信息和上传文件【30】。在SAP 第5章基于中间文件的ERP与MES集成系统实现 Q.酚《!鏊{o@e昼衄∞;怨铂。固l图囡。@凰ZRMM_WCq_0002 CardnoStepsOperationStatusEquipmentnoTime 117100MRS3545 11723006992210STP0194 23006992212STP01114 11733006992390MAT05120 11733006992392HIAT05150 100100MRS35267 10023006992260WFIE01571 10023006992262WFM01636 10034091706940STP07707 10034091706942STP07727 11744184393170HIIRl0985 11744184393172MIRl01000 79l00WIRS341299 7923006992210STP041317 7923006992212STP041337 7933006992390MAT041344 7933006992392MAT041374 图5.6完工信息SAP报表 这样通过ABAP程序实现了将Excel文件上传到SAPPJ3系统中的功能完成了信息的集成。 综上,通过Excel文件可以实现由ERP到MES,再由MES到ERP这样一个循环的信息集成,实现了信息的双向共享和数据传递。这种利用间接模式通过中间文件进行系统集成,有便捷的特点,同时可以实现数据级别的系统集成和基本的流程集成。使得两系统之间建立紧密的数据信息联系,实现资源共享。45.117 第6章基于中间数据库与接口的ERP与MES集成系统实现 第6章基于中间数据库与接口的ERP与MES集成系统实 现 本章主要根据第四章提出的基于中间数据库与接口的集成系统方案进行集成系统模型的实现。在集成系统的设计实现中主要包括ERP集成接口的设计实 通过基于中间数据库与接El的中间系统实现ERP与MES之间集成信息的交互和系统的集成。 6.1集成接口设计与实现 集成接口的设计遵循上一节提出的原则,即如果在SAPR/3系统中已经存在适合的BAPI接口就直接使用,如果没有就用ABAP开发RFC接口。本节主要详细分析主要接口的功能和设计实现。 6.1.1接口功能 接口的功能可以根据从ERP下载或者上传到ERP的不同分为两个部分。一部分是用来下载ERP数据到中间数据库的接口;另一部分是上传数据库的信息到ERP的接口。 在下载信息的接口中。MES(TB—PSS)系统需要ERP(SAPR/3)中的日投料计划信息,主要包括卡号(物料号)、优先级、交货期、数量等。这些信息主要包含在ERP系统中的物料信息和生产订单信息中。同时为了系统以后扩展的需要其他的物料信息和生产订单信息也需要被下载到中间SQLServer2000数据库。物料信息中应该包括物料组和物料主数据的信息。在物料组中包括一些基本信息如所属集团、部门、工厂、以及物料组编号和其他一些相关信息。在物料主数据中包括所属部门、工厂、物料组、以及物料的长度、重量等一些其他相关信息。生产订单信息应包括订单编号、工厂、工作中心、工艺路线等其他相关信息。现;中间数据库的设计和中间系统的设计与实现。 ————————————————————————————————-——————————————————————————————————————————————————————一一第6章基于中间数据库与接口的ERP与MES集成系统实现 同时,要实现中间数据库信息上传ERP系统中,也需要这样的接口用来上传信息。综上,集成接口可以分为四种: ’ ’ (1)实现下载物料组的接口; (2)实现下载物料主数据的接口; (3)实现下载工作订单的接口; (4)实现上传完工信息的接口。 基于前面提到的原则,接口的实现可以选择已经存在的BAPI接口,或者开发RFC接口。通过对接口的调用实现系统的集成和数据信息的交换。 6.1.2下载物料组接口 物料组是同类物料的集合,下载物料组可以实现物料的更好分类。对于下载物料组信息的功能SAPR/3已经提供了标准的BAPI接口。因此,这个接口我们采用R/3系统的标准BAPI。由于BAPI是业务对象的方法,对于这个接口,首先要了解物料组这个业务对象的结构。包括接口,关键字段、属性、方法、事件。物料组的业务对象结构图如图6.1。 显示聪黎类壁BU51072 锣国扣@圆鸥露程序参数例外B0数据植块 _,__一一___I一。黑_嘞荆____啊蝌__唧_呐荆郴唧___州州_唧__州_____恻删啊__胃_荆_唧唧_呵唧博_啊唧___啊州____卿惭啊____愀啉_唧—_愀一一由接口一口关键宇段 L——_IaterialGroup.MaterialCroup,物料组 一白属性l卜_———疆aterialGroup.ObjectTy口e品对象类型 卜———飞aterialCroup.DiviSion,晶产品组 L_———.ⅡaterialGroup.Description,描述 一臼方法 ————1IaterialCroup.SaveReplica,o分配物料组 0BAPI读取物料组/物料组描述 ————ⅢaterialGroup.ExiStenceCheck,检查对象存在 ————_MaterialGroup.Display,显示 ————ⅢaterialGroup.Create,色U建 ———叫at————_豫atcrialGroup.Edit,更改 erialGroup.Delete一删除 图6.1物料组业务对象结构图47 第6章基于中间数据库与接口的ERP与MES集成系统实现 物料组中的方法MaterialGroup.GetList可以读取物料组的基本信息。实现这个方法的功能模块是BAPIMATERIALGROUPGETLIST,这个功能模块的访问类型是RFC,即可以通过外部调用的。BAPIMATERIALGROUPGETLIST的输入输出参数分别如图6.2和图6.3。 随蛳施№j≥。j脚I』TERIALGROⅡP.GET.LIST脚≥童鬟_誓一oi;}≯Attr龇esn州lE删i甜咖lTablm;瓯唧邮l蚍code};≥:oi11。眵数名霖}鼯OmE9clIIPTIO麟1.I髓B^FIWGS_IG_DESCR_SHORT-FLAG{Type…l§}j蛳印融省值可j圭…l晦。i慰溶霉‰{口|f{e呻j5lhg删劬印DesⅡb‰lLANGUAGELIKE}APInGS_LANGUAGE-LANGU一1 :一 h需嘶畸 ILANGUAGEISOLI珏IiAPING5!一 一LANGUAGHIEU。Is0一臻嘛a[[of加10190639 图6.2BAPIMATERIALGROUPGETLIST输入参数 氏弱圈函甬I妇爹jj一 i攀爹BAPII^TERIALGROUPGETLIST-蠢e§眩i爹萋jj:。1、≥一j誊i|{I}|?j≯i爹ji誊;辫i≥萋i!。麓羞攀鬻。i豢 i。i叠|¨;;I ≥Atttlxates;州l酬i∞卿7羞i¨|黧薯7-w.。,__;? Tal:||esi|Exc咖}Sota'cecode隧攀薯豢霪攀篱;爹爹誊溪薹i; 渗数名称}rypBspeC.{参考打印瑚胁 弛TERI舡m0吼^l『GE}I旺筘IHG叫mI址GR0nR哪Eij脚R坤Ta6|e}|4a恻G『雌籼删.GR唧SLI珏辩Im5一nTERI^L一GROUP薹脚州Ta6|e14a州口雌 , 9;HORTDESCRIPTIONSL.IKEBAPI.GS_nEGROUPS一姗-DEscl}≯脚0u叫T拽・№利咖Des呻‰… 秉ETURNLI跹8直PI跹172望R‘eturnPaaneI:a's(Ewnt/E『fof) 图6.3BAPI_MATERIALGROUP—GET_LIST表参数 这里的输出参数通过表参数的形式实现。定义了输入输出参数后通过ABAP程序实现具体数据的操作。作为接口,在中间系统程序中通过对接口的调用可以下载物料组的信息到中间数据库。 6.1.3下载物料主数据接口 由于在SAP的标准BAPI中没有下载物料主数据完全信息的接口,遵循前面提出的接口应用原则这个接口通过RFC功能模块来完成,在ABAP语言中功能模块相当于函数,RFC功能模块是可以通过外部程序调用的一种SAP接口函48 第6章基于中间数据库与接口的ERP与MES集成系统实现 数。物料主数据,是包括在每个物料组的具体物料的详细信息。这里主要通过 一个RFC接口实现下载物料主数据的功能,为了方便数据的输入输出需要创建 一个结构类型,可以作为输入输出参数的参考类型。如图6.4创建了结构 ZSSFl6。 结构短芟本 ZSSFl6 SFC:Materialmaster 溯舌 Att眦es’Components 瓣融l@ l Entryhelplcheck l货币,数量宇段|} 1/41 到|吲吲酬酬因 RTy…lcompc)nent 暖缸ATMR霸南ERKS曩§盯矗RT [1i]IATKL D type DTyp [ i— Component长度 184494033 小数位{短文本 kATNR'CHAR CHARCH^RCHAR 0黼号 0l工厂 广;曹ERKS 矗TART o蛔湫 O}|勿料蛆 LiI^TKL JAKTX 豳iaKTXr]童EINS臼bISPO l瓤EINS |b:sPo bl9【3R}貔STRF}|GROES _bISGR 曩|GROES ℃H^R打精IT|cH^R隗^I} 唾 o物科描述 o瞬许量举莅l o濂户控毒I者 薹蠹STl}F如AN 髓^II{QⅡ纽 鲫直ll i3 3213 0嗍 3瓣划段勤啥入值 0呔小7蝴3磕 3i!!莺 O重量单位 3长度 l瓤RGET霎竦G肼 ,一{ I瓤EI l耙mI}乳棚G 貔REIT’豹髓E瓤EAB噩 貔RVoL ij IITGEI133 13131331331884哇 曩bEIEI 。 细IT 邸矗l『 i』“EⅣG ,一*} ■蠹REIT 一, 印AN |QU直ll稠ITQuAN1,UNIT 3宽度3|高度 -.HOElm ,一j :?赴^矾 王:蠹RVOL二缸VOE 0}长度f宽度墒度的计量单位3觅许的包装体积 kRVOE 貔ANII&ESZN izEIFO ~}—。—’一 ’o晦积单位(允许打包体积) 0蛰际姘得(洲ful)C) 0莓潜耍受号(无文{当箭匣莱绷 l一虹珏11 王虹sZI『 ~,DZEIFO ;cHAR CHaR cHAR o舞证的页格式(不带凭{正管理晨统) 0淳列号参数艾件 ;SERHP ~壁R垒班!c珏^R 49 第6章基于中间数据库与接口的ERP与MES集成系统实现 iERSDA二lERSDADATS80锄建日期 f麴RNAM一l趋RNANCHAR12o锄建对象的人员名称L_LAEDA—LAEDA≥ATS8o嗫近一次更改的日期AEN^狐‘1鱼ENAMeHAR120受改对象用户的名称LBISMT・=】§ISIT℃HAR1801日物料号 REVLVt:寂EVLVeHAR20叛次; l瓤ESKZl=j蠹ESKZ|CHAR1o梁购类型 iIEINR五bZEINR℃_lIAR22o&档号码(无文档管理系统)}乳GPRO;一_LGPROeH^R4o陵货库存地点I册IME口bTIME雷I再s6oU:次更改的时间}WVCR:[jIVGRl弧R3O物耩姐1 l轴VGR2i缸VGR2eH^R30}l勿料组2 暖FOR耵圈FORIT℃HAR4o睦产备忘录的页格式卜{LGFSB[]LGFSB|eH^R4o嘛智采购的缺省仓错位置FERnl口蠹ERTH|cHAR18o§兰产,检验备忘录[基缱[]LABSTbUAN133蛔畏制使用的估价的库存U配垦至基基£]爱EINH扫Ec50除格单位 图6.4结构ZSSFl6定义图 定义了结构ZSSFl6后可以依据这个结构在函数编辑器中定义RFC功能模 GETPRODMASTER。然后定义这个功能模块的输入输出参数如图: 誊一-?盈Fc—GET—PROD-融STER.|!!I鳓峨鬻薹。l≥j≥薹i…|;|『≯0 , 。Attr白ut瞒‘IFrq)o-t◇Exporti曲alghglTablesiEx唧№佑lscxl'cecode}≥ 跚刚鸱l冽测 参数名称lType…参考打印{缺省值可迄~归ass…短文本 PARTNOLIKEZSSFl6一l【AT积p㈦Materialnu'nberLASTEDITDTLIKEZSSFl6一LAEDA酊.DATUM陵bateoflastcha-日ePLANTLIKEjZSSFl6一¥EHSI^●需‰t IJSTEDITTII}Il【ElZSSFl6一UTI】IE}I一譬i}rimeoflastchange 图6.5ZRFCG王汀PRODMASTER输入参数 FuoctionrrIodl把ZRFC—GET—PROD—MASTERAc墩e Attributes;ImportiExportiChanc雪ncjTablesiExceptionslSourcecode l参数名称{Typespec.{参考打印可选的短文本 lPROD一ⅢASTER}IKEIZSSFl6≯|sFc:Materialmaster 图6.6ZRFC_GEr-PROD_MASTER表参数50块ZRFC6.5和6.6。j釉舅舅醇螂辑 第6章基于中间数据库与接口的ERP与MES集成系统实现 输入输出参数都是参考结构ZSSFl6的包含了物料主数据所有的基本元素。定义了输入输出参数后可以通过在代码编辑器中编辑ABAP程序实现数据的操作。同时在中间系统程序中调用这个接口可以下载物料主数据信息到中间数据库中。 6.1.4下载工作订单接口 这个接口的设计同样采用RFC接口来实现。由于工作订单一般分为表头区和详细数据区,所以下载工作订单分为两个子接口来实现。一个子接口ZRFCGETPROHEADER2用于读取工作订单头;另外一个子接口ZRFCGETPRODETAIL用于读取详细的工作订单信息。下面分别来介绍这两个接口的设计过程。 首先,创建下载工作订单头的RFC接口ZRFC—GET_PRO—HEADER2。为了收集订单头信息,在数据字典dPC,I建结构ZPRO—HEADER2,如图6.7。 :1赫蓉i篓;j;≤i簧嘲等§i;}|;|}ZP。RO_HE&‘DER。2ij谶滔iii j短羹笨jij麓蔫:j≤j≤≥Workord吖header j『;;{|iiii攀;攀≯ll;爹;i≯;I;。:|;≯;? Attrl3utos‘ComponentslEntryh却,checkl货币,数量字段≯i-jj0涎测阑圈阍隔l圈i酬|仑|l1/33}ⅢlCompot艳nt|RTy…ComponenttypeDTyp长度I小数位i短文本 一{‰UFNRi【~!AUFNRbHAR120——汀单编码 髓RKS王j|IrERKSD|eHAR4O —_工厂 AUART‘一:[AUFARTCHAR40汀单类型 q——} I—j_队TNR:5|clDI[ATNRCHAR180汀单的物科编号REVLV二’囊EVLVeHAR20皈次 I{l【DAUF=|cOKDAUFCHAR100 8o瓣开始%肖售订单号GS积S,二boGSTRSDATS DISP0,■boDISPObriAR3o融订单的MRP控制者GAMNG:『|GAIiNC’buAN133订单数量总计 lVERID・_hERIDCHAR40|生产版本 孤RBPLhRBPLbHAR80I工作中心 kUNNR5-_kIINNRbHAR10o自驴编号1 kDMATkDMAT|CHAR350客户物料 {AEDATj~|AEDATbATS8o嚏近一次更改的日期 瓤EwA弧…hEHAⅡ|cHAR12om改对象用户的名称iMATKL溆ATKLCHAR90物料组 麴IAKTXz塑AKTX℃HAR40o物捌描述图6.7结构ZPRO—HEADER2定义图 第6章基于中间数据库与接口的ERP与MES集成系统实现 定义了结构后就可以参考结构定义RFC功能模块ZRFCGETPROHEADER2的输入输出参数了,参数的定义如图6.8和6.9。 7_RFC—GETPRO.一HEADER2ActaveFtaxtim玎付拍 Attributes。IrnportiExportiChanginglTableslExceptionsiSourcecode l参数名称 lPO—NO liPLfiNT iERDATlType…l参考打印【缺省值可j盘..1pasi..|短文本幽汀单编码。’]乳IKE:IzPROHEADER2'_-AUFNR韭IKE1IZPRO—HEADER2--WERKS乳IKElIZPRO—IIEADER2-ERDAT飘丘厂翮鱼近一次更改的日期 爱。勘建豹时涠 冈淀改在liERFZEIT}/匝ZEIT乳IKE{zPRo~HEADER2-ERFZEIT扛IKE|^uFK—AEzEITF 图6.8ZRFC_GET_PRO_HEADER2输入参数 。_。*…≮一“ FI妒ct幻nn_lod妇jo¨;}ZRFC—GET—PRO—HEADER2 Chancjng‘TablesAe℃iv87毒AttrhJtes耋Import;ExportllExceptionslSourcecode|}一 图6.9ZRFCGETPROHEADER2表参数 定义了输入输出参数后可以通过在代码编辑器中编辑ABAP程序实现数据的操作,完成接口的设计。 其次,创建下载详细工作订单的RFC接I=1ZRFC—GET—PRO—DETAIL。为了收集订单详细信息,在数据字典中创建结构ZSSF09,如图6.10。52 第6章基于中间数据库与接口的ERP与MES集成系统实现 垂国移?‘。ZSSF09獭活。i短文本Workorderitem j Attrll:xatesComponentslEntryhelp/checki货币,数量字段{蚓l囝积瞄{|到{马l囤吲I愈{|1/17lc。rrIponentRTy…lComponenttypeiDTyp长度小数位瞻文本薹^UFNR;r1|^UFNR妇AR12o订单编码f和OSNR厂jI■POSN;:HAR4oboM项目号l撕ERKSl;阿ERKSD{CllAR40}工厂瓤ATNR瓤ATNR|clIAR180翰斜号纽DMNG撕OXNGbu^N133幡求数量缒NMNG担脓HG|。uAN133|l是货数歉DXAT敦DMAT踟^R35o旨户物料MEzss}|瓤霄THS{【rN工T3o蠹本计量单位MATKLE1瓤ATKLbmAR90物科组i^LPCR(---]℃sALI屯R|[7,tAR2o椿代项目:组辆AKTX图抽[AKTX£:ll^R40o晒料描述幻umPSijjbumps妇^R1o垃拟琐目标识|SOBSL?ijSOBSL|eH^R2o幅殊采购类量lo教EVLVE?歉EVLV.}L'HAR2O缎、史lSHKZG■;ISHKZCtC:lIAR1o悟方,贷方标识LGORTijLGoRTD蕊i^R4o漳存地点轴UANTITY熏独囝翻匪|Qu^N133藉求数量 图6.10结构ZSSF09定义图 翰国国@嘴≤薹『0i’;i 黛女ij枣亡_垃睁itI;i一}|;¨誓爹}|;|《 ‘≯一≯7ZRFC—GET_PRO—DETAIL ≯。 i” 篁Attributes’Import£Export◇融叼呻≤T期es◇Exce—ptionslSourcecodel≯l参数名称|Type…{参考打印l缺省值可选…Pass…i獬lPO—NO扛IKE{ZSSFOg-AUFNR}.一1 i}翻时单编码 PLANTLIl【ElZSSFOg-wERKSL。}离l工厂ERDAT扯II(E羝uFK—ERDAT‘一i翮拉建日期ERFZEITIIKE甄uFK—ERFZEIT翮轴建的时阔AEDATLIKE甄uFx—AEDAT翻淹改订单主文件日期AEZEIT乳IKE羝uFK—AEZEIT9l睫改在 图6.IIZRFC_GETPRO_DETAIL输入参数 Func廿onmoduleZRFC—GET—PRO—DETAILActive AttributesiImport;ExportlChangingTablesiExceptionsi麓{|D||鸥{l园{|臣i 参数名称}Typespec.1参考打印l可选的{短文本PODLIKElZSSF09.一:Workorderitem 图6.12ZRFCGET_PRODETAIL表参数53然后,参考结构定义RFC功能模块的输入输出参数,如图6.11和6.12。。≯f|蔓薹I¨毒誊i 第6章基于中间数据库与接1:3的ERP与MES集成系统实现 定义了输入输出参数后可以通过在代码编辑器中编辑ABAP程序实现数据的操作,完成接口的设计。 以上通过设计两个RFC接口实现下载工作订单数据信息的功能,中间系统通过调用接口实现将ERP数据信息下载到中间数据库。 6.1.5上传完工信息接口 以上的接口都是用来下载ERP信息的接口,最后一个接口的是用来上传完工信息主要是完工数量到ERP的接口。这个接口将采用SAP提供的标准BAPI接口。通过调用这个接口可以将中间系统数据库收集的MES完工信息上传到ERP系统用于计划统计。这个接口主要是通过RFC功能模块BAPIGOODSMVTCREATE实现的,这个功能模块的参数包括输入参数、输出参数和表参数。参数的定义分别如图6.13、图6.14和图6.15。 ; 爹AtlIlU斑’州l哪i螂l№}啪l{l蛹嘲鳞;i;爹i时I脚洲姗j¨I毫蠢纛薯薹曩薯j毒i曹。。一。*。差i。 “。0-…l!艇翱墓jl|||}爹:≯iiI|i;鬻攀j1;|1蓑i鬻j-}攀攀一 Souse啦;爹爹溪i黪鬻j囊爹;.淤…蠢鬻戮 僦翮囊磁翻 离数名称}『僻…{参考打印融省值可遴。}茁i。娜 |G00Ds耵T黝豫}I珏渺12017.GI-肛迎01一 ~一霍lIa州D0口l『Ienf岫Dafa 咖DsIvT∞DE}I跹秘12017-GI__ooDEll脚C0defoTf舳fofG砒懒flTE咖}I匝秘120¨.GI_GEN-TESTRUNHPACE霹Movement 。?。篁‰Cx】ods 图6.13BAPI_GOODSMVT_CREATE输入参数 鞋娃妇ll|od|;IeB盱IC,OODSlgI'CREATE愆№ Attrlx托siImport。州l阳咖iTableslE)(cep‰lSourcecode! 高鹩称{TYpespeC.参考打印!PassValuel短艾本 {G00DSll『T-趣煳}IKEBAPl2017一G!一啦II盯蔓№州00Cl盯献№妇MefiaIDOCI盯哦Y叫ilATERIALD3C砸耵衙E器APl20IT_GLHEAD_P,ET‘IAT_D0c瞳ofMate『ialOocumnt |lIATDOCUIENTYEAR帆BAPIZOIV_G]I_HEAB_P,E'T-DOC—YEAR一 !撇利DOC.Y皤 图6.14BAPIGOODSMVTCREATE输出参数54 第6章基于中间数据库与接口的ERP与MES集成系统实现 Functionmc妯leBAPI—GOODS箍VT—CREATEActive AttributeslIml30rtlExportiChangingTableslExertionsiSourcecodeF 渗数名称|Typespec.参考打印可选的{短文本 |GOODS肌T—ITEI缸IKE≥”I— 2017一GlITELCREATE■驷aterialDocumentItems lGOODSHVT—sERIALllu船E扛IKE鎏API2017-G噩_sERIALlIuMBER离|se涮NumberlRETURN韭Il【E誊AF:RET2一・■ReturnMessages 图6.15BAPI_GOODSMVT_CREATE表参数 然后编辑ABAP程序实现对功能模块数据的操作完成BAPI接口的定义。综上完成了对集成系统需求的ERP接口的分析和设计,基于集成接口设计实现ERP系统与MES系统的集成,需要设计基于中间数据库的中间系统。 2000数据库的设计与实现。 SQLServer2000数据库特点 本文的MES系统是采用Microsoft的Access数据库,这种数据库具有使用 Server2000数据库是比较流行的一种数据库适合作为大型数 2000数据库。 SOLServer是由Microsoft开发和推广的关系数据库管理系统(DBMS),Server2000[33l是Microsoft公司于2000年推出的最新版本。是一种关系型 55中间系统中通过对接口的调用可以将完工信息写入ERP系统中。外部中间系统完成对接口的调用实现数据信息的交换和系统的集成。6.2中间数据库设计这里的中间系统是SAP--MES系统,它的开发将在下一节介绍,本节主要介绍中间数据库即SAP--MES系统SOLSewer6.2.1方便灵活的特点,但是一般上在大型系统的设计中这种数据库不常用,同时Microsoft的SQL据量管理的数据库系统。为了考虑到集成系统未来的扩展性,本文在中间数据库的选择上采用了SOLServerSQL数据库。关系型数据库就是以关系模型为基础的数据库,是根据表、记录和字段之间的关系进行组织和访问的一种数据库,它通过若干表(Table)来存取数据,并且通过关系(Relation)将这_些表联系在一起。关系数据库提供了结构化查 第6章基于中间数据库与接口的ERP与MES集成系统实现 询语言(soL)的标准接口。 在关系型数据库设计时,一般遵循以下几条规则: (1)表中的数据必须规则完整。一个数据库为了数据的本身完整,需要设 定许多规则。例如,人的年龄不能为负数,如果年龄字段出现负数,那么数据库将发生错误,这就称为数据规则完整。 (2)满足数据的完整性。数据完整性主要是指限制数据库内可能出现的值 以保证数据库的有效性。为了保证数据完整性,需要注意: ・实体完整性:表的主键字段任何部分不能为NULL. ・参考完整性:如果在一个表中含有另一个表的主键字段相对应的 字段,那么这个字段的值必须取空值,或者等于另一个表中主键的值。 (3)在设计数据库表时必须规范化。为了确保数据库设计时做到规范化, 定义了如下一些基本规则,称为范式。 ・第一范式:指定记录中的指定字段只能包含一个值。这就防止在 单个记录中的任何重复的组别。 ・第二范式:任何非关键字段必须取决于主键字段中的所有字段。 解决办法通常是将不规范的字段移到更合适的表。该范式还规定了两个或更多的表,不可以有相同的主关键字。 ●第三范式:非关键字的字段不能取决于另一个非关键字断。 ・第四范式:这种范式禁止主关键字字段与非关键字字段之间的多 重的、独立的、一对多的关系。要完成第四范式,就必须为每一个一对多的关系创建各自的表。 ●第五范式:这种范式经常被忽略。它要求将一个表分割成最可能 小的片段,以消除冗余。。 以上五中范式是设计数据库时必须遵循的准则,一般而言,数据库设计应该确保能够遵循第三范式,第四范式和第五范式相对而言应用得比较少。6.2.2中间数据库功能分析与设计 SAP--MES系统开发的主要任务是用来收集ERP系统和MES系统的各自需求信息到SAP--MES系统的SQLServer2000数据库,进行数据信息的交换 第6章基于中间数据库与接口的ERP与MES集成系统实现 与集成。 中间数据库即SAP--MES系统数据库的设计是对应于SAP--MES系统功能的:SAP--MES系统实现的主要功能是通过调用本章第三节设计的接口进行数据信息传递,因此数据库的功能主要分为一下几块: ・系统信息管理,主要包括系统状态信息表(cvlog)、用户管理表(euser)、 权限表(epermission)等。 ●物料组信息记录,主要包括物料组表(mmprodcategory)等。 ・物料主数据信息记录,主要包括物料主数据表(mmprodmaster)等。・工作订单信息记录,主要包括工作订单信息表(mfworkorder)、工厂定 义表(efactoryctrl)等。 ・完工信息记录,主要包括完工信息表(cvsappushdata、cvsappushtitle) 等。 系统数据库的设计主要包括需求分析、概念设计、逻辑设计三步骤。以上主要对需求进行了分析,图6.16直观的反映了数据库设计的主要功能模块和每个功能模块的主要表。 SAP--MES系统数据库 系物料组物料主工作订完工信 统信息数据信单信息息 管息 理 上上 系厍物物_]兀J二生 统户粒粒竹工 状管鲤王1,,信 态理表骜宴启 信表拆仨袭 息蓑,巷 表毫 图6.16SAP--MES数据库功能结构图 第6章基于中间数据库与接口的ERP与MES集成系统实现 6.2.3主要数据库表设计 本节主要介绍主要数据库表的设计,在这里数据库表之间没有建立表关系,主要是由于每个功能的数据库信息基本上只存放在一个数据库表中。表的查询是通过中间系统程序实现的。中间数据库即SAP--MES系统数据库的主要表功能说明如表6.1。 表6.1SAP--MES数据库基本表功能说明 序号 123 表名 cvlog cvsappushdatacvsappushtitle 说明 记录每一次下载的信息 收集需要上传到sap的原始数据 汇总cvsappushdata的数据,然后上传到sap,并记录sap返回的信息 45678101112131415 cvtransactionlogecompanyecompanyctrlefactoryctrlegroup eUSer 记录单据最后更改日期和时间定义公司 定义公司和工厂的关系定义工厂的控制信息定义组(用于权限管控)定义用户(帐号)定义工厂 工作订单的物料清单工作订单的基本信息 定义物料分组(收集下载物料组信息)定义物料主数据 mffactorymfworkdetailmfworkordermmprodcategorymmprodmaster 对于重要的数据库表的设计下面分别进行详细说明: 表6.2mmprodcategory定义物料分组(收集下载物料组信息) 字段名 Plantid CategorynamepartnoprefixCategorydesc PrimarykeyPKPK 数据类型 VarcharVarcharCharVarchar 长度 102010100 是否可以为Null 默认值 描述工厂物料组料号前缀物料组描述 第6章基于中间数据库与接口的ERP与MES集成系统实现 MaterialtypeVarchar20物料类型SourcetypeVarchar20货源类型UomVarchar20计量单位OthercategorynameVarchar20其他物料组ProductiongroupVarchar50替代组KeypartBit1关键物料标 记 DefaultrouteidVrarchar20默认工艺路 线 DefaultlineVarchar20默认生产线WorkordertypeVarchar20工作订单类 型 ProductiontypeVarchar20生产类型 表6.3mmprodmaster定义物料主数据(收集下载物料主数据信息) 字段名Primary数据类长度是否可默认描述 key型以为NuU值 PlantidPKVarchar10工厂PartnOPkVarchar20料号CategorynameVarchar20物料组PartnameVarchar50物料名VersionVarchar10版本DescriptionVarchar100描述ProducttypeVarchar20产品类型MaterialtypeVarchar20物料类型skuapprovedBit1产品是否被 认可 vendorcodeChar10供应商代码MainwhidChar10主仓库 ‘ UomVarchar20计量单位weightDecimal9(15,5)重量lengethDecimal9(15,5)长度widthDecimal9(15,5)宽度heightDecimal9(15,5)高度currencytypeVarchar20货币类型stdcostDecimal9(15,5)标准成本stdpriceDecimal9(15,5)标准价格unitcostDecimal9(15,5)单位成本价unitpriceDecimal9(15,5)单位价格59 第6章基于中间数据库与接口的ERP与MES集成系统实现 CreatebyVarchar20创建人『CreatedateDate8创建时间 表6.4mfworkdetail工作订单的物料清单(.下载工作订单) 字段名Primary数据类长度是否可默认描述 key型以为Null值 肋rkordernoPKVarchar20工作订单PartnoPKVarchar20料号SeqnoPKInt4序列号VersionChar10物料版本CustpartnoVarchar20客户料号RequestqtyDecimal9(15,5)需求数量IssuedqtyDecimal9(15,5)发料数量ReturnqtyDecimal9(15,5)退料数量QtybaseInt单位用量QtyuomVarchar20计量单位UnitcostDecimal9(15,5)单位成本 价 CategorynameVarchar20物料组OthercategorynameVarchar50其它物料 组 ProdtypeChar2产品类型OriginalqtyDecimal9(15,5)单位用量FromwhidVarchar10发料仓库 表6.5mfworkorder工作订单的基本信息(下载工作订单) 字段名Primary数据类长度是否默认描述 key型可以值 为Null Workordel710PKVarchar.20工作订单FactoryidVarchar10工厂肠rkorderdateDate8订单日期ScheduledateDate8计划日期WorkordertypeVarchar20订单类型ProductiontypeVarchar20生产类型SkunoVarchar20成品料号skuversionChar4料号版本SkunameVarchar50成品名SkudescVarchar100成品描述 第6章基于中间数据库与接口的ERP与MES集成系统实现 CustpartnoVarchar20客户料号EeecodeVarchar10EEE代码CmcodeVarchar20CM代码UpccodeVarchar20UPC代码ProductfamilyVarchar50产品系列ProductlevelVarchar30产品等级productcolorVarchar30产品颜色ProductlanguageVarchar30产品语言PrioritycodeVarchar30优先代码ShipcountryVarchar40出货国家ProductdescVarchar100产品描述RouteidVarchar20工艺路线OrdernoVarchar20销售订单CustponoVarchar20客户订单compcodeChar10公司代码ReleasedBit1发放标记releaseddateDate8发放时间JobstartedBit1工作开始标记Startdate‘Date8开始时间 MrpartialBit1部分领料标记MrcompletedBit1全部领料标记CancelledBit1取消标记ClosedBit1关闭标记ClosedateDate8关闭时间WorkorderqtyInt4订单数量FinishedqtyInt4完成数量BatchnoV打char20订单批号BatchdateDate8批处理时间BatchseqnoInt4批序列号 ‘ CategorynameVarchar20物料组ProductionlineVarchar20生产线ShiftVarchar20班次OnholdBit1暂停标记 表6.6cvsappushdata收集需要上传到sap的原始数据 字段名Primary数据类长度是否为默认值描述 key型NuU transseqnoPkVarchar50事务序 列号61 第6章基于中间数据库与接口的ERP与MES集成系统实现 SaptranstypePKVarchar10SAP事 务类型 FromplantidPKVarchar10源工厂fromwhidPK场rchar10源仓库ToplantidPKVarchar10目标工 厂 TowhidPKVarchar10目标仓 库 FromareaidPKVarchar10源区域 (比仓库 范围小) TolareaidPKVarchar10目标区 域 PartnoVarchar20Yes料号CategorynameVarchar20Yes物料组UomtypeVarchar20Yes计量单 位 UomqtyDecimal9(15,5)Yes数量6.3SAP.MES中间系统设计与实现 本节主要介绍实现ERP与MES系统集成的基于中间数据库和接口的中间系统——SAP—MES系统的设计与实现,该系统是基于第四章中设计的接口与中间数据库集成系统方案进行设计和开发的,程序设计语言采用VisualBasic6.0实现【34】。 6.3.1系统功能设计 SAP--MES系统程序是采用VisualBasic6.0进行开发的,系统的主要功能分为两部分:通过接口下载ERP信息到系统数据库;通过接口上传系统数据库信息到ERP系统。这两部分功能分别是基于上面章节介绍和开发的接口实现的。系统的主要功能设计如图6.17。 第6章基于中间数据库与接口的ERP与MES集成系统实现 图6.17SAP--MES系统功能图 6.3.2系统程序结构设计 SAP—MES系统采用VisualBasic6.0程序设计语言进行开发,采用面向对象的编程方法,把对数据库的访问都封装在对象中。程序设计结构图如图6.18。 第6章基于中间数据库与接口的ERP与MES集成系统实现 【调用刚3接口-V载(Ac_4专)数据 之乡 更新数据库 之乡 (结束二图6.18程序结构流程图 第6章基于中间数据库与接口的ERP与MES集成系统实现 在程序设计时采用模块化方法,同时程序设计采用窗体、模块和类模块结构。SAP--MES系统主程序运行过程可以分为如下步骤: (1)标准模块BasSfc.bas.在这个模块中,有main0方法,应用程序从ma,(nO 方法开始执行。 (2)窗体FrmLogon.frm.在main0方法中,首先调用窗体FrmLogon,要求 输入登陆账号和密码。检查账号和密码通过后,则转到BasSfc.bas标 准模块中的AfterLogon0过程。 (3)窗体MdiFrmMain.frm和FrmMnuForm.frm.在AfterLogon0过程中, 调用主窗体MdiFrmMain.frm,根据不同的权限,出现不同的子模块。 FnnMnuForm.frm动态显示每个子模块的按钮,每个按钮就是一个功能,比如Productcategoryimport,productmasterimport等等。每个按钮 的Click事件,调用BasSfc.bas标准模块中的DoMenuFunc0过程。在 DoMenuFunc0中,根据不同的功能调用不同的窗体。 6.3.3系统主要功能模块实现 本节主要介绍SAP—MEs系统的主要模块实现。具体可分为登陆界面模块、主界面模块、下载物料组模块、下载物料主数据模块、下载工作订单模块和上传完工信息模块。以下分别进行介绍: 1.登陆界面模块。如图6.19。输入用户名和密码通过权限检查以后可以登陆到 SAP--MES系统主界面。 图6.19 SAP—MEs系统登陆 第6章基于中间数据库与接口的ERP与MES集成系统实现 2.主界面。如图6.20。主界面分为菜单栏和主按钮栏。每个按钮代表一种功能, 四个按钮分别为ProductCategoryImport按钮用来下载物料组信息、ProductMasterImport按钮用来下载物料主数据信息、WorkOrderImport按钮用来下载工作订单信息、UploadGRforWorkOrder用来上传完工信息。 3.连接SAP界面。为窗体frmSapConn.frm。在首次进行下载物料组或(物料 主数据、工作订单)时,单击loadlost按钮,都会调用连接SAP的界面。也即是当每次连接SAP的时候,如果Connection对象为空,则系统会自动调用这个窗体。如图6.21。 图6.20SAP--MES主界面 第6章基于中间数据库与接口的ERP与MES集成系统实现 图6.21连接到SAP界面 此窗体包括登陆SAP所必需的输入信息,包括SAP服务器IV,Client,UserlD,Password,Language。可以把输入的信息保存到系统注册表中SaveDefault,下次自动从注册表中取出。当点击”OK”后,程序调用标准模块BasSap.bas中的函数SapLogon0.函数SapLogonO调类模块ClsSap.cls,在类模块中,包含了连接SAP的代码。代码如下: PublicFunctionLogon(hWndAsLong,~ pDestAsString,一 pClientAsString,一 pUserldAsString,一 pPasswordAsString,一 pLanguageAsString,一 OptionalbSilentAsBoolean=True)AsString SetObjSapFunction=CreateObject(”SAP.Functions”) SetObjSapConn=CreateObject(”SAP.LogonContr01.1”、 67 第6章基于中间数据库与接口的ERP与MES集成系统实现 SetObjSapBapi=CreateObject(”SAP.BAPI.1”) mDestination=pDest ’ mClient="pClient mUserld=pUserld mPassword=pPassword mLanguage=pLanguage ObjSapConn.ApplicationServer=mDestination ObjSapConn.Client=mClient ObjSapConn.User=mUserld 0bjSapConn.Password=mPassword ObjSapConn.Language=mLanguage SetObjSapFunction.Connection=ObjSapConn.NewConnection IfObjSapFunction.Connection.Logon(hWnd,True)Then Logon=…’ mlsConnected=T】nle SetObjSapBapi.Connection=ObjSapFunction.Connection SaveSetting”eFoxSfc”,”SAP”,”APPLICATIONSERVER”, mDestination SaveSetting”eFoxSfc”,”SAP”,”CLIENT”,mClient SaveSetting”eFoxSfc”,”SAP”,”USERID”,mUserld SaveSetting”eFoxSfc”,”SAP”,”PASSWORD”,mPassword SaveSetting”eFoxSfc”,”SAP”,”LANGUAGE”,mLanguage Else mlsConnected三False Logon=”CanNotConnectToSAP.”&vbCrLf&”PleaseCheck Setting.” EndIf EndFunction 载工作订单模块。这里通过下载工作订单模块来说明调用接口下载ERP信息的设计实现过程。模块主窗体为frmPPProductionOrder.frm.这个窗体是下684.下载ERP信息模块。主要包括下载物料组模块、下载物料主数据模块和下 第6章基于中间数据库与接口的ERP与MES集成系统实现 载工作订单信息的操作界面。下载的工作订单信息对应于数据库表mfworkdetail。如图6.22。首先需要选择CompanylD和FactorylD,然后点击”LoadList”,程序先检查是否连接了SAP。如果没有,则调用窗体frmSapConn.frm,输入登陆信息,然后调用函数LoadProductionOrderFromSap0。在这个函数中,调用RFC:ZRFCGETPROHEADER2,代码如下: DimobjDataAsObject DimobjRowAs0bject DimnRowAsLong DimbResultASBoolean bResult=ObjSapFunction.ZRFC_GET-PRO_HEADER2(varException,一 PLANT:=strPlant,一 PO_NO:=pstrWorkOrder,—— ERDAT:=m_SapLastDate,一 ERFZEIT:=m_SapLastTime,一 PO:=objData) m_SapLastDate=Format(objCV.109documentvaluel,”YYYY-mm-dd”) IfbResult<>TrueThen m_strErrMsg=CStr(varExceptionl EndIf ForEachobjRowInobjData.Rows nRow=nRow+1 objData(nRow,1):取出第nRow行,第1列数据 。Next 通过循环objData,即可取出订单头信息,并添加到VB框格中。选择需要下载的订单,点击”Import",程序调用函数ImportData0。在这个函数中,分别调用RFC:ZRFC—GET—PRO—HEADER2和ZRFC—GET--PRO—DETAIL,取出订单头和明细信息,并存入数据库中。69 第6章基于中间数据库与接口的ERP与MES集成系统实现 暇爨黪爱㈣囊囊囊缀瓣妻甄爨缓囊曩整磊纛夔翳鞭囊纛曩霪蘩热彝鬟戮嚣露瑟瑟缀霉嚣瑟露篓臻霪嚣鬃鍪鬟霸露瑟|翳霆霪繁薹||篓蘩鬻震霪鏊荔攀霪荔疆蘩爨鬻黪爨露翳翳缴臻臻嚣鬟爨l缀●■| 。E l卜 }t-’SelectDe¨SelecttroLoadLipmI一kll…00tixEs√一×n^11 ’l=ImD:。 万0000007001…。10∞}“““¨“11100■orkorder—o19faeteryid1100 I100 1i00 1100 1100一Ada一aWork0rderNom咖ImportWer]kOrderTypePP01P101PIOIP104P101skuⅡolevLevelS●1esD,200—200T-F1199T-h"rB299T-]tTB299≯000070000042≯000070000102浮000070000122舻000070000182T—FVIOO一删 ■j WorkOrder SeqloDetailrLrt■・Information■|eqxmxtQtyI=ste●qtyCxstPtrtseQtyllemEat■■ l■;| 图6.22下载工作订单界面 5.上传完工信息模块。窗体为frmSapUploadFGGr.frm.这个窗体是上传成品入 库的操作界面。点击工具栏上的LoadList按钮,程序把表cvsappushdata中的原始数据,汇总到表cvsappushtitle中,并从表cvsappushtitle中取出数据,显’示在框格中。然后选择需要上传的数据,点击按钮Import,调用BAPI—GOODSMVr_CREATE把数据上传到SAP中。如图6.23。70 第6章基于中间数据库与接口的ERP与MES集成系统实现 图6.23上传完工信息界面 6.4基于SAP—MES中间系统的ERP与MES集成流程实现 上一节介绍了SAP--MES中间系统的功能模块实现,系统通过调用ERP接口的方法下载ERP数据到中间数据库或上传中间数据库信息到ERP实现中间系统与ERP的信息交换与集成。要实现与MES的集成还必须通过后台接口程序操作MES系统数据库和中间数据库实现数据信息的交换。具体需求如下: (1)将中间数据库(SOLServer2000)的ERP计划信息通过数据库 后台操作读入MES(TB--PSS)系统Access数据库,驱动MES 系统仿真和获得完工信息。 (2)将MES系统生成的完工信息通过数据库后台操作从MES(TB --PSS)系统Access数据库读入中间数据库(SOLServer2000),然后通过接口上传到ERP系统中。 第6章基于中间数据库与接口的ERP与MES集成系统实现 后台接口操作功能如图6.24。 -q 丁间系统 数据库 图6.24后台数据库操作图 6.4.1从ERP到MES的集成流程 SAP--MES系统通过调用ERP接口将ERP系统SAPI帕的计划信息读入SAP--MES的中间数据库。这些计划信息主要是MES系统(113一PSS)需要的日投料计划信息。这些信息存放在SQLServer2000中间数据库中的sapmes表中,如图6.25。 氇文件逆)窗口毽)帮助∞ 固亘酉甄。1四!壤妒瞻。崮 Lot工DlRProducteriorIRDUEDateLotConat 42005-6—517:35:S4 41777343242005—-6—-51T:35:54 41777343242005—-6—-517:35:54 41777343232005—6—51T:35:54 42034641532005-6-51T:35:54 42034641532005-6-51T:35:54 30048682632005-6—51T:35:54 30048682642005-6—51T:35:54 41574018942005-6—517:35:54 41574018942005-6—51T:35:54 41574018942005—-6—・51T:35:54 30048681442005・-6・-517:35:54 来 图6.25日投料计划中间数据库表 ' 从SAPR/3获取这个计划信息是通过上一节的SAP--MES系统得到的。实 72 第6章基于中间数据库与接口的ERP与MES集成系统实现 现从ERP到MES的集成还需要将信息读入MES系统的Access数据库,这步 操作可通过后台数据库接口程序实现,这里采用VB程序实现数据信息从SQLServer2000数据库更新到Access数据库中;后台数据库接口程序采用VisualBasic6.0编写,主要是通过数据库读写接口DataEnviorment实现的。将日投料计划信息从SQLServer2000数据库的sapmes表读入Access(TJDB)数据库的 t release表,如图6.26。 图6.26数据库信息转换接口 然后可以在MES(TB—PSS)的Access数据库可以查阅日投料计划信息,如图6.27。 ;j文件∞编辑∞视图也)tSAr)格式∞记录∞工具辽)窗口嗵)帮助@MobePDF∞ ;事参:惫螽..。.。.....。.......。JR.P咖优T-I啪l!◆雹 R.rlc0DucTj咖El R.jDT-功 3004868143004868264157401∞41647304l417773432420346415 0 lu啪1lcT-P虹014 4344430 R_mt_cotm"r 5050505050500 R-DuE.D^TE 20惦一6-511:35:542005。8-51T:35:542005—6.5lT:35:542∞5—6-5lT:35:542∞5—6_51T:35:542005’6-517:35:54 R-I毗死』^YJ 厂 厂 700T01691698699 厂厂睦 0 图6.27日投料计划Access数据库表 第6章基于中间数据库与接El的ERP与MES集成系统实现 基于Access数据库的日投料计划MES(TB—PSS)系统进行生产仿真,仿真完成后MES系统收集完工信息并写入系统自身数据库。基于数据库信息进行仿真的界面如图6.28。选择“不选择”程序自动读取数据库信息进行仿真。 图6.28基于数据库信息仿真图 6.4.2从MES到ERP的集成流程 MES收集的完工信息存放在Access数据库中,然后通过上节同样的数据库后台接口操作将数据信息从Access数据库读入SAP--MES系统的中间SQLServer2000数据库中。数据信息显示在图6.29。 fIOOOl11∞咖12002‘11-Ol2盱20000420111m700119OOlOIooot110000012002-11-01绷P2∞0042000(100T00119∞10l咖11100咖12002・11-01200-20000420(!劬007001190010数据库表中的完工信息通过后台程序更新处理符合SAPR/3系统的数据格式要求,然后通过SAP--MES中间系统调用SAPR/3接口上传信息到ERP。完成数据信息从MES到ERP的流程。图6.30主要表示了上传完工数量到SAP的工作订单界面,工作订单为700119使得完工数量即交货数量从O件增加为2件。74 ●第6章基于中间数据库与接口的ERP与MES集成系统实现 i固1吾I堡产玎学鼢於菇 ●届西国岱物科昏自劝l品8釜鼎固嘲l圈强 汀簟1;|700119盛巍Pj01.物科2Q贮至QQc_撒erLack工广1100 番迭RE。“L诺酊贰c§甑§酏氆穗n涎融漩叠藕||一- … 通用的1分配i收赞l控毒自段据1日期,数量l主数据l长文本l管理机构li 图6.30上传完工数量到SAP报表 以上实现了ERP与MES系统集成的双向集成流程模型,通过中间SAP—MES系统可以实现完整的ERP与MES系统集成。通过基于中间数据库与接口的中间系统实现ERP与MES的集成,满足企业信息化发展的需要。 第7章结论与展望 第7章结论与展望 7.1结论 ERP与MES系统的集成是制造业信息化发展的必然趋势,两系统的集成实现了企业管理层与生产控制层的集成,达到了制造型企业资金流、信息流和物流的统一。系统集成采用先进的计算机技术,集成贯穿于企业的整个管理流程,集成系统的实施能够充分利用企业现有资源,提高生产率和增强企业市场竞争力。 本文在广泛阅读相关文献并深入探索的基础上,主要取得了以下成果。1.ERP与MES集成基础理论总结 在总结ERP与MES的基础理论与发展的基础上,分析了ERP与MES集成的必要性和研究了相关的集成技术。同时对于两系统的集成信息进行分析与研究。最终总结了ERP与MES集成的基本方法。主要包括接口调用集成方法、数据库集成方法和文件集成方法。 2.SAP刚3系统集成关键技术研究 围绕SAPR/3系统的相关集成技术,在分析SAPR/3的系统架构和开发平台的基础上。总结了ABAP开发语言的特点。重点研究了包括文件集成技术和接口集成技术在内的刚3集成技术。在文件集成技术中主要研究了利用ABAP功能模块对演示服务器和应用服务器上的文件进行读写操作。接口集成技术研究设计了两种接口,即RFC接口和BAPI。 RFC接口是访问刚3的基本接口。RFC是进行远程程序调用的通信标准。RFC接口通过RFC功能模块实现,并且可以在外部程序中调用。BAPI是面向对象化的RFC功能模块,在BAPI的研究中包含了业务框架技术、业务对象等面向对象的或组件化的技术。 3.ERP与MES集成系统设计 在分析上海某半导体生产企业对ERP与MES系统集成需求的基础上,采用间接集成模式并提出了两种集成方案,即基于中间文件的ERP与MES集成方案和基于中间数据库与接口的ERP与MES集成方案。分别利用文件存放与76 结论与展望 统集成和利用中间数据库存放与传输信息 集成系统设计与实现 基于ERP系统(SAPR/3)和MES系统(TB—PSS)进行基于中间文件的集成系统的设计和实现。在集成系统的设计中,通过Excel中间文件进行集成信息的传输,实现了从ERP下载日投料计划Excel文件传输到MES系统中,同时将MES系统输出的完工信息Excel文件上传到ERP系统中。 5.基于中间数据库和接口的ERP与MES集成系统设计与实现 采用中间数据库与接口的集成方法开发中间系统SAP—MES。通过中间系统实现ERP与MES系统的双向流程集成。即一方面,ERP的计划信息首先通过SAP--MES用调用ERP接口的方法读入中间数据库(即SAP--MES系统数据库),然后再通过数据库后台接口读入MES(11B—PSS)系统数据库,MES系统基于数据库信息进行仿真运行。另一方面,MES系统收集的生产完工信息保存在系统数据库中,通过后台数据库接口读入中间数据库,再由SAP--MES系统通过接口调用的方式上传到ERP中。 集成中间系统SAP--MES系统的开发主要包括以下步骤: 1.基于SAPI奶的RFC接口开发和BAPI接口应用。 2.基于SQLServer2000的中间数据库,即SAP--MES系统数据库的 开发。 3.基于中间数据库和ERP接口的SAP--MES中间系统开发。系统开 发采用VisualBasic6.0,基于面向对象和模块化的开发原则。 总之,本文通过对ERP与MES集成理论的研究提出了切实可行的集成模式和方法,并采用两种集成方法分别设计实现了基于中间文件和基于中间数据库与接口的ERP与MES集成系统。该方法对进一步深入研究ERP与MES集成理论具有借鉴和指导意义,对提高我国制造业信息化水平具有重要的理论意义。 7.2展望 虽然本文对于ERP与MES的集成理论进行了一定的研究,并且实现了基于两种不同方法的集成系统。但随着计算机及信息技术的发展,以及企业信息 第7章结论与展望 化理论的进展,对于ERP与MES集成的研究,以及企业综合信息化的研究工作有以下展望: 1.完整集成流程的实现。本文只是在研究ERP与MES集成理论和关 键集成技术的基础上对于某个特定需求用两种方式实现了一定流程 上的系统集成。对于要建立完整的ERP与MES集成系统,还需要 进行进一步的分析和研究,采用更加完善的集成方法优化集成系统 的集成流程,来实现系统之间更加紧密完整的集成。 2.集成技术上的优化。随着第三代管理软件革命浪潮的来临,各大软 件公司纷纷提出综合集成平台的概念,如SAP的Netweaver平台【35。。 基于这样的统一集成平台,不同应用系统可以实现更加灵活的信息 和流程的集成。 总之,ERP与MES系统的集成对于制造业信息化的发展具有很大的促进作用。同样对于集成系统以及管理软件集成技术的发展还需要有更加深入的研究与应用。 致谢 .致谢 在本论文完成之际,衷心感谢我的导师吴启迪教授和乔非教授。吴老师将我引上学术研究之路,带领我走进一个崭新的领域。吴老师高瞻远瞩的学术观点、严谨的治学态度、孜孜不倦的工作作风、谦逊善良的人品和对学生的至诚爱护与严格要求,使我受益匪浅。乔老师渊博的知识,忘我投入的工作作风和敏锐的观察力深深地感染了我。她在科研、学业上给予我悉心的指导,生活上对我无微不至的关怀。导师的谆谆教诲令我终身难忘。再次向导师们表示衷心的感谢和深深的敬意。 在我读研究生期间,还要感谢方明硕士、许萧红硕士、薛陈江硕士,他们在科研学习和生活各方面都给予我很多的关心和帮助。还有其他帮助过我的老师和同学,在此一并致以谢意。 衷心感谢我的父母,二十多年来的养育之恩和对我的爱护、鼓励、安慰、支持和最无私的奉献,使我能在学习中不断获得进步。 最后,对我的家人及所有关心、帮助过我的老师和同学致以深深的谢意12006年3月 , 、●参考文献 ◆ 参考文献 【1】罗鸿.ERP原理・设计・实施:【第三版】.北京:电子工业出版社,2005. 【2】RalphKappelhoff.IntegrationofERPtothefinalcontrolsystem.ISATransactions,1998, 36(4):229-238. 【3】马万太,谭惠民,黎志刚等.ERP闭环实现关键——ERP/MES/底层控制集成系统研究. 中国机械工程,2003,14(16):1387-1390. 【4】Yu—HuiTao,Tzung-PeiHong,Sheng—lSun.AnXMLimplementationprocessmodelfor enterpriseapplications.ComputersinIndustry,2004,55:181—196. 【5】William“u,T SemiconductorJChua,JoanneLam,eta1.APS,ERPandhIESsystemsintegrationforBackendAssembly.SeventhInternationalConferenceonControl,Automation,Roboticsand 2002,3:1403-1408.Vision(ICARCV2002).Singapore:IEEEComputerSociety, 【6】XiaolingHuang;Yongfu systemWang;埘ieonZhao;TianyouinoreChai.ContemporaryintegratedmanufacturingbasedERP/MES:/PCSdressing.Control,Automation, RoboticsandVisionConference,2004:1879.1884. ,5.1【7】童成刚.ERP的电子商务中间件解决方案.计算机工程,2003,29(z1):141.142. 【8】陈启申.制造资源计划基础.北京:企业管理出版社,1996. 【9】张玲,马范援.EAI在企业关键业务数据集成中的应用.计算机工程,2004, 30(1):460-462. 【10】赵炯,唐亮,王琮.SAP系统的EAI技术分析研究.企业技术开发,2005,24(11):3.5. 【11】黄学文.制造执行系统(MES)的研究与应用:【博士学位论文】.大连:大连理工大学, 2003.4. 【12]MES的技术架构.http://www.erpxp.com/Article_Show.asp?ArticlelD=2225. 【1312003全球管理软件100强.http://www.echangeconsulting.com/ERP/ERPpm/03.1.asp. 【14]MES计划与制造相统一.http://industry.ccidnet.corn/art/44/20030820/602271.html. 【15】制造执行系统论坛.http://www.orbitmes.com/MESBBS/. 【16】苏骏.基于Web服务的电子商务与ERP集成模式研究:【硕士学位论文】.武汉:武汉 理:[大学,2003.5. 【171徐然.面向ERP/MES的钢铁行业集成化生产管理系统的研究和应用:[硕士学位论文]. 大连:大连理:I:大学,2003. 【18】仇鸿平.基于ERP/MES/PCS三层结构的钢铁企业CIMS:【硕士学位轮】.上海:复旦大 学,2002.5. 【19]Crowl,Thomas , _E.DefiningtheinterfacebetweenERP,MES,andthecontrolsystem.ISATECH/EXPOTechnologyUpdateConferenceProceedings,1998,2(1):147.147.control:ERP,MESand【20]Tieghi,E.M.Thestructureofthesupportsystemstotheshopfloor 一 ◆●◆t●^rI◆参考文献controlsystems.Automation.Proceedings.Italy:InternationalConferenceduringtheCelebrationofFASTsOnHundredthAnniversary,1998:89・96.【21]余军合,祁国宁,吴昭同,顾新建.PDM与ERP系统集成方法与应用研究.计算机集成制造系统,2001,7(6):49.53.【221李涛,李农,李世斌.PDM/ERP集成技术研究.机械与电子,2002(4):57.59.【231韩向东,刘建刚.ERP与PDM的差异及集成模式研究.机械设计与制造工程,2002,31(5):65—67.【24]黄莺,张金隆,蔡淑琴,石双元.电子商务环境下ERP、SCM与CRM的整合.武汉理工大学学报(信息与管理工程版),2003,25(1):122—125.【25]VivekKale.ImplementingSAPR/3:TheGuideforBusinessandTechnologyManagers.Indiana:SamsPublishing,2002.【26]岳晓明.成功的ERP应用系统——_SAPR/3系统间接.工业工程与管理,1998,(5):60.63.『271SAP公司网站.http.sap.com.cn.【28]ThomasA.Curran,AndrewLadd,DennisLadd.SAPI奶Reporting&eBusinessIntelligence.USA:PrenticeHall,2000.【29]HuangJa.SAPprogramming.Beijing:ChinaMachinePress,2005.【30]SAP帮助文档.http://help.sap.corn.【311赵常思.ERP中商业组件BAPI的应用研究.计算机辅助工程,2004,13(3):50.53.【321赵常思.ERP中组件技术的研究:【硕士学位论文】.上海:上海海运学院,2004.4.【33]莱恩工作室.MicrosoftSOLServer2000技术内幕.北京:北京大学出版社,2002.12.【341杨克玉.VB6.0程序设计实训教程.北京:机械工业出版社,2005.2.【35]石坚燕.SAPNe柳eave广sAP新一代业务平台.北京:东方出版社,2005.6.81 ———————————尘△堕堕—j!塑型塑丝查塑堂查堕苎垒盛墨 个人简历在读期间发表的学术论文与研究成果个人简历: 王成桥,男,1982年1月生。 2003年7月毕业于太原理工人学电气丁程及其白动化专业获学士学位。2003年9月入同济大学读硕士研究生。 已发表论文: [1]Chengqia。Wang,QIAO BASEDONFci.ARESEARCHANDAPPLICATIONOFERPJNTERFAcEABAP/4・IDtemationalCoⅡferenceonAdvaricedDesignandManufacture(ADM2006),Haerbing,China,January,2006. 待发表论文:[1]王成桥,乔非-ERP与MEs的集成模式与方法研究.工业工程,2886.3(已录用)
本文档为【ERP与MES的集成方法研究与应用】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_079973
暂无简介~
格式:doc
大小:240KB
软件:Word
页数:0
分类:互联网
上传时间:2017-05-31
浏览量:33