Foxtable(狐表)用户栏目专家坐堂 → 权限冲突


  共有2065人关注过本帖树形打印复制链接

主题:权限冲突

帅哥哟,离线,有人找我吗?
一笑
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:808 积分:6213 威望:0 精华:0 注册:2014/3/23 23:02:00
权限冲突  发帖心情 Post By:2015/12/30 16:54:00 [只看该作者]

工作列中有3种内容"部门例会布置工作" 、 "公司例会布置工作"、"个人工作总结"
PrepareEdit写入:
第一段代码希望:当责任人有用户( _Username )、且工作属于"个人工作总结" 时,则才能对"进度","完成情况","工作内容"这3列进行修改。
Select Case e.Col.Name
    Case "进度","完成情况","工作内容"
        If e.Row("责任人") Like "*" & _Username & "*" And e.Row("工作") = "个人工作总结" Then
            e.Cancel = False
        Else
            e.Cancel = True
        End If
End Select

这一段是设想:当工作属于"部门例会布置工作" 或 "公司例会布置工作"时,只有具有“审核”权限的人才能对这3列进行修改

Select Case e.Col.Name
    Case "责任人","完成时间","工作内容"
        If Functions.execute("Shouquan", "周工作", "审核") And (e.Row("工作") = "部门例会布置工作" Or e.Row("工作") = "公司例会布置工作") Then
            e.Cancel = False
        Else
            e.Cancel = True
        End If
        If e.Row("工作") = "个人工作总结" Then
            e.Cancel = False
        End If        
End Select

实际运行时,单独运行,权限争取,如两段放在一起则发现权限冲突,如何实现设想,如何修改,谢谢

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/30 17:02:00 [只看该作者]

e.cancel = True
Select Case e.Col.Name
    Case "进度","完成情况","工作内容"
        If e.Row("责任人") Like "*" & _Username & "*" And e.Row("工作") = "个人工作总结" Then
            e.Cancel = False
        End If
End Select

Select Case e.Col.Name
    Case "责任人","完成时间","工作内容"
        If Functions.execute("Shouquan", "周工作", "审核") And (e.Row("工作") = "部门例会布置工作" Or e.Row("工作") = "公司例会布置工作") Then
            e.Cancel = False
        End If
        If e.Row("工作") = "个人工作总结" Then
            e.Cancel = False
        End If       
End Select


 回到顶部
帅哥哟,离线,有人找我吗?
一笑
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:808 积分:6213 威望:0 精华:0 注册:2014/3/23 23:02:00
  发帖心情 Post By:2016/1/2 9:04:00 [只看该作者]

测试了还是不行,有冲突,
另外,not like 语句报错,不能用吗?求解,
 If e.Row("责任人") not Like "*" & _Username & "*" And e.Row("工作") = "个人工作总结" Then 
谢谢

[此贴子已经被作者于2016/1/2 20:34:36编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/1/3 22:41:00 [只看该作者]

不可能,做例子上来。

 

 If e.Row("责任人") not Like "*" & _Username & "*" And e.Row("工作") = "个人工作总结" Then 

 

改成

 

 If e.Row("责任人") Like "*" & _Username & "*" = False And e.Row("工作") = "个人工作总结" Then 


 回到顶部
帅哥哟,离线,有人找我吗?
一笑
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:808 积分:6213 威望:0 精华:0 注册:2014/3/23 23:02:00
  发帖心情 Post By:2016/1/3 22:52:00 [只看该作者]

如下代码有效吗:
If Functions.execute("Shouquan", "周工作", "审核")  = False Then

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/1/3 23:43:00 [只看该作者]

是否有效,你可以在命令窗口执行

 

msgbox(Functions.execute("Shouquan", "周工作", "审核"))


 回到顶部