基于Delphi的航空气象设备管理系统开发
2017-05-19刘竹涛
刘竹涛
(民航黑龙江空中交通管理分局,黑龙江 哈尔滨 150079)
基于Delphi的航空气象设备管理系统开发
刘竹涛
(民航黑龙江空中交通管理分局,黑龙江 哈尔滨 150079)
本文介绍了D e l p h i数据库的体系结构,阐述了基于D e l p h i开发平台对航空气象设备管理系统的设计思路、开发过程以及关键功能的技术实现。
D e l p h i;数据库;航空气象设备
1 前言
目前,航空气象事业正处于快速发展阶段,多种气象探测技术的应用使得航空气象设备呈多元化发展趋势,这给航空气象设备的维护人员提出了更高的挑战。当前,所投入运行的航空气象设备涵盖面很广,包括自动气象观测系统、气象数据库系统、多普勒天气雷达、卫星云图接收系统、风廓线雷达等多套大型系统[1],涉及到多种专业学科,设备维护人员很难全面掌握所有系统的专业知识,这给航空运输带来一定的安全隐患。因此根据自身的需要,设备维护人员利用Delphi平台开发了航空气象设备管理系统,该系统可以高效快捷地管理航空气象设备,为设备维护人员提供强有力的技术支持。该系统是基于Delphi开发数据库应用程序来完成的。
2 Delphi数据库的体系结构[2]
Delphi具有强大的数据库应用程序开发功能,它能适应各种大型数据库。Delphi数据库应用程序基于Borland强大的数据库引擎(BDE),流行的数据库接口和丰富的数据库组件,利用Delphi开发数据库应用程序,非常高效方便。Delphi的数据库应用程序不能直接访问数据,而是使用附带的BDE、ADO接口或ODBC接口等来对数据库资源进行访问。
开发Delphi数据库应用程序主要是掌握数据库组件的使用方法,这些组件可以分为两类:一类是数据库的数据访问组件(Data Access组件);另一类是数据库的数据控制组件(Data Control类组件)。Data Access组件负责与BDE(或ADO等)进行数据交换,它首先通过BDE(或ADO等)将数据库文件的数据提供给应用程序,然后将被修改过的数据经BDE(或ADO等)传送到数据库文件中。与BDE(或ADO等)直接打交道的是DataSet组件(如Table、Query等),每个DataSet组件都与一个数据库文件链接,并且为DataSource组件提供数据。DataSource组件负责将DataSet组件与Data Control类组件链接起来,它首先从DataSet组件中接收数据,然后再传递给Data Control类组件,待用户查询或修改完数据后,再把被修改的数据经DataSet组件传给BDE(或ADO等),由BDE(或ADO等)将数据返回到数据库文件。
3 民航气象设备管理系统的设计
该系统采用前台设备拓扑图与后台数据库相连接的设计理念,通过点击拓扑图中的设备图标来从后台的数据库中调取该设备的所有技术资料,从而非常直观高效地管理设备。
3.1 前台设备拓扑图的设计
前台设备拓扑图的展示采用单窗体多页面设计,分为整体气象设备综合拓扑图显示和各分系统单独拓扑图显示的结构。综合显示分页将所有的机场气象设备以及线路连接展现在设备维护人员面前,可以非常直观地诠释各套气象设备之间的相关性、各系统之间调用数据的流程以及线路的走向,这样为设备维护人员提供了强有力的技术支持。为了能更加清晰地反映出各分系统的独立性,设计者用8个分页面分别显示8套独立的气象设备的拓扑图,如图1,这样可以使维护人员更加快捷地找到自己所需要的技术资料。
拓扑图的绘制采用管理系统与用户交互方式,利用空白底图作为交互界面,用户通过交互界面进入绘制模式,将Delphi的Image控件的属性数据和所要绘制线段的属性数据写入后台数据库中,启动程序后通过对数据库的循环读取动态加载设备图片和连接线路,并赋值所生成图片的各种操作属性,如OnClick属性、OnMouseDown属性、OnMouseEnter属性、OnMouseLeave属性等。动态加载生成图片是为了依照用户的不同需求更加灵活地绘制拓扑图,因此该软件可以用于不同机场不同气象设备的拓扑图的绘制,从而增强了该软件的可移植性,可以在多个机场进行推广使用。
图1 民航气象设备拓扑图
3.2 后台数据库的设计
后台数据库采用的是Access数据库[3]。在后台数据库中建立9个设备列表和9个线路列表来对应前台的1个综合系统拓扑图分页面和8个分系统拓扑图分页面,如图2。以设备综合列表为例,该表结构有90多个字段,这些字段分为几类:第一类是拓扑图中与实际设备对应的设备图片属性的字段,如图片在程序中的Name值、Left值、Top值、Width值、Height值、实际加载图片的文件名,这些值的类型都有严格的规定,否则程序会出错;第二类是图片对应设备的属性字段:如设备的名称、所属系统的名称、IP地址、是否监控、绘图策略(多项,用于故障分析时设备的标识);第三类是设备的故障分析和技术档案内容的存储字段。
图2 后台数据库
在8套分系统对应的每个分页面中,设计了“故障处理”、“案例分析”、“应急预案”、“备件管理”和“设备履历”等栏目,这样与后台数据库中的40个列表相对应。
3.3 前台拓扑图与后台数据库相连接
首先,创建一个ADOConnection组件ADOConnection1,在程序中将数据库的地址动态赋给ADOConnection1的ConnectionString属性值,这样在程序启动时ADOConnection1就可以连接到数据库上;第二,创建若干个ADOQuery组件ADOQuery1、ADOQuery2…,ADOQuery组件的Connection属性值设置为ADOConnection1,这样若干个ADOQuery组件就与ADOConnection1相连接,使用ADOQuery.SQL.Add()语句将某个ADOQuery组件与数据库中的某个列表相连接,例如ADOQuery1.SQL.Add('select*from设备列表'),ADOQuery1就与“设备列表”相连接了;第三,创建若干Data-Source组件DataSource1、DataSource2…,将DataSource1的DataSet属性值设置为ADOQuery1,这样DataSource1就与ADOQuery1相连接了,其余以此类推;第四,在分页面上创建Data Control类组件若干DBGrid和若干DBMemo,将DBGrid1的DataSource属性设置为DataSource1,这样DBGrid1就与DataSource1相连接了,这样通过数据传递,DBGrid1中就可以显示出“设备列表”的数据了,将DBMemo1的Data-Source属性设置为DataSource1,将DBMemo1的DataField属性设置成“设备列表”中某一字段的名称(该字段为备注类型),这样DBMemo1就可以显示“设备列表”中备注类型字段的文字说明部分了。
3.4 设备管理辅助功能的实现
3.4.1 快速查找设备技术资料
该管理系统可以更加直观快速地查找设备技术资料。在Image组件的Onclick事件中写入语句调取该设备在数据库中的相应记录,并在DBGrid中定位在该记录上,同时DBMemo中显示该记录备注字段的信息。点击设备拓扑图中的设备图片,直接跳转到DBGrid显示与该图片对应的当前记录,同时DBMemo显示与图片对应设备的详细技术资料。
3.4.2 设备的网络实时监控的实现
将需要网络监控的设备记录在“是否监控”字段置为1,应用Timer组件定时进行网络扫描,判断被监控设备的网络连接情况。在Timer组件的OnTimer事件中写入语句,对全体设备列表做循环判断,当某条记录的“是否监控”字段为1时,读取该条记录的“IP地址”字段值,应用PingServer()函数对该IP地址的网络连接情况进行判断,如果网络连接异常,则通过图片标注、文字和声音进行提示。
3.4.3 拓扑图中线路连接与数据走向的显示
在复杂的网络拓扑图中,如果要想清晰地反映一套分系统在拓扑图中的数据走向,则需要在连接设备之间的线路上增加箭头标识来指示数据的走向。该程序设计了6种箭头标识,分别是向左、向右、向上、向下、左右双向和上下双向(分别对应数值0-5)。线路列表中设计了线路名称、起点左坐标、起点上坐标、终点左坐标、终点上坐标、线路颜色、线路宽度、线路风格(实线或虚线)以及数据流向等字段。当程序启动时,循环读取线路列表中的每条记录,将每条记录中各字段的值赋值到以下各语句中Image.Canvas.MoveTo(起点左坐标,起点上坐标)、Image.Canvas.LineTo(终点左坐标,终点上坐标)、Image.Canvas.Pen.Style、Image.Canvas.Pen.Width、Image.Canvas.Pen.Color等来绘制线路。在绘制线路的同时,判断该条记录中“数据流向”字段的数值在该线路上绘制相应方向的箭头标识。
4 结束语
航空气象设备管理系统的开发对气象设备维护人员意义重大,它为气象设备维护人员提供了强有力的技术支持。目前,国内各机场气象台还没有相关系统实施,该系统填补了这项空白,该系统可移植性强,可在各地机场气象设备部门推广使用,为航空气象服务提供更加可靠的保障。
[1]刘竹涛.航空气象信息系统的构建方法[J].计算机与网络,2012 (22):54-56.
[2]张世明.D e l p h i程序设计基础[M].北京:电子工业出版社,2010.
[3]Michael Alexander,Dick Kusleika.中文版Access2016 宝典[M].张洪波译.北京:清华大学出版社,2016.
The Development of theAviation Meteorological Equipment Management System Based on Delphi
Liu Zhutao
(CivilAviation of HeilongjiangAir Traffic Management Bureau,Harbin 150079,Heilongjiang)
tract】 This paper introduces the system structure of Delphi database;elaborates the design ideas,development process and the realization of key functions of the aviation meteorological equipment management system based on Delphi.
words】 Delphi;database;aviation meteorological equipment
TP393
A
1008-6609(2017)04-0041-03
刘竹涛(1971-),男,福建福州人,硕士,高级工程师,研究方向为计算机应用。