0 引言
计算机和互联网技术的快速发展,给工业企业的生产带来了巨大变革。在工程技术领域逐渐发展起来的计算机辅助技术(CAX)以及产品数据管理(PDM)提高了设计工作准确性,减轻了设计人员的劳动强度。在企业管理领域,企业资源计划(ERP)将现代化、科学化的决策运行手段提供给企业决策层及员工,使企业的管理更加合理、有效。
然而,CAX、PDM、ERP系统往往各成体系,分别位于不同的服务器上,数据库种类、架构各不相同。各系统在解决了各自领域的信息孤岛的同时,又各自为政,呈现割据态势,信息不能被有效的整合。
与此同时,生产的信息化并没有贯穿整个生产过程,操作工人(生产、装配人员)没有从企业的信息化中获得最大的便利。操作工人在进行生产作业时,所获取的资料一般是静态、二维、片面的纸质文档,难以形成对所生产产品全面直观的认识,不能充分理解设计人员最初的设计意图,从而可能导致产品生产和产品设计的不协调。此外,工作任务清单派发后,管理层无法实时监控生产任务的进展情况,导致计划不能快速适应实际生产的变化,生产任务不能被科学合理的分配。综合来看,企业中管理人员、设计人员与生产操作人员之间均出现了信息流通不畅的现象。
为了解决工业企业中存在的上述软件系统间及不同部门人员间信息流通不畅的问题,建立了一种基于MVC设计模式的生产管理信息平台。
1 平台的网络架构
生产信息管理平台通过企业内部局域网与企业的ERP服务器和PDM服务器联接,完成对企业信息资源的整合。平台的网络架构如图1所示。
图1 平台的网络架构
企业中不同部门可根据其不同的需要,通过不同的客户终端访问生产信息管理平台。平台会根据用户权限的不同提供相应的服务给不同的用户。如图1所示。生产制造部、工程技术部的人员可以通过平台分别完成生产任务计划的制定、技术文档的检入/检出等操作。车间调度人员可以通过平台获取ERP系统中生产计划信息和PDM系统中的相关技术资料,生成各工位的电子工单,并派发到各条生产线上的各个生产工位。各生产工位的作业人员按电子工单进行生产作业。
2 平台的主要功能模块
为了满足生产制造部、工程技术部、生产车间等不同部门的需要,平台主要包括产品数据管理、人员组织管理、生产任务管理、模块管理等四大功能模块。
2.1 产品数据管理
产品数据管理模块面向具有文档管理员权限的用户。在该模块的页面上可以自定义产品数据的组织结构树,并在组织结构树的各节点下实现产品相关技术、帮助文档的检入、检出。通过这种方式,可以实现产品数据文件有层次,有条理的组织和显示,方便使用者的快速查找与查看。
2.2 人员组织管理
人员组织管理模块分为权限的管理和组织机构的管理两部分:
(1)权限的管理
权限管理模块面向具有人事管理员权限的用户。采用权限——角色——用户三级结构对用户的权限进行管理,特定权限对应特定的功能。人事管理员可以根据实际需要,灵恬组合多种不同的权限构建新的角色。同一角色可以拥有多种权限,同一用户只能拥有一种角色属性,通过对角色的配置可有效的模拟企业中人员的职能范围。
(2)组织机构的管理
类似于产品数据的管理,人事管理员可以自定义企业人员的组织结构树,并在组织结构树的各节点下创建子部门或在子部门中增加人员信息。使用权限管理与组织机构管理相结合的这种机制,可以有效的模拟企业中人员、组织、权限管理的现实情况。
2.3 生产任务管理
生产任务管理模块由任务下发/管理和任务查看/执行两个子模块构成。
(1)任务下发/管理模块
任务下发/管理模块面向车间调度人员。车间调度人员可指定特定的工作任务清单给特定的生产工位。工作任务清单中包含了对相关工作任务的描述及作业指导、工艺文件等相关技术资料,用于指导和帮助生产线上的工人进行生产作业。任务下发/管理模块解决了技术文件的按需分配,保证了技术资料的安全,减少了纸质文档的使用及其带来的混乱,使各部门得到的图纸等信息都能得到及时更新,将网络化的管理延伸到了车间。
(2)任务查看/执行模块
任务查看/执行模块的页面上有两个标签,分别用于调取当前未完成的工作任务和已完成的任务列表。在特定工位上的操作人员登录信息平台之后,在该页面点击执行工作任务按钮后。可以看到指派到该工位的任务信息、相关描述和对任务执行有帮助的相关技术资料。
生产作业人员按工单执行工作任务后,点击完成按钮。在任务管理页面的任务状态会由“未完成”更新为“完成”状态,实时反馈生产现场的工作进度。企业的上层机构可根据生产状态适时调整生产计划,均衡各生产部门的生产任务。
通过这种下发/反馈的方式,解决企业生产中管理人员与生产操作人员之间信息流通不畅的问题。
2.4 模块管理
为了方便生产管理信息平台的维护与功能扩展,特增设了模块管理这一模块。该模块只能被R00T级别的用户(系统管理员)访问和操作。系统管理员可以通过这一模块将新开发的功能挂载到主页面左侧基本信息管理目录下,实现平台的升级。
3 B/S架构的优势及MVC模式的体系结构
为了使生产信息管理平台具有良好的通用性和可维护性,平台采用B/S架构MVC模式应用框架进行开发。
3.1 B/S架构的优势
对于B/S架构的程序,程序员只需修改服务器端程序,就能在安装了支持java的浏览器的任何一台计算机上实现程序的更新。相比在C/S架构中每次更新都要在所有客户机上更新客户端程序,大大减轻了程序的维护难度,提高了程序的可维护性。
3.2 MVC模式的体系结构
为了提高程序的条理性、可维护性,平台的开发采用了MVC(Model view controller)设计模式,即模型-视图-控制器设计模式。MVC模式应用框架是目前程序开发的主流形式,它使用控制器作为模型和视网间的联系纽带。模型、视图和控制之间的松散耦合使得程序的各部分开发工作相对独立且层次分明,降低了程序开发的难度。图2为MVC模式应用框架的工作原理图。
图2 MVC模式应用框架工作原理
为了实现图2中的应用框架结构,采用Struts(前端)+Spring(中间层)+Hibernate(后台)三层结构进行平台系统的构建。由Struts标签库结合JSP技术来生成前端的页面显示,并使用Struts拦截器实现请求的接收与分发。利用Hibernate这一持久层框架管理与数据库操作相关的后台工作。使用Spring业务层框架这一个具有整合作用的框架来黏合表示层(View)与持久层(Model)。
4 生产管理信息平台各应用层设计
4.1 持久层
工业企业在其发展的不同阶段会根据生产管理的需要购置不同的管理系统。然而,原本相对独立的各管理系统间有可能出现数据不兼容的问题。
例如某企业曾分别实施了ERP和PDM,其中ERP系统架设在MySQL Server数据库上,PDM系统架设在SQL Server2005数据库上。在这种情况下,企业的数据整合工作将面临两个难处:1)数据重叠的问题;2)不同数据库间信息孤岛的问题。
为了解决由数据库种类、架构不同带来的数据重叠的问题,整个平台在数据源构建时,对各数据库职能进行了严格的界定。利用MySQL Server数据库中建立的人员信息、组织类别和工作任务信息等各种表格作为ERP系统的底层数据。并利用SQL Server2005数据库中建立的文档信息、文档类别等各种表格作为PDM系统的底层数据。两部分数据间互不干涉。
MySQL Server数据库中描述工作任务信息的表单如图3所示。
图3 jobmessage表单
SQL Server2005数据库中描述文档信息的表单如图4所示。
图4 dbo.doc表单
为了解决不同数据库间信息孤岛的问题,在项目中建立了与各表格相对应的持久化类JavaBean组件。创建了以* * *.hbm.xml命名的Hibernate映射文件,用于描述各表格和持久化类代码JavaBean间的一一对应关系。使用JavaBean组件作为平台控制、显示部分与底层不同数据库间的沟通媒介,进而解决数据整合的问题。
4.2 中间层
如图2所示,中间控制层主要有两部分工作:1)通过实例化JavaBean组件操纵数据库;2)获取用户输入信息并根据处理结果重定向JSP页面。
为了实现生产管理信息平台对多数据库的支持,可在Spring配置文件applicationContext.xml中配置多个数据源,为不同sessionFactory指定独立的数据源并加载对应于不同数据源的Hibernate映射文件。平台会根据用户所请求数据的不同,选择不同的sessionFactory,进而根据数据源配置及Hibernate映射文件实例化javaBean组件来操纵不同的数据库。
为了实现对用户输入信息的处理并根据处理结果重定向JSP页面,需要创建控制器Action和拦截器配置文件struts.xml。其中控制器Action用于处理页面上的输入信息。拦截器配置文件struts.xml用于描述Action处理结果与JSP页面之间的映射关系。在生产管理信息平台中。Struts拦截器通过这种方式来实现请求分发,进而把与处理结果相对应的JSP页面呈现给用户。
4.3 表示层
采用Dreamweaver CS5对整个平台用户界面进行总体布局,每个独立页面细节由JSP结合Struts标签库构建。平台的前台页面用于接收用户的输入信息,包括信息的增删改查等操作,并把经相应Action处理后的结果展示给用户。
5 系统实例
搭建MyEclipse+Resin环境,部署工程,运行Resin 3.x服务器,在浏览器地址栏中输入http://172.16.54.80:8080/glxt/admin,就能看到平台的用户登录界面。正确输人用户名和密码后,用户可以看到平台的主要功能菜单,点击不同菜单可以得到平台不同功能模块的操作页面。
Windows操作系统IE浏览器下产品数据管理页面如图5所示。
图5 产品数据管理页面
Ubuntu Linux操作系统Chrome浏览器下任务查看页面如图6所示。
图6 查看当前任务页面
由于技术资料文件类型多种多样,在不同部门间传阅时,相关电脑不可能安装了与所有文件类型相对应的应用程序,可能会遇到文件无法打开的情况。为了解决这一问题,可在每台客户机上安装Auto Vue软件或在服务器端部署Autovue Solidmodel for Java。该软件可以打开包括doc、dwg、prt等工程文件在内的超过500种文件格式。利用该软件查看文件的方式有两种:一种是用程序的桌面客户端查看文件,另一种是在浏览器中查看文件。
利用AutoVuex插件在IE浏览器上查看NX6.0模型如图7所示。
图7 查看三维模型页面
6 结束语
针对企业生产管理过程中出现的信息流通不畅的问题。综合应用Struts、Spring、Hibernate开发框架,建立了模型——视图——控制器松散耦合的三层结构系统平台,实现了产品数据的结构化管理、人员权限管理、组织机构管理、生产任务管理和平台自身功能模块管理等功能。改善了信息在计算机各软件系统间及不同部门间的共享与流通状况。经实际测试,平台在Windows操作系统IE浏览器和Ubuntu Linux操作系统Chrome浏览器下均能正常使用,具有维护方便、可扩展、跨平台等特点。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/
本文网址:http://www.toberp.com/html/consultation/1082028509.html