黄 旌 (空军第一航空学院计量技术教研室,河南 信阳 464000;武汉理工大学材料学院,湖北 武汉 430070)
李恒伟 (94795部队修理厂,江西 九江 241007)
计量器具管理系统的实现
黄 旌 (空军第一航空学院计量技术教研室,河南 信阳 464000;武汉理工大学材料学院,湖北 武汉 430070)
李恒伟 (94795部队修理厂,江西 九江 241007)
针对航空机务部队计量组计量管理工作中计量器具种类多、信息量大、容易出现部分计量器具漏检、误检或状态不明等问题,利用Access设计实现计量器具管理系统,主要功能包括查询信息、录入信息、盘点信息、备忘记录、传递信息、扩展功能等。实际运行效果表明,该系统操作简单,使用方便,克服了计量器具查找、管理、报表等不方便的困难,从而使计量组的计量器具管理工作上了一个新的台阶。
计量器具;窗体;宏;VBA;Access2003
航空机务部队计量组是当前空军计量保障体系的基层单位,其计量工作正常运行与否直接关系到飞机的飞行安全[1]。计量组日常工作存在如下问题:人员少、任务重;工作中涉及的计量器具种类多而每一种类数量少,用传统的手工纸制台账无法方便地管理和查找各类器具,容易出现漏检、误检或部分计量器具状态不明等现象[2]。为此,笔者利用Microsoft Access 2003数据库,开发计量器具管理系统,实现快速、准确地对各类计量器具进行查找、管理、报表输出,实现对到期计量器具自动提醒并制订检定计划,有效解决计量器具的漏检、误检问题,保证航空机务计量工作的高效性和准确性。
图1 “计量器具管理系统”功能模块图
系统功能模块设计如图1所示。
Access2003提供7种对象[3]:表、查询、窗体、报表、数据访问页、宏、模块,在系统设计时从功能和彼此间的关系角度考虑,将这7种对象分为3个层次:①表对象和查询对象。它们属于数据库的基本对象,用于在数据库中存储数据和查询数据。②窗体对象、报表对象和数据访问页。它们属于直接面向用户的对象,用于数据的输入输出和应用系统的驱动控制。③宏对象和模块对象。它们属于代码类型的对象,用于通过组织宏操作或编写程序来完成复杂的数据库管理工作。该系统通过对各个层次对象的有效利用,从而实现计量器具管理系统的基本功能:查询信息、录入信息、盘点信息、备忘记录、传递信息、扩展功能等。下面按照上述3个层次分别介绍系统各功能的实现。
2.1根据需求分析建立数据表
计量器具是计量仪器(亦称主动式计量器具)和量具(亦称被动式计量器具)以及标准物质的总称,是计量所必需的技术装备。结合计量组工作的实际需要对计量器具信息分析,建立“计量器具信息”数据表,主要包括:设备编号、设备类别、设备名称、规格型号、测量范围、分度值、允许误差、准确度等级、管理类别、设备状态、所属部门、存入地点、责任人、检定日期、启用日期、封存日期、报废日期、检定周期、检定单位、检定员、检定结果、生产厂家、出厂日期、出厂编号、入账日期、备注等信息[4]。
另外,建立“系统提示”表和“备忘记录”表。
2.2建立查询对象
图2 “计量器具信息查询”设计视图
查询是为来自一个或多个表的资料提供定制视图的对象,是Access数据库处理和分析的工具,它能够把多个表中的数据抽取出来,供用户查看、更改和分析使用。笔者以“计量器具信息表”为数据源建立“计量器具信息查询”、“今日到期待检器具信息查询”等6个查询数据集。创建查询有2种方式:设计视图法和利用查询向导法。在创建查询的过程中首先要选择创建方式及查询的来源,然后定义要查询的内容和准则,根据定义的内容和准则在数据库表中查找符合备件的记录。设计视图法建立查询如图2所示。
窗体对象、报表对象和数据访问页用于直接面向用户进行数据输入输出和应用系统的功能控制,是系统设计的重点和难点。
3.1窗体的建立
窗体是主要的人机接口,用于显示表和查询中的数据,输入数据、编辑数据和修改数据,窗体只能通过运行宏或VBA过程,实现窗体的信息与数据来源之间建立链接,其实现方法有3种:①以查询为数据来源创建窗体,如“查询信息”窗体、“盘点信息”窗体、“今日到期待检器具”窗体;②以表为数据来源创建窗体,如“录入信息”窗体、“助手帮助”窗体、“备忘记录”窗体;③通过编辑控件或控件代码实现特定功能,如“用户登录”窗体、“主界面”窗体。
图3 “计量器具信息查询窗体”窗体视图
下面简单介绍“查询信息”窗体的实现过程。在查询窗体中设计按钮选择区域、信息查询区域、信息显示区域3个部分,用户只需在查询区域输入相关查询信息,在按钮区域进行有效选择,便可在显示区域得到所有符合查询条件的器具信息,如图3所示。
查询设计有多条件模糊查询和精确查询功能,查询操作方法简便,实用性高,其按钮对应的各项功能是通过对VBA代码的编辑来实现的,主要有“执行查询”、“清除记录”等功能按钮。在设计“执行查询”按钮关键代码时,考虑用户需求及部分器具信息的查询特点不同,将查询对象设计分为模糊查询、精确查询2大类。可以列为模糊查询的字段有:设备编号、规格型号、设备名称、名称拼音、生产厂家、出厂编号;可以列为精确查询的字段有:设备类别、管理类别、设备状态。部分关键代码如下:
Private Sub 执行模糊查询_Click() ‘声明“执行模糊查询”按钮单击事件过程
On Error GoTo Err_执行模糊查询_Click ‘如果程序出现错误,则直接跳到错误代码处
Dim strWhere As String ‘定义条件字符串
strWhere = “” ‘设定初始值-空字符串
If Not IsNull(Me. 设备编号) Then ‘判断【设备编号】条件是否有输入的值
strWhere=strWhere amp; “([设备编号] like ‘*” amp; Me. 设备-编号amp; “*‘) AND ” ‘有输入
End If
……
If Not IsNull(Me.设备类别) Then
strWhere = strWhere amp; “([设备类别] like‘” amp; Me.设备类别amp;“’) AND”
End If
……
If Len(strWhere) gt; 0 Then ‘如果有输入条件
strWhere = Left(strWhere, Len(strWhere) - 5)
End If
‘让子窗体应用窗体查询
Me.计量器具信息查询子窗体.Form.Filter = strWhere
Me.计量器具信息查询子窗体.Form.FilterOn = True
Exit_执行模糊查询_Click:
Exit Sub
Err_执行模糊查询_Click:
MsgBox Err.Description
Resume Exit_执行模糊查询_Click
End Sub
3.2报表的设计
“计量器具查询信息”报表是以“计量器具信息”查询为数据源,为选定的计量器具信息格式化预览、输出而设计的。用户使用时可以根据需求对符合条件的计量器具相关信息进行选择,利用报表控制数据内容的大小及外观,对相关数据进行排序和汇总,选择输出数据到屏幕或打印设备上。
图4 系统运行效果图
系统通过“主控面板”宏、“主菜单”宏以主菜单和各窗口跳转按钮的形式把数据库的各个对象连接起来,便于用户在各个窗体功能之间转换操作。主要通过设计宏组利用OpenForm、Close、Quit等宏操作来实现各个窗口的跳转、关闭、退出等。
系统运行效果图如图4所示。经半年试用,取得了比较满意的效果。系统每次启动后自动弹出的“器具到期自动提示”功能以及“盘点信息”功能,可有效防止计量器具发生漏检、误检。
[1]吴剑秋. 航空机务计量[M]. 北京:中国人民解放军空军装备部,2006.
[2]高涛. 航空兵部队检定管理信息系统设计与应用[J]. 计量技术,2004,(2):48~50.
[3]魏茂林. ACCESS数据库管理与开发案例训练教程[M]. 北京:电子工业出版社,2005.
[4]黄旌. 计量信息管理系统的实现[J].长江大学学报(自然科学版),2008,(3):221~223.
[编辑] 李启栋
TP216
A
1673-1409(2009)01-N069-03
2008-12-24
黄旌(1975-),男,1997年大学毕业,讲师,硕士生,现主要从事计量和测试方面的教学与研究工作。