论文部分内容阅读
摘要:潍坊输油处是中石化下属的一个处级单位,负责900多公里管线的运行管理。由于管道运行的社会环-境复杂,打孔盗油事件频发,管道抢修频率较高。文章论述了依托现有的办公局域网,开发一个可靠、便捷、安全、开放的信息管理系统,以满足实际工作中对抢修信息和巡线信息管理的需求。
关键词:抢修系统;MFC;Microsoft Window XP Profession;Sql Server 2000
中图分类号:TE973
文献标识码:A
文章编号:1009-2374(2011)22-0048-03
潍坊输油处管辖东临复线、东临老线等五条输油管线,以及十个输油泵站。由潍坊处运销科调度室负责输油管道的运行管理,当值班调度人员在监控计算机上发现管道异常压力波动时(原因一般是发生偷油或者跑油),立即对该异常压力波动进行定位,并下调度令安排负责这段管道的站队进行巡检,若巡线人员发现了盗油或跑油的准确地点,值班调度下调度令安排相关的抢修队进行抢修。抢修完毕后由抢修队汇报抢修的地理位置、管道桩号,由巡线人员汇报原油泄露的数量、污染面积。最后由值班调度统计和记录这些管道抢修信息和巡线信息,并向反打孔盗油办公室通报,以周报的形式向相关领导进行汇报,每月再向调度中心汇报。目前关于抢修信息和异常压力波动巡线信息的处理主要是值班调度将其记录在“交接班记录本”上,人工统计后向上级汇报,当需要统计或查询某一时段的抢修情况时,仍由值班调度人工翻阅“交接班记录本”逐条进行统计、查询。
一、可行性分析
目前潍坊输油处已经具备一套内部的局域网办公系统,用于企业内部建立信息共享和传送文件,抢修信息系统可以在这个平台基础上建立。
二、系统功能说明
开发人员对抢修系统各级用户的需求进行调查,提出新的系统逻辑方案,开发的系统应该具备以下功能:
1.实现抢修信息和巡线信息的编辑,具有添加、删除和修改的功能,当进行这些编辑操作时,要尽可能的简化用户的操作量,使用户只需通过点击鼠标即可完成。对于一些关联的数据,比如管道的桩号、地理位置,输油泵站与其巡线人员,抢修队与其抢修人员等,这些都是一一对应的,用户在录入前一个数据项时,与其关联的数据项会自动出现以供选择。
2.可以方便的对抢修信息和巡线信息所涉及的系统固定信息进行编辑,例如各输油管线的名称,泵站的名称,巡线人员和抢修人员以及管桩地理位置等。
3.具有非常友好的查询功能,可以按用户需要的各种条件来查询和筛选数据。比如在抢修信息查询窗口中,可以按抢修日期、管线名称、泵站名称、抢修队名称和管道桩号等条件进行查询;在巡线信息查询窗口中,可以按巡线日期、管线名称、泵站名称或者某一特定的时间段的压力波动来查询,并且可以设定查询结果的排序规则。
4.具有对查询数据的统计功能,用户输入一个特定的时间段后,可以分门别类地对查询的信息进行统计,从而使用户全面、客观的了解各个管道的运行状况,并且为其他部门提供信息支持。
5.相关领导以及其他部门均可以通过办公局域网实时查看管道的抢修信息和被盗油情况,及时了解到这些数据,从而可以更直观、迅速的作出决策,确保输油管道的安全运行。
6.用户查询到的数据和系统统计的数据可以导出到excel表格,便于存档和传阅。
三、总体结构
(一)系统布局方案
根据用户需求的特点,系统采取客户端/服务器(c/s)模式,一台计算机作为数据服务器,作为数据库,其他需要访问数据的终端作为客户端,根据设置权限的不同具有不同的功能。如下图所示:
(二)软件配置
操作系统的选择Microsoft window xPProfession。系统开发环境采用Microsoft VisumStudi02005,编程语言采用Visual c++,数据库采用Microsoft Sql Server 2000。
(三)软件系统总体结构设计
按照上面的功能分析,信息系统由三个主要的子模块组成,其下有下一级的子模块。如下面的HIPO图所示:
四、详细设计
系统主体框架采用MFC(Microsoft Foundat ionClasses,微软基础类)结构,MFC的主要优点是可以用面向对象的方法来调用Windows API。MFC将很多应用程序开发中常用的功能自动化,并且提供了文档框架视图结构和活动文档这样的便于自定义的应用程序框架。
(一)用户界面设计
1.主界面。系统主界面是由MFC向导生成的CMainFrame类对象实现的,CMainFrame负责主界面的窗口创建、显示和退出,并且创建主系统的功能菜单。菜单显示如下:
资源ID:IDR MAINFRAME
2.查询界面。查询界面采用一个对话框类(CDialog)的派生类CMainQuery来实现,CMainQuery同时完成抢修信息与巡线信息的查询功能,其内部分为三个部分:第一部分是条件输入窗口,用户在此输入查询的条件;第二、三部分是一个网格,网格用类CGridCtrl实现,分别显示用户查询的数据和系统自动统计的数据。
资源:IDD QUERY:
CMainQuery主要的成员变量:
3.编辑窗口。抢修信息、巡线信息编辑也同时采用一个对话框类派生类CDlgMainEdit来实现,以实现信息的添加、删除、修改的功能。内部分为三个部分:第一部分是信息显示的网格,用户可以直接进行修改;第二部分是一些列的子网格窗口,使用户仅通过点击便可以输入数据;第三部分是三个命令按钮,执行用户的“添加”、“删除”和“保存”命令,只有在用户选中一行或者多行记录时,删除按钮才可以使用。
资源:IDD MAIN-EDIT:
CDlgMainEdit的主要成员变量:CDlgMainEdit的主要成员函数:下图是抢修信息编辑窗口:
4.基础数据设置窗口。基础信息设置窗口包括管道设置窗口、站队设置窗口、抢修设置窗口和巡线范围设置窗口等,实现基础信息设置窗口的是类cDlgEdit,也是CDialogde派生类。该类主要有提供编辑信息的一个网格和“添加”、“删除”、“保存”及“编辑”四个按钮组成,如果当前编辑的信息有下一级的信息,“编辑”变为可用,单击它会进入下一级的信息编辑。
资源ID:IDD EDIT:
类CDlgEdit的成员变量:
5.数据输入窗口。数据输入窗口是由CDialog的派生类CDlgInput的实现的,其功能就像一个afxMessageBox函数,提示用户输入一个字符串,该窗口有两个按钮,一个是“确定”,另一个是“取消”。用户单击“确定”后就会返回用户输入的字符串;否则返回空值。
资源ID:IDD INPuT
类CDlgInput的成员变量:下图是用户界面部分各个类之间的关系图:
(二)任务管理设计
在面向对象的设计中,任务是指系统为达到某一设定目标而进行的一连串的数据操作。设立一个任务,就是对一连串数据操作进行定义和封装,确定其名称并抽象为类。根据系统的功能特点和面向对象的方法和原则,形成如下类的划分:
(三)数据管理部分的设计
1.类设计。数据管理部分提供了在数据库管理系统中存储和检索对象的基本结构,根据信息系统对数据存储需求特点,分别设计了CPrArch类和CVecio类负责数据的读写操作。其中类CPrArch继承自类CAdoArch,类CAdoArch封装了以ADO的方式来访问Sql server 2000数据库的操作。而CPrArch是作为CAdoArch在抢修信息管理中应用的一个特定的应用,实现了需要数据库存取操作的对象的访问数据库的具体细节。类CVecio提供了一个字符串的向量通过ini文件存取数据的操作。
2.数据库设计。在Sql Server2000中建立一个名为piprep的数据库。根据系统功能设计要求及多个功能模块的划分,在piprep中创建了一个多个的数据表,以下是各个数据表的数据项和数据结构。
五、系统实施
(一)建立数据库
按照详细设计阶段数据库设计的主要内容,在SqlServer 2000下建立了数据库Patrol,同时,在Patrol下创建了各个数据表。
(二)程序设计与调试
程序设计是系统生命周期中继详细设计之后的阶段,在这个阶段是使用选定的程序设计语言,把经过概要设计和详细设计所得到的工作成果转换成可以在计算机系统上运行的程序源代码。本系统是用Visual c++开发环境开发的。由于数据处理较为复杂,在程序设计上采用面向对象的方法,用c++语言以及MFC体系结构实现了详细设计阶段的各个类并逐一的进行功能上的调试,使其满足所定义的功能。当全部类都编写完成后,进行了功能调试和系统调试,均达到了预期目标。
六、结语
此次对潍坊输油处抢修信息系统的开发,为今后在企业内部开发其他类型的管理信息系统积累了经验。该抢修信息系统在应用中,满足了用户需要的各种功能,给抢修信息的统计和查询,以及异常压力波动巡线信息的统计和查询带来了极大的便利,符合设计要求。
参考文献
[1]张海藩.软件工程导论[M].北京:清华大学出版社:,2008.
[2]Booch·G著,冯博琴,等译.面向对象分析与设计[M].
北京:机械工业出版社,2003.
[3]侯俊杰.深入浅出MFC[M].武汉:华中科技大学出版社,
2001.
责任编辑 赵秀娟
关键词:抢修系统;MFC;Microsoft Window XP Profession;Sql Server 2000
中图分类号:TE973
文献标识码:A
文章编号:1009-2374(2011)22-0048-03
潍坊输油处管辖东临复线、东临老线等五条输油管线,以及十个输油泵站。由潍坊处运销科调度室负责输油管道的运行管理,当值班调度人员在监控计算机上发现管道异常压力波动时(原因一般是发生偷油或者跑油),立即对该异常压力波动进行定位,并下调度令安排负责这段管道的站队进行巡检,若巡线人员发现了盗油或跑油的准确地点,值班调度下调度令安排相关的抢修队进行抢修。抢修完毕后由抢修队汇报抢修的地理位置、管道桩号,由巡线人员汇报原油泄露的数量、污染面积。最后由值班调度统计和记录这些管道抢修信息和巡线信息,并向反打孔盗油办公室通报,以周报的形式向相关领导进行汇报,每月再向调度中心汇报。目前关于抢修信息和异常压力波动巡线信息的处理主要是值班调度将其记录在“交接班记录本”上,人工统计后向上级汇报,当需要统计或查询某一时段的抢修情况时,仍由值班调度人工翻阅“交接班记录本”逐条进行统计、查询。
一、可行性分析
目前潍坊输油处已经具备一套内部的局域网办公系统,用于企业内部建立信息共享和传送文件,抢修信息系统可以在这个平台基础上建立。
二、系统功能说明
开发人员对抢修系统各级用户的需求进行调查,提出新的系统逻辑方案,开发的系统应该具备以下功能:
1.实现抢修信息和巡线信息的编辑,具有添加、删除和修改的功能,当进行这些编辑操作时,要尽可能的简化用户的操作量,使用户只需通过点击鼠标即可完成。对于一些关联的数据,比如管道的桩号、地理位置,输油泵站与其巡线人员,抢修队与其抢修人员等,这些都是一一对应的,用户在录入前一个数据项时,与其关联的数据项会自动出现以供选择。
2.可以方便的对抢修信息和巡线信息所涉及的系统固定信息进行编辑,例如各输油管线的名称,泵站的名称,巡线人员和抢修人员以及管桩地理位置等。
3.具有非常友好的查询功能,可以按用户需要的各种条件来查询和筛选数据。比如在抢修信息查询窗口中,可以按抢修日期、管线名称、泵站名称、抢修队名称和管道桩号等条件进行查询;在巡线信息查询窗口中,可以按巡线日期、管线名称、泵站名称或者某一特定的时间段的压力波动来查询,并且可以设定查询结果的排序规则。
4.具有对查询数据的统计功能,用户输入一个特定的时间段后,可以分门别类地对查询的信息进行统计,从而使用户全面、客观的了解各个管道的运行状况,并且为其他部门提供信息支持。
5.相关领导以及其他部门均可以通过办公局域网实时查看管道的抢修信息和被盗油情况,及时了解到这些数据,从而可以更直观、迅速的作出决策,确保输油管道的安全运行。
6.用户查询到的数据和系统统计的数据可以导出到excel表格,便于存档和传阅。
三、总体结构
(一)系统布局方案
根据用户需求的特点,系统采取客户端/服务器(c/s)模式,一台计算机作为数据服务器,作为数据库,其他需要访问数据的终端作为客户端,根据设置权限的不同具有不同的功能。如下图所示:
(二)软件配置
操作系统的选择Microsoft window xPProfession。系统开发环境采用Microsoft VisumStudi02005,编程语言采用Visual c++,数据库采用Microsoft Sql Server 2000。
(三)软件系统总体结构设计
按照上面的功能分析,信息系统由三个主要的子模块组成,其下有下一级的子模块。如下面的HIPO图所示:
四、详细设计
系统主体框架采用MFC(Microsoft Foundat ionClasses,微软基础类)结构,MFC的主要优点是可以用面向对象的方法来调用Windows API。MFC将很多应用程序开发中常用的功能自动化,并且提供了文档框架视图结构和活动文档这样的便于自定义的应用程序框架。
(一)用户界面设计
1.主界面。系统主界面是由MFC向导生成的CMainFrame类对象实现的,CMainFrame负责主界面的窗口创建、显示和退出,并且创建主系统的功能菜单。菜单显示如下:
资源ID:IDR MAINFRAME
2.查询界面。查询界面采用一个对话框类(CDialog)的派生类CMainQuery来实现,CMainQuery同时完成抢修信息与巡线信息的查询功能,其内部分为三个部分:第一部分是条件输入窗口,用户在此输入查询的条件;第二、三部分是一个网格,网格用类CGridCtrl实现,分别显示用户查询的数据和系统自动统计的数据。
资源:IDD QUERY:
CMainQuery主要的成员变量:
3.编辑窗口。抢修信息、巡线信息编辑也同时采用一个对话框类派生类CDlgMainEdit来实现,以实现信息的添加、删除、修改的功能。内部分为三个部分:第一部分是信息显示的网格,用户可以直接进行修改;第二部分是一些列的子网格窗口,使用户仅通过点击便可以输入数据;第三部分是三个命令按钮,执行用户的“添加”、“删除”和“保存”命令,只有在用户选中一行或者多行记录时,删除按钮才可以使用。
资源:IDD MAIN-EDIT:
CDlgMainEdit的主要成员变量:CDlgMainEdit的主要成员函数:下图是抢修信息编辑窗口:
4.基础数据设置窗口。基础信息设置窗口包括管道设置窗口、站队设置窗口、抢修设置窗口和巡线范围设置窗口等,实现基础信息设置窗口的是类cDlgEdit,也是CDialogde派生类。该类主要有提供编辑信息的一个网格和“添加”、“删除”、“保存”及“编辑”四个按钮组成,如果当前编辑的信息有下一级的信息,“编辑”变为可用,单击它会进入下一级的信息编辑。
资源ID:IDD EDIT:
类CDlgEdit的成员变量:
5.数据输入窗口。数据输入窗口是由CDialog的派生类CDlgInput的实现的,其功能就像一个afxMessageBox函数,提示用户输入一个字符串,该窗口有两个按钮,一个是“确定”,另一个是“取消”。用户单击“确定”后就会返回用户输入的字符串;否则返回空值。
资源ID:IDD INPuT
类CDlgInput的成员变量:下图是用户界面部分各个类之间的关系图:
(二)任务管理设计
在面向对象的设计中,任务是指系统为达到某一设定目标而进行的一连串的数据操作。设立一个任务,就是对一连串数据操作进行定义和封装,确定其名称并抽象为类。根据系统的功能特点和面向对象的方法和原则,形成如下类的划分:
(三)数据管理部分的设计
1.类设计。数据管理部分提供了在数据库管理系统中存储和检索对象的基本结构,根据信息系统对数据存储需求特点,分别设计了CPrArch类和CVecio类负责数据的读写操作。其中类CPrArch继承自类CAdoArch,类CAdoArch封装了以ADO的方式来访问Sql server 2000数据库的操作。而CPrArch是作为CAdoArch在抢修信息管理中应用的一个特定的应用,实现了需要数据库存取操作的对象的访问数据库的具体细节。类CVecio提供了一个字符串的向量通过ini文件存取数据的操作。
2.数据库设计。在Sql Server2000中建立一个名为piprep的数据库。根据系统功能设计要求及多个功能模块的划分,在piprep中创建了一个多个的数据表,以下是各个数据表的数据项和数据结构。
五、系统实施
(一)建立数据库
按照详细设计阶段数据库设计的主要内容,在SqlServer 2000下建立了数据库Patrol,同时,在Patrol下创建了各个数据表。
(二)程序设计与调试
程序设计是系统生命周期中继详细设计之后的阶段,在这个阶段是使用选定的程序设计语言,把经过概要设计和详细设计所得到的工作成果转换成可以在计算机系统上运行的程序源代码。本系统是用Visual c++开发环境开发的。由于数据处理较为复杂,在程序设计上采用面向对象的方法,用c++语言以及MFC体系结构实现了详细设计阶段的各个类并逐一的进行功能上的调试,使其满足所定义的功能。当全部类都编写完成后,进行了功能调试和系统调试,均达到了预期目标。
六、结语
此次对潍坊输油处抢修信息系统的开发,为今后在企业内部开发其他类型的管理信息系统积累了经验。该抢修信息系统在应用中,满足了用户需要的各种功能,给抢修信息的统计和查询,以及异常压力波动巡线信息的统计和查询带来了极大的便利,符合设计要求。
参考文献
[1]张海藩.软件工程导论[M].北京:清华大学出版社:,2008.
[2]Booch·G著,冯博琴,等译.面向对象分析与设计[M].
北京:机械工业出版社,2003.
[3]侯俊杰.深入浅出MFC[M].武汉:华中科技大学出版社,
2001.
责任编辑 赵秀娟