一、如何注册报表
进入机房项目从我们的共享盘里把机房收费系统下载了下来,首先按照我们的说明一点一点的配置我的数据库,这一点省略了,因为这个在敲学生时就学习了一遍,加上这次操作应该是可以轻而易举的完成所有的数据库连接。
连接完成后,使用说明上还有第三步注册文件,如果不注册会怎么样呢?点击日周结账会打不开,当我们按照样板做时会看不到它里面的内容,那就更别提实现它的功能了。按照说明上的进行注册,我遇到了问题总不能注册成功,接下来给大家说下如和才能注册成功吧!
1.复制到C盘
在机房收费系统所需素材中将三个控件复制到C盘下面,一开始我把它复制到了C盘System32 文件下下面了但是在cmd中调用不出来,可能我的电脑时64为的原因吧。
2.以管理员身份进入cmd
找到电脑中的:本地安全策略——>安全选项——>允许自动管理登陆——>右击属性改为已禁用
3.在cmd中进行命令
使用说明上是regsvr32+++ 其实在驱动器中是没有加号的,直接空格就可以,所谓它说的空格其实是下划线我们的路径,但是路径不需要我们一个个去打出来,我们复制在C盘中三个控件右击属性找到他的路径直接复制就可以了。
Win+R输入cmd
看到没有必须以管理员身份进入,regsvr32后面跟空格,剩下的直接复制路径,剩下的两个同样这样注册。
二、级别登陆
按照机房数据库表中dbo.User_Info的要求不可能是用一个统一的账号密码登陆就完事的,我们要提供给三种用户(一般用户、操作员、管理员)给予他们不同的功能和体验,接下来看我最后机房像是网吧里的主页面就能看出为什么不同的用户要进入不同的功能界面了~
上代码,看这段代码是如何读取我们的数据库实现不同功能界面的吧~
Private Sub cmdOK_Click()
Dim txtsql As String '连接数据库
Dim mrc As ADODB.Recordset '验证用户和用户级别
Dim msgtext As String '连接数据
Dim miCount
Dim txtsql1, msgtext1 As String
Dim mrc1 As ADODB.Recordset '用来将登录用户的信息更新到正在上机表中
username = ""
If Trim(txtUserName.Text = "") Then
MsgBox "没有这个用户, 请重新输入用户名!", vbOKOnly + vbExclamation, "警告"
txtUserName.SetFocus
Else
txtsql = "select * from user_Info where userID ='" & txtUserName.Text & "'"
Set mrc = ExecuteSQL(txtsql, msgtext)
If mrc.EOF Then
MsgBox "没有这个用户,请重新输入用户名!", vbOKOnly + vbExclamation, "警告"
txtUserName.SetFocus
Else
'判断用户级别
If Trim(mrc.Fields(2)) = Trim("一般用户") Then '一般用户的权限
If Trim(mrc.Fields(1)) = Trim(txtPassword.Text) Then '判断密码是否正确
txtsql1 = "select * from OnWork_Info" '获取到正在上机表
Set mrc1 = ExecuteSQL(txtsql1, msgtext1)
Me.Hide
username = Trim(txtUserName.Text) '将用户名给username
frmMain.Show
frmMain.GeneralUserMenu.Enabled = True
frmMain.GeneralUserMenu.Visible = True
frmMain.OperatorMenu.Enabled = False
frmMain.OperatorMenu.Visible = False
frmMain.AdministratorMenu.Enabled = False
frmMain.AdministratorMenu.Visible = False
mrc1.AddNew '添加更新到正在上机表里
mrc1.Fields(0) = Trim(username)
mrc1.Fields(1) = Trim(mrc.Fields(2))
mrc1.Fields(2) = Trim(Date)
mrc1.Fields(3) = Trim(Time)
'mrc1.Fields(4) = Trim(ComputerName)
mrc1.Update
mrc1.Close '关闭数据连接
Else
MsgBox "输入密码不正确,请重新输入!", vbOKOnly + vbExclamation, "警告"
txtPassword.SetFocus
txtPassword.Text = ""
End If
ElseIf Trim(mrc.Fields(2)) = Trim("操作员") Then '操作员的权限
If Trim(mrc.Fields(1)) = Trim(txtPassword.Text) Then '判断密码是否正确
txtsql1 = "select * from OnWork_Info" '获取正在上机表
Set mrc1 = ExecuteSQL(txtsql1, msgtext1)
Me.Hide
username = Trim(txtUserName.Text) '将用户名给username
frmMain.Show
frmMain.GeneralUserMenu.Enabled = True
frmMain.GeneralUserMenu.Visible = True
frmMain.OperatorMenu.Enabled = True
frmMain.OperatorMenu.Visible = True
frmMain.AdministratorMenu.Enabled = False
frmMain.AdministratorMenu.Visible = False
mrc1.AddNew '添加更新到正在上机表离去
mrc1.Fields(0) = Trim(username)
mrc1.Fields(1) = Trim(mrc.Fields(2))
mrc1.Fields(2) = Trim(Date)
mrc1.Fields(3) = Trim(Time)
'mrc1.Fields(4) = Trim(ComputerName)
mrc1.Update
mrc1.Close '关闭数据连接
Else
MsgBox "输入密码不正确,请重新输入!", vbOKOnly + vbExclamation, "警告"
txtPassword.SetFocus
txtPassword.Text = ""
End If
ElseIf Trim(mrc.Fields(2)) = Trim("管理员") Then '管理员的权限
If Trim(mrc.Fields(1)) = Trim(txtPassword.Text) Then '判断密码是否正确
txtsql1 = "select * from OnWork_Info" '获取到正在上机表
Set mrc1 = ExecuteSQL(txtsql1, msgtext1)
Me.Hide
username = Trim(txtUserName.Text) '将用户名给username
frmMain.Show
frmMain.GeneralUserMenu.Enabled = True
frmMain.GeneralUserMenu.Visible = True
frmMain.OperatorMenu.Enabled = True
frmMain.OperatorMenu.Visible = True
frmMain.AdministratorMenu.Enabled = True
frmMain.AdministratorMenu.Visible = True
mrc1.AddNew '添加更新到正在上机的表里
mrc1.Fields(0) = Trim(username)
mrc1.Fields(1) = Trim(mrc.Fields(2))
mrc1.Fields(2) = Trim(Date)
mrc1.Fields(3) = Trim(Time)
'mrc1.Fields(4) = Trim(ComputerName)
mrc1.Update
Else
MsgBox "输入密码不正确,请重新输入!", vbOKOnly + vbExclamation, "警告"
txtPassword.SetFocus
txtPassword.Text = ""
End If
Else
End '三者都不是直接退出
End If
OK = True
End If
当我输入操作员或一般用户的账户密码更高级的用户他们是用不了的,看一下我的操作员登陆界面。
怎么样?在下拉菜单中看不到我的管理员选项了吧,就算是我把我给管理员命名的
frmMain.AdministratorMenu.Visible = True取消掉它也是灰色不可用的,其实我就是想秀一下我的主页面啦~希望我的分享给大家带来启发。