以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  移动版 等级查询  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=115751)

--  作者:yifan3429
--  发布时间:2018/3/13 20:19:00
--  移动版 等级查询
Dim bm As String
        Dim gw As String
        Dim name As String
        Dim userid = Functions.Execute("验证函数",e,"xsbe.htm")
        If userid > "" Then
            wb.AppendCookie("userid",userid) \'将用户名和密码写入cookie
            Dim wxdr As DataRow =  DataTables("users").SQLFind("userid=\'" & userid & "\'")
            If wxdr IsNot Nothing Then
                gw =  wxdr("position")
                name = wxdr("name")
                Dim wxdr1 As DataRow = DataTables("departments").SQLFind("id=\'" & wxdr("department") & "\'")
                If wxdr1 IsNot Nothing Then
                    bm= wxdr1("name")
                End If
                


With wb.AddTable("","Table1")
                    .Alternate = 3
                    Dim nms() As String = {"报备人","用户姓名","楼盘","单元房号","客户等级","用户电话","用户微信","户型" ,"状态"}
                    .Head.AddRow(nms)
                    For Each r As DataRow In DataTables("终端用户").sqlSelect("[部门] = \'" & bm & "\'", "", "日期 Desc")


查询想设计两个等级设有   营销部  
                                  下辖    营销一部  营销二部   营销三部  

部门  这一列分别会填入   营销一部 或 营销二部 或  营销三部
设计需求是:总监可以查看  营销一部  营销二部   营销三部   所有
                  分主管只能查看    营销一部   自己的部门的行

现在的代码只能分主管查看自己的部门
总监不能查看所有三个部门的行
求助



                        With .Body.AddRow(r("报备人"),r("用户姓名"),r("楼盘"),r("单元房号"),r("客户等级"),"<a href=\'tel:" & r("用户电话") & "\'>" & r("用户电话") & "</a>",r("用户微信"),r("户型"),r("状态"))
                            \'.AddCell(Format(r("日期"),"MM月dd日"))
                        End With
                    Next
                End With
                e.WriteString(wb.Build)
[此贴子已经被作者于2018/3/13 20:19:17编辑过]

--  作者:有点蓝
--  发布时间:2018/3/13 20:27:00
--  
……
Dim nms() As String = {"报备人","用户姓名","楼盘","单元房号","客户等级","用户电话","用户微信","户型" ,"状态"}
.Head.AddRow(nms)

Dim filter As String = ""
If name <> "总监" Then
    filter = "[部门] = \'" & bm & "\'"
End If
For Each r As DataRow In DataTables("终端用户").sqlSelect(filter , "", "日期 Desc")
……

--  作者:yifan3429
--  发布时间:2018/3/14 0:26:00
--  
总监只能看营销部  同时也有若干个市场部, 他只能加载营销部下面的行,不允许看全部
这个代码懂事长可以用


[此贴子已经被作者于2018/3/14 0:26:35编辑过]

--  作者:有点甜
--  发布时间:2018/3/14 8:57:00
--  

Dim fdr = DataTables("权限").find("部门 = \'" & bm & "\'")

If fdr IsNot Nothing Then
    filter = "[部门] in (\'" & fdr("下属").replace(",", "\',\'") & "\')"

Else

    filter = "[部门] = \'" & bm & "\'"
End If
msgbox(filter)


--  作者:yifan3429
--  发布时间:2018/3/14 20:01:00
--  
筛选的关键词只能在部门这一列  都会有 营销 字符  只能筛选部门包含 营销 的字符才行
不能有 下属 一列
需要怎么写代码呢

--  作者:有点甜
--  发布时间:2018/3/14 20:55:00
--  

做一个权限表,如果部门是【营销部】的,就在下属列填入对应的部门【营销一部,营销二部,营销三部】

 

如果是总监,其部门是【营销部】,参考4楼代码。