以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助] (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=118247) |
||||
-- 作者:沪上游客 -- 发布时间:2018/4/27 15:36:00 -- [求助] 老师您好!五一快乐! 我在窗口设置了一个加载树,以下是AfterLoad 事件代码: 在"TreeView1" 的NodeMouseDoubleClick 事件也有相应代码 代码是对的,可以加载。但是这样用户就可以加载所有数据库的数据,我想达到用户只能加载所在部门的数据。我的项目中部门是以分组形式 请老师指教一下,怎么在窗口加载树按用户所在部门条件加载?谢谢! |
||||
-- 作者:沪上游客 -- 发布时间:2018/4/27 15:38:00 -- 以下是我的项目在启动时在项目事件AfterOpenProject 中的代码(参考一下,代码是执行对的) 谢谢老师 Dim Filter As String = "(合同状态 = \'执行中\' or 合同状态 is null)" Dim y As String = "(合同状态 = \'执行中\' or 合同状态 is null) and 所属年份 = \'" & Date.Today.Year - 4 & "\'" If User.Type = UserTypeEnum.Administrator Then DataTables("工程合同基础数据").LoadFilter = "" Tables("工程合同基础数据").OpenLoadTree("所属部门_区域公司|所属部门_分公司|所属部门_项目部|工程名称",200,20,True) Else If User.Type = UserTypeEnum.Developer Then DataTables("工程合同基础数据").LoadFilter = "" & filter Tables("工程合同基础数据").OpenLoadTree("所属部门_区域公司|所属部门_分公司|所属部门_项目部|工程名称",200,20,True,y) Else If User.Group = "总公司" Then DataTables("工程合同基础数据").LoadFilter = "" & filter Tables("工程合同基础数据").OpenLoadTree("所属部门_区域公司|所属部门_分公司|所属部门_项目部|工程名称",200,20,True,filter) Else If User.Group Like "*区域" Then DataTables("工程合同基础数据").LoadFilter = "所属部门_区域公司 = \'" & User.Group & "\' And " & filter Tables("工程合同基础数据").OpenLoadTree("所属部门_区域公司|所属部门_分公司|所属部门_项目部|工程名称",200,20,True,"所属部门_区域公司 = \'" & User.Group & "\' And " & filter) Else If User.Group Like "*分公司" Then DataTables("工程合同基础数据").LoadFilter = "所属部门_分公司 = \'" & User.Group & "\' And " & filter Tables("工程合同基础数据").OpenLoadTree("所属部门_区域公司|所属部门_分公司|所属部门_项目部|工程名称",200,20,True,"所属部门_分公司 = \'" & User.Group & "\' And " & filter) Else If User.Group = "项目部" Then Dim dr As DataRow dr = DataTables("操作人员").SQLFind("[姓名] = \'" & User.name & "\'") If dr IsNot Nothing DataTables("工程合同基础数据").LoadFilter = "项目部全称 = \'" & dr("项目部全称") & "\'" Tables("工程合同基础数据").OpenLoadTree("所属部门_区域公司|所属部门_分公司|所属部门_项目部|工程名称",200,20,True,"项目部全称 = \'" & dr("项目部全称") & "\'") End If End If DataTables("工程合同基础数据").Load() |
||||
-- 作者:有点甜 -- 发布时间:2018/4/27 15:40:00 -- 1、sql语句加上条件, where 部门 = \'" & user.Group & "\'
2、loadfilter加上条件 "部门 = \'" & user.Group & "\'"
3、同样的目录树点击事件也要加上条件 |
||||
-- 作者:沪上游客 -- 发布时间:2018/5/1 15:00:00 -- 谢谢老师! 我的部门是根据多列内容设置的,所以条件设置很复杂。现在上传事件代码给您看一下,请帮我指正一下。命令不报错,但加载树没有显示。 谢谢啦! [此贴子已经被作者于2018/5/1 15:06:42编辑过]
|
||||
-- 作者:沪上游客 -- 发布时间:2018/5/1 15:12:00 --
|
||||
-- 作者:沪上游客 -- 发布时间:2018/5/1 16:29:00 -- 老师你好! 我是要用用户的所属部门加载属于自己的数据,但我的项目设置的部门不在一列,也就是说项目部属于上级分公司,而分公司属于上级区域公司,如下图所示: 在项目打开时,我已经设置好,只是在窗口查询数据时要从后台加载数据,所以请老师指教一下,应该怎么做合理? 谢谢老师!
[此贴子已经被作者于2018/5/1 16:30:10编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2018/5/1 18:04:00 -- 1、根据user.group加载数据?逻辑是什么,举例说明。
2、尽量做一个foxtable实例上来测试。 |
||||
-- 作者:沪上游客 -- 发布时间:2018/5/1 20:02:00 -- [求助] 因为我的主表中设置了“所属部门_区域公司”、“所属部门_分公司”、“所属部门_项目部”三个列,而在用户管理中分别将这三个部门的人员设置了user.group(用户分组针对每个部门,比如:上海区域、上海分公司、项目部) 请问一下,窗口的加载树能不能直接引用表里加载树窗口?如果可以就简单多了。 谢谢! [此贴子已经被作者于2018/5/1 20:10:54编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2018/5/2 9:32:00 -- 参考
http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=114434&skin=0
|