以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]如何实现工作流这样的授权?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=35178)

--  作者:syzsyk
--  发布时间:2013/6/25 18:18:00
--  [求助]如何实现工作流这样的授权?
工作流授权问题,有4个角色,分别为A、B、C、D,负责不同的工作,用户有张三、李四、王五、赵六,按一个月算,每天每人的角色是固定的的,但天与天之间的角色可能是不一样的,需要每个月前预先授权,如下图1、2、3、4等是日期,这样的授权应该可以实现吧?
图片点击可在新窗口打开查看此主题相关图片如下:图片1.png
图片点击可在新窗口打开查看

--  作者:狐狸爸爸
--  发布时间:2013/6/25 18:24:00
--  

呵呵,这有什么难度呢?

根据姓名和日期,找出某人在某日的角色,很简单的一个查找问题啊。

 


--  作者:syzsyk
--  发布时间:2013/6/25 18:32:00
--  
狐爸,具体怎么实现,请详细指点,先谢谢了!
--  作者:狐狸爸爸
--  发布时间:2013/6/25 18:41:00
--  

参考:

http://www.foxtable.com/help/topics/0396.htm

 

具体得看这个表的结构。

 

 


--  作者:syzsyk
--  发布时间:2013/6/27 0:01:00
--  
这样的表,表名“授权表”,好实现吗?
图片点击可在新窗口打开查看此主题相关图片如下:图片2.png
图片点击可在新窗口打开查看

--  作者:qq121454970
--  发布时间:2013/6/27 8:54:00
--  
哈,这个太好实现了
--  作者:qq121454970
--  发布时间:2013/6/27 9:01:00
--  
Dim dt As DataTable
Dim dr As DataRow
Dim cmd As New SQLCommand
cmd.ConnectionName = "数据源名称
cmd.CommandText = "Select * From {授权表} Where [用户名] = \'" & _UserName & "\'"
dt = cmd.ExecuteReader
If dt.DataRows.Count = 0 Then
    MessageBox.Show("权限管理表中无该用户组!")
Else
    dr = dt.DataRows(0)
    If dr("权限名") = True Then
        \'执行你的代码段
    Else
        MessageBox.Show("权限不足,请联系管理员!","提示",MessageBoxButtons.OK,MessageBoxIcon.Warning)
    End If
End If
[此贴子已经被作者于2013-6-27 9:02:09编辑过]

--  作者:狐狸爸爸
--  发布时间:2013/6/27 9:09:00
--  

不用sql语句,用foxtable的查找楼主会老理解一点:

 

 

Dim dt As Date = #6/20/2013#
Dim us As String = "张三"
Dim dr As DataRow = DataTables("授权表").Find("用户名 = \'" & us & "\' And 日期 = #" & dt & "#")
If dr IsNot Nothing Then
    If dr("权限名称") = True Then
        Messagebox.show("恭喜,有权限!")
    Else
        Messagebox.show("兄弟,别乱来!")
    End If
Else
        Messagebox.show("嘿嘿,名单中没有你哦")
End If

 

 


--  作者:qq121454970
--  发布时间:2013/6/27 9:29:00
--  

老爹好幽默......

还“兄弟别乱来”图片点击可在新窗口打开查看


--  作者:syzsyk
--  发布时间:2013/6/27 13:15:00
--  

狐爸,实现当天以某用户进入实现“入场监督查验”、“检疫申报”、“宰前检查”、“同步检疫”权限,红色代码如何改写?:

Dim dt As Date = Date.Today
Dim us As String = "User.name"
Dim dr As DataRow = DataTables("屠宰检疫用户授权").Find("用户名 = \'" & us & "\' And 日期 = #" & dt & "#")
If dr IsNot Nothing Then
    If dr("入场监督查验") = True  Then
        Messagebox.show("恭喜,有权限!")
    Else
        Messagebox.show("兄弟,别乱来!")
    End If
Else
        Messagebox.show("嘿嘿,名单中没有你哦")
End If

另,Messagebox.show("恭喜,有权限!")等无法关闭。