以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 列权限问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=82939) |
-- 作者:douglas738888 -- 发布时间:2016/3/28 15:04:00 -- 列权限问题 老师看看,我的代码错在哪里,没有实现功能 If e.Col.Name = "流程2_校对" Then \'如果修改的是流程2_校对列输入名字 If e.Row.IsNull("流程2_校对") = False Then \'如果已经有名字内容 If e.Row.IsNull("流程2_完成") = True Then \'如果该逻辑列没有勾选 If _UserName <> "_UserName" Then \'名字不是流程2_校对的名字 e.Cancel = True \'那么禁止编辑,勾选逻辑列流程2_完成 Else MessageBox.show("你无校对权限!") End If End If End If End If 想实现的是,如果流程2_校对列内的名字不是登录名,无权勾选流程2_完成的逻辑列
[此贴子已经被作者于2016/3/28 15:09:07编辑过]
|
-- 作者:大红袍 -- 发布时间:2016/3/28 15:14:00 -- If e.Col.Name = "流程2_校对" Then \'如果修改的是流程2_校对列输入名字 If e.Row.IsNull("流程2_校对") = False Then \'如果已经有名字内容 If e.Row("流程2_完成") = True Then \'如果该逻辑列没有勾选 If _UserName <> e.Row("流程2_校对") Then \'名字不是流程2_校对的名字 e.Cancel = True \'那么禁止编辑,勾选逻辑列流程2_完成 Else MessageBox.show("你无校对权限!") End If End If End If End If [此贴子已经被作者于2016/3/28 16:34:14编辑过]
|
-- 作者:douglas738888 -- 发布时间:2016/3/28 15:51:00 -- 老师再看看测试例子,我试着放了几个属性都不对,应放在哪里 PrepareEdit 帮助里提醒 是不能放的,会死循环 DataColChanging 不对 LoadUserSetting 也不对 |
-- 作者:大红袍 -- 发布时间:2016/3/28 15:53:00 -- startEdit事件。 |
-- 作者:douglas738888 -- 发布时间:2016/3/28 16:27:00 -- 老师,我刚才的代码写的有点错误,If e.Col.Name = "流程2_校对" ,应改成"流程2_完成",现在是出现了提示窗后按确定,登录人员不是流程2_校对人员, 但是流程2_完成的逻辑列自动打钩了,应该登录用户不是流程2_校对的名字,逻辑列是不能打钩的。
If e.Col.Name = "流程2_完成" Then \'如果修改的是流程2_完成列没有打钩 If e.Row.IsNull("流程2_校对") = False Then \'如果已经有名字内容 If e.Row("流程2_完成") = False Then \'如果该逻辑列没有勾选 If _UserName <> _UserName Then \'名字不是流程2_校对的名字 e.Cancel = False \'那么禁止编辑和勾选逻辑列流程2_完成 Else MessageBox.show("你无校对权限!") End If End If End If End If [此贴子已经被作者于2016/3/28 16:33:50编辑过]
|
-- 作者:大红袍 -- 发布时间:2016/3/28 16:34:00 -- If e.Col.Name = "流程2_完成" Then \'如果修改的是流程2_校对列输入名字 If e.Row.IsNull("流程2_校对") = False Then \'如果已经有名字内容 If _UserName <> e.Row("流程2_校对") Then \'名字不是流程2_校对的名字 MessageBox.show("你无校对权限!") e.Cancel = True \'那么禁止编辑,勾选逻辑列流程2_完成 End If End If End If |
-- 作者:douglas738888 -- 发布时间:2016/3/29 9:10:00 -- 根据老师指导的代码,如果不增加 Like "*" & _UserName & "*",单人操控审核是对的 现在,流程2_完成列,为多值的多人审核,下面的代码应该怎样修改,我用%通配符也不对,请老师看看 If e.Col.Name = "流程2_完成" Then \'如果修改的是流程2_校对列输入名字 If e.Row.IsNull("流程2_校对") = False Then \'如果已经有名字内容 If _UserName <> e.Row("流程2_校对") Like "*" & _UserName & "*" Then \'名字不是流程2_校对的名字 MessageBox.show("你无校对权限!") e.Cancel = True \'那么禁止编辑,勾选逻辑列流程2_完成 End If End If End If [此贴子已经被作者于2016/3/29 9:20:42编辑过]
|
-- 作者:大红袍 -- 发布时间:2016/3/29 9:23:00 -- If e.Row("流程2_校对") Like "*" & _UserName & "*" = False Then \'名字不是流程2_校对的名字 |