以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  关于记录录入人员或审核人的代码和菜单  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=53936)

--  作者:爱相随
--  发布时间:2014/7/18 11:38:00
--  关于记录录入人员或审核人的代码和菜单
老师:
1、因为无法在登录窗口增加用户所属的单位,我通过组定义来区分,但在增加录入人姓名时,增加或减少行时,操作人所在的部门和姓名就直接加上去了,没有点击保存退出后,记录还在,我的要求是,只有点击保存后所做的记录才保存。
2、因为用户属于不同的组(不同的公司和部分),所以有多个用户同时操作同一个表,但要求,操作人只能看见本组(公司或部门)的数据,不能看见其他公司录入的数据,本公司保存后,能看见本公司所有的数据,也可以只选择显示某一时间段的数据,而不同的公司的数据都保存在一个表里,按公司名称或部门集中在一起。而授权总公司的人可以查看所有组(公司或部门)的数据,而他所看到的是按组(公司或部门)和时间顺序在一起的,比如有A公司和B公司,集团某领导看到是:A公司的数据是在一起的,而且是按照时间顺序排列。B公司数据在一起,也是按照时间顺序排列的,还可以根据需要选择要查询的单位和部门,以及时间等来显示。
3、增加审核和弃审按钮,也只有点击后才把审核的状态和姓名加上或取消。
[此贴子已经被作者于2014-7-18 11:43:28编辑过]

--  作者:有点甜
--  发布时间:2014/7/18 11:45:00
--  

 问题1:如果没有点击保存,那么你可以还原所有操作,比如在AfterClose事件 http://www.foxtable.com/help/topics/1538.htm

 


--  作者:有点甜
--  发布时间:2014/7/18 11:47:00
--  

 问题2:你可以按需加载数据,按需隐藏表,按需控制各种操作。

 

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

 

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

 

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

 

 

 


--  作者:有点甜
--  发布时间:2014/7/18 11:48:00
--  
问题3: 审核和弃审的代码,就是简单的给表的单元格设置值而已。
--  作者:wymoonwalker
--  发布时间:2014/7/18 15:25:00
--  

借这个题目问一下。我也做了一个类似的表,不同的用户分别加载各自部门的表格。

引用的以下代码。请问我的项目里面有好几个表,其中还设有关联。“订单表”按如下修改完后设置成功,但其他表都不显示了。项目里面如果有四个表,其中俩表关联,有“业务员”项分别加载。剩下的俩表没有要求,所有用户都可以加载。LoadUserSetting代码应该怎么修改呢?

 

2、在项目的LoadUserSetting事件中设置代码,加载用户负责的订单:

If User.Name = "张经理" Then
    DataTables("订单").LoadFilter = ""
Else
   
DataTables("订单").LoadFilter = "业务员 = \'" & User.Name & "\'"
End
If
DataTables
("订单").Load()

 


--  作者:有点甜
--  发布时间:2014/7/18 15:33:00
--  

 回复5楼,要加载多少个表,写多少行代码。

 

 DataTables("订单").LoadFilter = "业务员 = \'" & User.Name & "\'"

 DataTables("产品").LoadFilter = "业务员 = \'" & User.Name & "\'"

 DataTables("员工").LoadFilter = "业务员 = \'" & User.Name & "\'"

 

 DataTables("订单").Load

 DataTables("产品").Load

 DataTables("员工").Load


--  作者:wymoonwalker
--  发布时间:2014/7/18 15:41:00
--  
非常感谢!
--  作者:爱相随
--  发布时间:2014/7/18 16:26:00
--  
If User.Name = "张经理" Then
    DataTables("订单").LoadFilter = ""
Else
    
DataTables("订单").LoadFilter = "业务员 = \'" & User.Name & "\'"
End
 If
DataTables
("订单").Load()
这段代码的If User.Name = "张经理" Then这段是定义用户名级别的,是到具体的人,但如果我要通过角色来定义,比如张三和李四都是经理,那么我把角色定义为录入人、审批人、批准人,如果增加用户王五、李六都是审批人(因为王五是A公司的审批人,李六是B公司的审批人),只要符合是“审批人”的角色,那么他就能够审核,请问代码怎么改?

--  作者:wymoonwalker
--  发布时间:2014/7/18 16:29:00
--  

甜大师,修改后,关联的子表“产品”表中“业务员”我做的表达式列,直接引用“订单”里面的“业务员”。登陆加载时提示“列名,业务员无效。”父表正常,子表空白。

这个不能用为表达式列吗?

还有,项目中不需要选择加载任何用户都可以看但只有开发者能编辑的表,如“行政区域”。代码怎么改呢?

 


--  作者:有点甜
--  发布时间:2014/7/18 16:29:00
--  

user.Roles

 

user.Group

 

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