信鸽热线管理系统
2012-08-15孙树红刘路钢
孙树红 刘路钢
(中国联合通信网络有限公司哈尔滨市分公司产品支撑中心 黑龙江 哈尔滨 150090)
1 信鸽热线简介
全信息报到步骤和程序为:赛鸽归巢后首先刮开覆盖在密码上的灰墨及其明码即显现密码,然后拨打专用信息台信鸽报到热线,依照提示语音逐项输入三项数码,即依次输入密码、棚号、年号和足环号即可,系统将自动记录下鸽友所播打的时间和输入的数据,并及时提交到黑龙江声迅信息港网页上,即信鸽报到成功。
2 信鸽热线管理系统开发
2.1 系统主要应用工具及技术
本程序主要用到了frame 控件,checkbox 控件,commandbox 控件,label 控件,StatusBar 控件、 采用ADO 操作数据库和应用API 函数完成全信息报到数据的下载和上传。
2.2 开发背景
本系统采用ACCESS 数据库,数据库名为XXH.MDB,该数据库共包含两个数据表,”信箱号”表,”temp”表,其中“信箱号”表是用来存储信箱号的,可以添加信箱号或删除信箱号。 “TEMP”表主要是用来存储数据的,在本程序中起到了主要的作用。
2.3 采用ADO 操作数据库
本系统对数据库的操作全部采用了ADO,具体用到的对象如下:
Connection 对象、Command 对象、Recordset 对象
2.4 信鸽热线管理系统设计
1) 采用windows API 函数读INI 文件
在本系统中, 各台服务器的设置采用了windows API 函数读INI 文件,INI 文件中分若干个段(Section),每个段中有若干个键(Key) 值(Value) 对。 一个键值对保存一个信息;段则将属性类似的一些键值对组织在一起。 同一个段中不能出现两次以上同样的键,但不同的段中可以出现相同的键。
2)采用windows API 函数实现数据下载和上传
在实现下载的过程中, 也用到了windows API 函数,主要用到了如下函数:
InternetOpen 函数,InternetConnect 函数,FtpGetFile 函数,FtpFindFirstFile 函数,InternetCloseHandle 函数。
具体实现方法如下:(以上所有的声明就存储在WININET.Bas 文件中)
(1)用一个InternetOpen 调用设置环境。
(2)调用InternetConnect 函数与主机连接。
(3)调用FtpFindFirstFile 函数判断下载的文件是否存在。
(4)调用FtpGetFile 下载文件。
(5)调用FtpputFile 上传文件。
(6)关闭第1、2 步创建的句柄,用InternetCloseHandle 函数。
3)程序的实现过程
当启动程序时,在通用事件设置了一些全局变量(内容见程序源代码),同时在form onload 事件中,做了一些对程序的初始化设置,设置如下:
A、由于本程序是24 小时不停运行的程序,所以每运行完数据上传后,就应该删除该程序下的数据,以便在次下载新的数据。 所以程序中加入对文件及文件夹存在的判断。 加入方法是: 工程——引用——microsoft scripting runtime 即可。 判断配置文件config.ini 文件是否存在。 如果不存在则程序提示后退出系统。
B、从配置文件config.ini 文件中读出各台服务器的配置参数,采用循环的方式动态的读出各个参数,用到的函数是Get-PrivateProfileString。
C、 本程序的最大优点是可以动态的添加服务器和信箱号。由于各个方面的限制,现在只能加到14 台。 本程序预留出了一些内容,以便动态的改便,所以当服务器和信箱号少于本程序的最大处理能力时,预留的控件应该以不可见。
D、接下来,从数据库中读取“信箱号”,来显示到主界面上。
E、在主界面的状态栏中显示当前状态。
StatusBar1.SimpleText = “准备就绪”
到此程序的启动结束,等待用户操作。
4)程序的操作
A、服务器的选择
在主界面上动态的列出了所有的服务器以供用户选择,用户可以单击某一个服务器选择,也可以单击下面的“全选”按钮,全部选择。 同时如果用户要取消所做的选择,则可以在单击对服务器即可,也可以单击下面的“取消”按钮全部取消。
B、信箱号的选择
在主界面上动态的列出了所有的信箱号,以供用户选择,用户可以单击某一个信箱号选择,也可以单击下面的“全选”按钮,全部选择。 同时如果用户要取消所做的选择,则可以在单击对信箱号即可,也可以单击下面的“取消”按钮全部取消。
C、信箱号的添加与删除
在程序的主界面菜单中有一个“修改信箱号”菜单,当单击该菜单时,出现“添加信箱号”和“修改信箱号”两个下拉菜单,如单击其中添加信息号菜单后,主窗体关闭,添加窗体载入;
实现方式为利用ADO 打开数据库,从中读出“信箱表”中的数据,然后把它加入下“Combo 控件”中,来实现下拉菜单的效果。
在这个页中主要实现信箱号的添加,删除。
首先,介绍一下“添加”功能,当用户输入数据时,首先要判断,用户输入的是不是数字,在判断一下数据的长度是不是大于5, 还要判断数据库中是不是已经存在, 如果数据存在,则提示“用户数据已经存在,请选择其它”。 所有条件都满足了,允许向数据库中添加数据。 添加到数据库中后还要更新“删除”下拉菜单下的内容,把刚才添加的内容加入到下拉菜单中。
接下来是信箱号的删除功能, 同样利用ADO 控件打开数据库,判断数据库中有否有数据,如果没有则提示“数据库无数据,请添加! ”,否则就把所选择的信箱号删除。
D、主程序的运行
在主窗口中有一运行按钮,当所有的初始条件都设置好以后,就可以运行该程序了。 为了保证程序运行时不被修改所有应该将所有的按钮(除了停止按钮以外)设置为不可用。为了保证至少一台服务器和至少一个信箱号被选择,用代码来控制实现了该功能。 如果它们中有一个都没有选择的话,给出提示后,就跳出程序等侍用户选择。 为了保证程序运行时不被修改所有应该将所有的按钮 (除了停止按钮以外)设置为不可用。
E、关闭按钮
这段按钮主要是停止程序的运行,使程序回到初便的状态。
3 结束语
信鸽热线管理系统系统运行的高效、安全、稳定,受到了用户和各个信鸽协会的肯定,同时产生了很大的社会效益和经济效益,现已广泛应用到全省各地。S
[1]刘新民.Visual Basic 6.0 程序设计[M].清华大学出版社,2004.
[2]管丽娜,白海波.实用Visual Basic6 教程[M].清华大学出社,2001.
[3]段兴.Visual Basic 数据库实用程序设计100 例[M].人民邮电出版社.