801. 前言SmartPlant Foundation(简称SPF)软件,是鹰图公司SmartPlant Enterprise(简称SPE)体系软件之一,是专门为工程公司、工厂业主、运营商设计的工程信息管理系统,能够提高工程项目和工厂运营信息的有效性、完整性、准确性。SPF的主要功能可以概括为数据集成和文档管理。目前,我院对SPF数据集成功能的应用,已经取得了一定的成果。而在文档管理方面,限于公司本身的管理习惯以及软件本身存在的一些问题,并未与数据集成功能同步达到全面应用的效果。为了使SPF能够最大限度的发挥其对文档生命周期管理的作用,保证设计成果及过程文件高效、顺畅和高质量流转、共享,我们对SPF进行了二次开发,使其能够更好地与公司实际结合。2. SPF的逻辑结构图1 SPF的逻辑结构SPF是基于数据库的软件。用户可以从桌面客户端或者浏览器界面,通过激活配置好的Method来调用处于API(应用程序接口,Application Programming Interface,简称API)层的Server API或Client API,从而实现对象的创建、更新、删除、关联等操作,并保存到数据库中。SPF中的对象,都是由Schema这个概念实例化出来的。Schema是SPF的核心概念,描述了软件的数据结构,以及SPE设计集成系统各个软件之间进行数据传递的规则。它包括ClassDef、InterfaceDef、PropertyDef、RelDef等。关于胜利油田胜利勘察设计研究院有限公司:胜利油田胜利勘察设计研究院有限公司位于黄河入海口——山东省东营市,始建于1965年,是国家甲级勘察设计单位,全国石油系统油田注水及采出水处理、滩海油田地面工程技术指导性设计院,注水及水处理技术中心站站长单位,中国石化重点科研院所,全国百强勘察设计单位。所属行业:石油和天然气摘要:随着时代的发展,各方面对工程项目的要求越来越高。为了适应公司发展,尽快提高公司的设计水平,并与国际接轨,我院引进了鹰图公司的SPE体系软件。其中,SPF是一个针对工程信息管理的基础平台,具有开放的API开发接口,能够根据用户需求进行二次开发。本文着重介绍我院使用VB.Net技术,对SPF进行的一系列开发,使SPF更加适应我院实际,提高了软件应用效率。涉及的鹰图产品:■SmartPlant Foundation■SmartPlant 3D■SmartPlant P&ID■SmartPlant Instrument■SmartPlant Electrical■SmartPlant Reference Data张文军(胜利油田胜利勘察设计研究院有限公司)胜利设计院SPF二次开发及应用
813. 开发原理开发工具:Microsoft Visual Studio.Net 2008运行环境:SmartPlant Foundation 2009(04.03.01.05),.Net FrameWork 3.5图2 SPF校审卡模块开发部分代码SPF是基于.Net技术开发的,具有开放的API开发接口,因此能够根据用户需求进行二次开发,并能与任何第三方平台进行沟通。而进行二次开发的切入点就在SPF逻辑结构的API层。Server API开发能够节省客户端的执行时间,客户端对对象的所有操作都由服务端负责,由服务端进行运算,性能较高;Client API的开发相对简单一些,省时省力。在这个基础上,我们使用VB.Net技术,结合公司实际需求,以Client API为接口进行了开发。图3 SPF二次开发原理图对SPF进行二次开发时,项目必须引用系统自带的几个DLL,并继承SPF.Client.APIs.Model这个基类,所有用户操作时调用的Client API都继承了这个基类。通过程序开发生成的DLL,要经过SPF软件的定制,才能被调用。要在SPF中创建一个Client API,其名字必须与程序中的类名相同,这样SPF才能正常调用程序生成的DLL。而API是不能被用户直接激活的,这就需要将Client API实例化成Method,并且由Menu作为Method的前台触发窗口,成为用户使用二次开发功能的入口。4. 开发成果4.1 校审卡模块在文档管理中,如何确保文档质量就成了管理的关键问题。一般来说,设计都要有一套审核机制来保证设计成果及过程文件的质量。我们在SPF中定制了一套设校审流程,通过SPF工作流来对各个专业之间的资料、成果进行审核,保证各个专业之间提出去的资料都是经过审核的。虽然SPF能够生成工作流程报告来查看校审记录,但是其格式与样式跟设计人员常用的校审卡表单差异较大,使用不方便,而且不能够作为质量记录由相关单位存储。因此,必须通过开发,才能使软件生成满足公司质量记录要求的校审卡表单。图4 校审卡模块开发的校审卡模块能够实现以下功能:提供用户输入界面:使设校审人员能方便地填写校审意见,记录校审过程中发现的文件错误数及等级评定,并将其存储到数据库中;提供校审卡预览功能:能自动获取信息并输出到Excel,包括被校审文档的文档号和文档类型、设校审人员填写的校审意见、校审过程中发现的文件错误数及等级评定、校审人员名字及进行校审的时间,使设校审人员可以随时查看被校审文档的校审状态及校审流程中各个步骤的校审意见;胜利设计院SPF二次开发及应用
82校审卡存档:工程项目完成后,其责任人需对校审记录进行收集、编号、整理归档。在软件中存储校审卡时,需按照一定规则对校审卡进行命名,并存放到相应文档结构中,以便今后进行查阅;权限管理:使设校审人员各司其职,只能对自己的工作流步骤进行操作。这样,设校审人员在文档流转的过程中可以直观的查看文档的校审状态,所填写的相关信息也能够存储到数据库,达到了使SPF自动生成满足公司要求的校审卡表单的效果,从而保障校审工作优质高效的完成,确保设计质量进一步提高。4.2 文档批量创建工程设计项目涉及的专业多,产生的管理文件、交换文件、成果文件等各类资料数量较大,而这些文件都需要上传到SPF中作为文档进行管理。默认情况下,用户只能通过手动操作填写文档属性,将文档一一创建到SPF中。面对庞大的文档量,这样的方式效率低下,是任何一个工程项目所不能容忍的。而文档批量创建功能的开发,恰恰解决了这个问题。用户可以通过编辑Excel模版,在模板中填写文档必要属性,然后从SPF菜单读取Excel,将文档批量创建到SPF中。Excel使用方便灵活,较之SPF表单繁复的操作,大大提高了工作效率。图5 批量创建文档功能4.3 与公司一体化平台结口在引进SPF软件之前,我院一直使用上海金慧公司的一体化平台进行项目管理。在使用SPF之后,我们对这两个平台进行了定位。目前,一体化平台仍是院里企业级的项目管理平台,SPF工作的重点以项目设计过程控制和数据管理功能开发为主。针对这个定位,一方面对一体化平台进行修改,另一方面通过程序开发使SPF中的设计集成项目设计成果及过程文件也能通过一体化平台进行存档,保证了项目存档的统一。图6 SPF与一体化平台接口该功能的实现主要包括两部分,一是将文档从SPF中批量下载,二是将文档批量导入至一体化平台中。目前已经开发完成将SPF中的校审和互提文件自动导入到一体化平台的功能,项目资料的接口正在开发中。5. 小结科学的管理必须与先进的技术相结合,落实到实践中,才能发挥出事半功倍的效果。本文从SPF的逻辑结构、开发原理、开发成果等方面系统介绍了我院在使用SPF软件过程中,所做的二次开发工作,先后实现了校审卡模块开发、文档批量创建、与公司一体化平台接口等功能。目前,这些功能已经在实际项目中得到了推广,应用效果良好。然而,在软件不断更新升级的过程中,我们的开发成果也面临着一些困扰。在低版本软件上进行的开发,可能与高版本软件不能兼容。这就要求我们对SPF开发的科学性和现实性有更加合理的定位,从而使SPF能更好地与公司实际结合,不断提高软件应用效率,进而真正助力我院设计水平及质量的提高。