Access权限 判断函数
时间:2006-11-17 22:22 来源:本站原创 作者:未知 阅读:次
Option Compare Database
Public Const ErrQX = "权限不足!请与管理员联系!"
Public YGNumber As String '员工编号
Public ygName As String '员工姓名
'///////////////////////////////////////---------验证用户权限 ------//////////////////////////////////////////////////
Public Function Frm_Qx(Frm As Form, UserID As String)
'在系统表里寻找登陆用户关于打开窗体的权限记录集
Dim sql As String
sql = "SELECT * from Tbl_权限 where 用户='" & UserID & "'and 对象='" & Frm.Name & "';"
'打开记录集
Dim db As ADODB.Connection
Dim rs As New ADODB.Recordset
Set db = CurrentProject.Connection rs.Open sql, db, adOpenStatic, adLockReadOnly
'如果记录为空,改用户没有任何权限
If rs.BOF And rs.EOF Then
MsgBox ErrQX, vbCritical, "错误"
DoCmd.RunCommand acCmdClose
Exit Function
End If
'如果权限为 "全部"
If rs!完全 = True Then
Frm.AllowAdditions = True
Frm.AllowEdits = True
Frm.AllowDeletions = True
Exit Function
End If
'如果权限为"只读"
If rs!只读 = True Then
Frm.AllowAdditions = False
Frm.AllowEdits = False
Frm.AllowDeletions = False
Exit Function
End If
'如果全是否,忘记填写了...
If rs!只读 = False And rs!添加 = False And rs!删除 = False And rs!修改 = False And rs!完全 = False Then
MsgBox ErrQX, vbCritical, "错误"
DoCmd.RunCommand acCmdClose
Exit Function
End If
'其他情况就是按照正常的选择了..
Frm.AllowAdditions = rs!添加
Frm.AllowEdits = rs!修改
Frm.AllowDeletions = rs!删除
End Function
'///////////////////////////////////////---------END ------//////////////////////////////////////////////////
Public Const ErrQX = "权限不足!请与管理员联系!"
Public YGNumber As String '员工编号
Public ygName As String '员工姓名
'///////////////////////////////////////---------验证用户权限 ------//////////////////////////////////////////////////
Public Function Frm_Qx(Frm As Form, UserID As String)
'在系统表里寻找登陆用户关于打开窗体的权限记录集
Dim sql As String
sql = "SELECT * from Tbl_权限 where 用户='" & UserID & "'and 对象='" & Frm.Name & "';"
'打开记录集
Dim db As ADODB.Connection
Dim rs As New ADODB.Recordset
Set db = CurrentProject.Connection rs.Open sql, db, adOpenStatic, adLockReadOnly
'如果记录为空,改用户没有任何权限
If rs.BOF And rs.EOF Then
MsgBox ErrQX, vbCritical, "错误"
DoCmd.RunCommand acCmdClose
Exit Function
End If
'如果权限为 "全部"
If rs!完全 = True Then
Frm.AllowAdditions = True
Frm.AllowEdits = True
Frm.AllowDeletions = True
Exit Function
End If
'如果权限为"只读"
If rs!只读 = True Then
Frm.AllowAdditions = False
Frm.AllowEdits = False
Frm.AllowDeletions = False
Exit Function
End If
'如果全是否,忘记填写了...
If rs!只读 = False And rs!添加 = False And rs!删除 = False And rs!修改 = False And rs!完全 = False Then
MsgBox ErrQX, vbCritical, "错误"
DoCmd.RunCommand acCmdClose
Exit Function
End If
'其他情况就是按照正常的选择了..
Frm.AllowAdditions = rs!添加
Frm.AllowEdits = rs!修改
Frm.AllowDeletions = rs!删除
End Function
'///////////////////////////////////////---------END ------//////////////////////////////////////////////////
(责任编辑:admin)
顶一下
(1)
100%
踩一下
(0)
0%
相关内容
- ·关于 Partition 函数在分组查询中的应
- ·Access算术运算符的含义和说明表
- ·mid函数的另类用法
- ·access制作程序运行进度框
- ·Function与Sub的异同(函数调用)
- ·Access判断某个数值是否为某个数据类型
- ·select case后面语句块的值的四种格式
- ·vba条件语句的两种表示方法
- ·Access几种数据类型初始化的值
- ·Access vba null与""空字符串的区别
- ·access vba 数据类型表
- ·Access变量的命名规则
- ·Access中EXIT Sub与End Sub的区别
- ·Access vba中参数前关键字ByRef和ByVal
- ·Access列表框快速全选的技巧【最快】
- ·vba函数的数据类型强制转换
最新内容
推荐内容