图5-11 药品供货商信息界面
图5-12 药品查询界面
图5-13 供应商查询界面
图5-14 管理员信息界面
图5-15 输出报表格式
6 系统实施与测试
6.1功能模块实施
完成了前面的系统分析与设计后,进入后期的系统实施阶段。在本系统实施过程中,采用自顶向下的实现方法。先实现上层模块,逐步向下,最后实现下层最基本的模块,以确保系统结构和各模块接口的正确性。这一部分主要是代码的编写,代码部分出于篇幅限制,在这挑选几个功能模块来作说明。
模块1的主要功能是定义一些公用变量和常量以及连接数据库。
Module1.bas ‘新建Module1.bas
Public Function connectstring() As String
connectstring = "Provider=microsoft.jet.oledb.4.0;Persist Security Info=False;Data Source=" + _
App.Path & "\date\date.mdb;" ‘定义connectstring函数
End Function
Public Function ExecuteSQL(ByVal sql As String) As ADODB.Recordset
Dim mycon As ADODB.Connection
Dim rst As ADODB.Recordset
Set mycon = New ADODB.Connection
mycon.ConnectionString = connectstring ‘设置数据源
mycon.Open ‘建立同数据源的物理连接
Dim stokens() As String
On Error GoTo exectuesql_error
stokens = Split(sql)
If InStr("INSER,DELETE,UPDATE", UCase(stokens(0))) Then
mycon.Execute sql
Else
Set rst = New ADODB.Recordset
rst.Open Trim(sql), mycon, adOpenKeyset, adLockOptimistic
Set ExecuteSQL = rst
End If
exectuesql_exit:
Set rst = Nothing
Set mycon = Nothing
Exit Function
exectuesql_error:
Resume exectuesql_exit
End Function
主要功能是用户登陆,设置密码以保护数据库。
图6-1 登陆窗体
Private Sub cmdOK_Click()
If Trim(txtUserName.Text) = "" Then
MsgBox "用户名不能为空", vbExclamation + vbOKOnly, "警告"
txtUserName.SetFocus
Exit Sub
End If
If Trim(txtpassword.Text) = "" Then
MsgBox "密码不能为空", vbExclamation + vbOKOnly, "警告"
txtpassword.SetFocus
Exit Sub
End If
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & App.Path & "\date\date.mdb" ‘连接数据源
rs.Open "select * from 用户表 where 用户名='" & txtUserName.Text & "' and 密码='" & txtpassword.Text & "'", conn, adOpenStatic, adLockReadOnly, adCmdText ‘查找
If rs.EOF Then ‘如果找不到记录
MsgBox "对不起,无此用户或者密码不正确,请重新输入!", vbCritical, "错误"
txtUserName.SetFocus
txtUserName.SelStart = 0
txtUserName.SelLength = Len(txtUserName)
ntrycount = ntrycount + 1 ‘尝试次数加1
If ntrycount >= 3 Then
MsgBox "由于您的错误操作次数太多,你无权使用本软件!", vbCritical, "无权限"
Unload Me
End If
Else
Load Form2
Form2.Show
Unload Me
End If
End Sub
Private Sub Form_Activate()
txtUserName.SetFocus ‘用户框获得焦点
End Sub
Private Sub Form_Load()
FrmSkin1.Skin Me ‘使用FrmSkin1控件
FrmSkin1.ColorScheme = XP_Silver
End Sub
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... 下一页 >>