基于移动智能终端的武器数据库管理信息系统
2012-07-02李治军李大成尹立业
李治军,李大成,尹立业
(南京理工大学,南京 210094)
随着现代高新技术的发展和部队作战训练的需求,武器和武器平台正逐步集成高端技术成果。现代武器系统的数据管理越来越引起制造、装备、使用和机关管理层的关注,信息化的数据库管理己成为武器使用和管理的关键环节。为加强武器系统的数据管理水平,以移动智能终端为硬件平台,以Visual C++为软件开发平台,使用数据库技术、COM 组件技术、OLE 开发技术、格式化报表技术、模块扩展添加等技术,结合武器系统的操作使用、维修保养、装备检查等内容,设计并实现了数据管理信息软件。为武器装备提供了完整的数据库管理信息系统,为更加有效的使用和管理武器平台加强了信息化保障[1]。
1 软件的基本功能
数据库管理信息软件涵盖了武器的训练操作、技术检查、维修管理、保管保养、装备使用管理、检查和维修统计和报表等内容[2]。主要功能如下:
1)训练、技术检查、维修管理、保管保养等电子资源数据库和训练教学;
2)电子数据库的快速查询;
3)技术检查登记和统计,对部件和零件进行接受、定期、发放全过程跟踪和记录;
4)技术检查历史记录查询;
5)技术检查格式化报表打印,实现了全部打印、单项和多项选择打印、指定范围连续登记编号打印等多方面打印功能;
6)维修过程登记和统计,对维修部件、故障现象和原因、维修过程、维修换件情况、维修结果进行全方位记录;
7)维修历史记录查询;
8)维修历史记录格式化报表打印;
9)装备基本信息查询;
10)保留有装备使用监控组件接口。
软件在人机界面上仿GUI Visual Studio 样式,界面友好,操作和使用方便。软件的功能结构图如图1 所示。
图1 数据库管理信息软件功能框图
2 软件设计和实现
2.1 软件总体设计
软件设计是该系统实现的难点之一,设计的优劣关系到系统的稳定性、扩展性等。系统设计将软件分为三层结构。最下面一层为操作系统层,主要实现对WinCE 操作系统的移植。中间层为服务程序层,该层主要是各模块的软件实现。最上层为指挥员应用程序。系统设计的关键在于各项功能的实现。对软件进行分层设计,有利于各个功能有机地协调运转,同时也便于软件开发与调试[3]。本系统充分考虑了数据库开发、格式报表、软件界面和可扩张要求、通过低层接口与设备通信等需求,软件采用面向对象的开发平台Visual C ++6.0,使用DAO 技术进行数据库编程,同时为了满足制式各类报表的填写和打印,使用了嵌入WORD 文档技术。
本文在程序设计上,主要包含以下四个模块:
(1)应用程序类模块;
(2)界面框架类模块;
(3)数据库支持类模块;
(4)WORD 报表模块。
2.2 应用程序类模块实现
使用MFC CLASSVIZARD 生成基于单文档应用程序类,在生成的VIEW 类中,加入管理系统。背景显示程序实现了背景居中和随框架大小变化功能[4]。
2.3 界面框架类的实现
武器基本数据的目录和查询模块实现了GUI VisualStudio 风格,支持动态放缩,支持对话框区域放缩等功能。对于目录树界面的实现则是在框架实现的基础上,在CMainFrame 主应用程序框架生成的同时动态构造一个CTreeCtrl 对象,并将这个对象添加到CCoolTabCtrl 对象的第一个属性页上,实现代码如下:
2.4 基本数据库查询界面的设计和相关操作的实现
1)基本数据库查询界面建立在对话框的基础上,同时为了响应左边框类的动态放缩功能,查询对话框通过继承自定义了对话框和控件动态变化类实现了动态大小变化的重新布局。
主要的实现类有:
图1 数据库管理信息软件功能框图
2)数据库驱动和编程方式
武器数据库管理信息软件是一个相对独立的软件,需要确定人员管理和使用,因此本系统通过Microsoft Access 数据库对基本信息进行存储,选择DAO 数据库访问技术进行编程[5]。MFC DAO 的CDaoDatabase 类和CDaoRecordset 等类可以快速方便的访问Access 数据库数据。DAO(Data Access Object),数据访问对象,是一组Microsoft Access/Jet 数据库引擎的COM 自动化接口,用于操纵Access 数据库。
3)基本数据库建立
根据系统需求,先在Access 中建立如下表:基本信息数据库表、基本信息库索引表(包括编号快速索引表、装备名称快速索引表、一级二级目录基本索引表和基本信息全内容快速索引表)、装备检查表、装备维修表、装备出入登记表、装备使用监控信息表等;
加入基本信息表的各项索引表,主要为了实现信息的快速索引,使用这个方法可以在微秒级的时间里检索几万条记录。
部分表的内容如下:
图1 数据库管理信息软件功能框图
2.5 格式化报表和嵌入式WORD 运用
为了实现各类表格的制式打印,考虑到打印内容项目多,而且各个项目的数据量变化较大,因此本项目中采用WORD 表报技术实现了格式化的报表打印,下面以维修项目打印报表的实现为例讲述编程实现。
要使用程序控制WORD,首先要引入WORD 库的支撑,在项目中添加MSWORD9.OLB 文件,MSWORD9.OLB 是WORD 2003的引用库,它向下兼容WORD 程序[6]。
因为在MFC 中是通过OLE 和COM 技术使用的嵌入对象,因此程序中添加OLE 的支撑。
在APP 的InitInstance()中加入AfxEnableControlContainer();
在程序用加入控制WORD 操作的各个类,主要有:
通过上面类接口的操作,实现了对WORD 的编程操作。
3 结束语
本文提出基于智能终端的武器数据库管理信息系统,设计与开发了系统的部分功能软件;目的在于方便人员对于武器的数据管理,提高武器训练、维修保养及信息查询的效率,从而提高整个武器系统的研制进度,确保了整个武器系统使用的准确性。经过对数据库管理信息系统的实践使用可知,相对于以往的人工纸张式查询与控制文件的方法,数据库管理信息系统能够大大提高武器系统的战斗力。
[1]尹立业. 基于移动智能终端的远程火箭炮指挥信息系统[J].四川兵工学报,2009:70 -72.
[2]杨光. 某型火箭炮技术检查及测试训练仿真系统研究[D].合肥:炮兵学院,2008.
[3]Douglas Scherer.Oracle 数据库开发技术与技巧[M].北京:机械工业出版社,2005.
[4]陈向群.WinCE 系统分析及实验教程[M].北京:机械工业出版社,2003.
[5]王勇,译.嵌入式系统编程源代码解析[M].北京:电子工业出版社,2002.
[6]谢荣岳.基于PDA 的移动信息系统关键技术研究[D].长沙:国防科学技术大学,2004.