设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

123下一页
返回列表 发新帖
查看: 3682|回复: 26
打印 上一主题 下一主题

[Access本身] 求助! 权限.

[复制链接]
跳转到指定楼层
1#
发表于 2007-12-5 16:08:40 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
大家好….. ,又来麻烦大家了….
想请一位高手帮忙我做的系统终于快收尾了…. 但还有一个大难题,权限

我不会做权限 所以,有没有人帮帮我….. 谢谢大家了…..

我再详细描述一下想要的权限:
1\
有一个管理员,他能进行所有的ACCESS操作.并对分发权限给新增人员及密码
       :除了这个人,所有的人都没有删除的权利
2\
总经理\运作部: 能对所有的窗体进行-----添加\修改\查找
3\
前台: 只能对Staff 也就是雇员记录进行----添加\修改\查找
4\
财务部: 能对订单\附加合同\合同进行---- 修改\查找
5\
销售部: 能对”Customer(客户记录)\ 报价单进行----添加\查找
(
:不能修改)
      : 销售部的人,只能查找到与自己相关的信息
6\
产品”—窗体,所有的人都能浏览,查找.
(
总经理\运作部能对其进行添加\修改)

7\
每个人有每个人自己的用户名和密码,由管理员设定.
(
可以找管理员修改,忘了的话管理员可以删除重设)
8\
进入的时候, 数据库的窗口是隐藏的,管理员操作的话,是不是打开时好像按什么键能进入数据库窗口状态?


,好像就上面了,是不是很麻烦 谢谢大家了…..

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
28#
发表于 2008-6-27 20:06:43 | 只看该作者
有没有直接通过语句,从用户类别判断权限的?
27#
 楼主| 发表于 2007-12-26 17:55:40 | 只看该作者
太好了,有希望了....

不过,控制窗体记录的代码窗体?

能不能麻烦你一下,能E给我一个例子吗? 登录框架就行..!
拜托了!
26#
发表于 2007-12-26 17:38:39 | 只看该作者
Function.......End Function  是放在模块中的。
其他的代码放在要控制窗体记录的代码窗体中去。
25#
发表于 2007-12-26 17:35:46 | 只看该作者
我这里就是拆分使用的呀。
24#
 楼主| 发表于 2007-12-26 17:32:51 | 只看该作者
还想再请问静儿:
权限做完以后,拆分共享成功了吗?
23#
 楼主| 发表于 2007-12-26 17:32:02 | 只看该作者
如果不方便的话,把例子发到我邮箱也行,谢谢了
g.g.go@126.com
QQ: 125741026
22#
 楼主| 发表于 2007-12-26 17:29:47 | 只看该作者
原帖由 静儿 于 2007-12-26 17:27 发表
Private Sub Form_BeforeUpdate(Cancel As Integer)  '非复核人不能修改已复核的记录。
If 权限("超级用户") = False and Me.复核 = True Then
       Cancel = True
       Me.Undo
       MsgBox "本单已复核, ...



谢谢,能给个例子看看吗? 谢谢了....
我是个见代码晕的人.因为我不知道把你这段代码放哪....
21#
发表于 2007-12-26 17:27:44 | 只看该作者
Private Sub Form_BeforeUpdate(Cancel As Integer)  '非复核人不能修改已复核的记录。
If 权限("超级用户") = False and Me.复核 = True Then
       Cancel = True
       Me.Undo
       MsgBox "本单已复核,若要更改本记录,请联系财务部。"
       Exit Sub
End If
End Sub
20#
发表于 2007-12-26 17:24:13 | 只看该作者
呵呵,我刚做过的,当然是在各版主的帮助下完成的。
Function 权限(类型 As String) As Boolean     '类型为安全工作组中的组名称。用于查看当前用户是否归属于该组。
Dim Rs As New ADODB.Recordset
Dim Sql As String
Dim StrPath As String
StrPath = CurrentProject.Path & "\sys.mdw"  ' 同目录下的工作组文件。
Rs.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Trim(StrPath) + ";"
Sql = "SELECT DISTINCT MSysAccounts_1.Name FROM (MSysAccounts INNER JOIN MSysGroups ON MSysAccounts.SID = MSysGroups.GroupSID) INNER JOIN MSysAccounts AS MSysAccounts_1 ON MSysGroups.UserSID = MSysAccounts_1.SID WHERE (((MSysAccounts_1.Name)=CurrentUser()) AND ((MSysAccounts.Name)='" & 类型 & "'));"
Set Rs = Rs.ActiveConnection.Execute(Sql)

If Rs.EOF Then
   权限 = False
Else
   权限 = True
End If
Set Rs = Nothing
End Function

Private Sub Form_Current()  
If 权限("超级用户") = True Then'安全工作组中有一个“超级用户”组,归入该组的人有审核权。
   Me.复核.Enabled = True
   Me.经办人.Locked = False
Else
   Me.复核.Enabled = False
   Me.经办人.Locked = True
End If
End Sub

Private Sub Form_Load()
On Error Resume Next
If 权限("查看组") = False  Then    '如果该用户有归属于查看组(老大和审批人),则显示所有记录,否则就只显示自己经办的记录。
   Me.Filter = "[经办人] like '" & CurrentUser() & "*'"
   Me.FilterOn = True
End If
DoCmd.GoToRecord , , acLast
End Sub
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-29 15:23 , Processed in 0.101933 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表