4.4 创建公用模块 在Visual Basic中可以用公用模块来存放整个工程项目公用的函数、过程和全局变量等。这样可以极大地提高代码的效率。在项目资源管理器中为项目添加一个Module,保存为Module1.bas。下面就可以开始添加需要的代码了。 paper51.com 由于系统中各个功能模块都将频繁使用数据库中的各种数据,因此需要一个公共的数据操作函数,用以执行各种SQL语句。添加函数ExecuteSQL,代码如下: copyright paper51.com Public Function ExecuteSQL(ByVal SQL _ copyright paper51.com
As String, MsgString As String) _ http://www.paper51.com As ADODB.Recordset copyright paper51.com
'执行SQL语句,并返回记录集对象 http://www.paper51.com ‘声明一个连接 copyright paper51.com Dim cnn As ADODB.Connection paper51.com ‘声明一个数据集对象 paper51.com Dim rst As ADODB.Recordset paper51.com Dim sTokens() As String 内容来自论文无忧网 www.paper51.com '异常处理 copyright paper51.com On Error GoTo ExecuteSQL_Error paper51.com '用Split函数产生一个包含各个子串的数组 http://www.paper51.com
sTokens = Split(SQL) paper51.com
‘创建一个连接 paper51.com
Set cnn = New ADODB.Connection paper51.com '打开连接 内容来自www.paper51.com
cnn.Open ConnectString 内容来自论文无忧网 www.paper51.com If InStr("INSERT,DELETE,UPDATE", _ http://www.paper51.com UCase$(sTokens(0))) Then http://www.paper51.com ‘执行查询语句 http://www.paper51.com cnn.Execute SQL paper51.com
MsgString =sTokens(0) & _ 内容来自论文无忧网 www.paper51.com " query successful" 内容来自论文无忧网 www.paper51.com Else paper51.com
Set rst = NewADODB.Recordset copyright paper51.com
rst.Open Trim$(SQL),cnn, _ paper51.com
adOpenKeyset, _ http://www.paper51.com
adLockOptimistic paper51.com 'rst.MoveLast 'get RecordCount paper51.com '返回记录集对象 http://www.paper51.com Set ExecuteSQL =rst paper51.com MsgString ="查询到"& rst.RecordCount & _ http://www.paper51.com " 条记录 " paper51.com
End If 内容来自www.paper51.com ExecuteSQL_Exit: 内容来自论文无忧网 www.paper51.com Set rst = Nothing copyright paper51.com
Setcnn = Nothing 内容来自论文无忧网 www.paper51.com Exit Function paper51.com ExecuteSQL_Error: paper51.com MsgString = "查询错误: " & _ paper51.com Err.Description paper51.com Resume ExecuteSQL_Exit paper51.com End Function 内容来自论文无忧网 www.paper51.com 在ExecuteSQL函数中使用了Connect String函数,这个函数用来连接数据库,代码如下: 内容来自www.paper51.com Public Function ConnectString() _ paper51.com As String copyright paper51.com
'返回一个数据库连接 copyright paper51.com ConnectString = "FileDSN=ticket.dsn;UID=sa;PWD=" paper51.com
End Function paper51.com 在录入有关信息时,需要回车来进入下一个文本框,这样对软件使用者非常方便。在所有的功能模块都需要这个函数,所以将它放在公用模块中,代码如下: http://www.paper51.com Public Sub EnterToTab(Keyasc As Integer) 内容来自www.paper51.com
'判断是否为回车键 http://www.paper51.com If Keyasc = 13 Then paper51.com
'转换成Tab键 http://www.paper51.com SendKeys "{TAB}" http://www.paper51.com End If copyright paper51.com
End Sub http://www.paper51.com Keyasc用来保存当前按键,SendKeys函数用来指定的按键。一旦按下回车键,将返回Tab键,下一个控件自动获得输入焦点。 内容来自www.paper51.com 添加全局变量,用来记录各个功能模块的读写状态,代码如下: 内容来自论文无忧网 www.paper51.com Public gintSmode As Integer '记载舱位等级功能模块的读写状态 paper51.com Public gintPmode As Integer '记载客机信息模块的读写状态 内容来自论文无忧网 www.paper51.com
Public gintAmode As Integer '记载航线信息模块的读写状态 内容来自www.paper51.com Public gintTmode As Integer '记载客户类型模块的读写状态 paper51.com Public gintCmode As Integer '记载客户信息模块的读写状态 内容来自论文无忧网 www.paper51.com Public gintKmode As Integer '记载订票信息模块的读写状态 内容来自www.paper51.com 这些全局变量用来记录是添加状态还是修改状态,赋值1为添加,赋值2为修改。 内容来自www.paper51.com 由于航空公司管理信息管理系统启动后,需要对用户进行判断。如果登录者是授权用户,将进入系统,否则将停止程序的执行。这个判断需要在系统运行的最初进行,因此将代码放在公用模块中。 http://www.paper51.com 5 系统用户管理模块的创建 paper51.com 用户管理模块主要实现: copyright paper51.com l 用户登录。 内容来自论文无忧网 www.paper51.com l 添加用户。 http://www.paper51.com l 修改用户密码。 内容来自论文无忧网 www.paper51.com 6 舱位信息管理模块的创建 内容来自www.paper51.com
舱位信息管理模块主要实现如下功能: http://www.paper51.com l 添加舱位信息。 内容来自论文无忧网 www.paper51.com
l 修改舱位信息。 paper51.com l 删除舱位信息。 http://www.paper51.com
|