以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 权限设置与加载树 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=27578) |
-- 作者:狐椒粉 -- 发布时间:2013/1/5 8:32:00 -- 权限设置与加载树 各位狐精: 本小狐遇到问题如下: 前提: 1、系列数据全部为外部数据; 2、有系列统计报告是基于这些数据完成的。
实现目的:分不同权限,查看不同的内容,如,张三为广州组的成员,张三只允许看到“城市=广州市”数据;总部组的人可以看到所有数据。
本小狐采用方法如下: 1、外部加载数据设置为: 过滤条件:[_Identify] Is Null 2、项目属性-项目事件 loadusersetting():
If User.Group= "总部" Then DataTables("大段份额").LoadFilter = "" DataTables("电视监测流水_明细").LoadFilter = "" DataTables("报纸监测流水_明细").LoadFilter = "" DataTables("电台流水模板_明细").LoadFilter = "" DataTables("杂志监测流水_明细").LoadFilter = "" DataTables("分钟收视率").LoadFilter = "" DataTables("广告刊例_明细").LoadFilter = ""
Else If User.Group= "广州" Then DataTables("大段份额").LoadFilter = "城市= \'广州市\'" DataTables("电视监测流水_明细").LoadFilter = "城市中= \'广州市\'" DataTables("报纸监测流水_明细").LoadFilter = "城市中= \'广州市\'" DataTables("电台流水模板_明细").LoadFilter = "城市中= \'广州市\'" DataTables("杂志监测流水_明细").LoadFilter = "城市中= \'广州市\'" DataTables("分钟收视率").LoadFilter = "城市= \'广州市\'" DataTables("广告刊例_明细").LoadFilter = "地区= \'广州市\'"
Else If User.Group= "昆明" Then DataTables("大段份额").LoadFilter = "城市= \'昆明市\'" DataTables("电视监测流水_明细").LoadFilter = "城市中= \'昆明市\'" DataTables("报纸监测流水_明细").LoadFilter = "城市中= \'昆明市\'" DataTables("电台流水模板_明细").LoadFilter = "城市中= \'昆明市\'" DataTables("杂志监测流水_明细").LoadFilter = "城市中= \'昆明市\'" DataTables("分钟收视率").LoadFilter = "城市= \'昆明市\'" DataTables("广告刊例_明细").LoadFilter = "地区= \'昆明市\'"
Else If User.Group= "贵阳" Then DataTables("大段份额").LoadFilter = "城市= \'贵阳市\'" DataTables("电视监测流水_明细").LoadFilter = "城市中= \'贵阳市\'" DataTables("报纸监测流水_明细").LoadFilter = "城市中= \'贵阳市\'" DataTables("电台流水模板_明细").LoadFilter = "城市中= \'贵阳市\'" DataTables("杂志监测流水_明细").LoadFilter = "城市中= \'贵阳市\'" DataTables("分钟收视率").LoadFilter = "城市= \'贵阳市\'" DataTables("广告刊例_明细").LoadFilter = "地区= \'贵阳市\'"
Else If User.Group= "重庆" Then DataTables("大段份额").LoadFilter = "城市= \'重庆市\'" DataTables("电视监测流水_明细").LoadFilter = "城市中= \'重庆市\'" DataTables("报纸监测流水_明细").LoadFilter = "城市中= \'重庆市\'" DataTables("电台流水模板_明细").LoadFilter = "城市中= \'重庆市\'" DataTables("杂志监测流水_明细").LoadFilter = "城市中= \'重庆市\'" DataTables("分钟收视率").LoadFilter = "城市= \'重庆市\'" DataTables("广告刊例_明细").LoadFilter = "地区= \'重庆市\'"
Else If User.Group= "深圳" Then DataTables("大段份额").LoadFilter = "城市= \'深圳市\'" DataTables("电视监测流水_明细").LoadFilter = "城市中= \'深圳市\'" DataTables("报纸监测流水_明细").LoadFilter = "城市中= \'深圳市\'" DataTables("电台流水模板_明细").LoadFilter = "城市中= \'深圳市\'" DataTables("杂志监测流水_明细").LoadFilter = "城市中= \'深圳市\'" DataTables("分钟收视率").LoadFilter = "城市= \'深圳市\'" DataTables("广告刊例_明细").LoadFilter = "地区= \'深圳市\'"
End If DataTables("大段份额").Load() DataTables("电视监测流水_明细").Load() DataTables("报纸监测流水_明细").Load() DataTables("电台流水模板_明细").Load() DataTables("杂志监测流水_明细").Load() DataTables("分钟收视率").Load() DataTables("广告刊例_明细").Load()
出现了如下问题: 因为启动时要加载所有数据,导致启动过程十分漫长; 但若需要采用加载树的话,权限设置等于报废了,张三可以看到所有数据;
各位狐精如何解决这个问题。
|
-- 作者:lin_hailun -- 发布时间:2013/1/5 8:40:00 -- 你可以自己设计一个分页加载树,修改加载的条件便可。 http://www.foxtable.com/help/topics/2692.htm |
-- 作者:狐椒粉 -- 发布时间:2013/1/5 11:32:00 -- 表分两部分: 1、原始表 2、基于原始表的统计表 原始表可以用加载树加载部分数据 统计表需要统计全部数据(基于后台统计) 这样,在加上权限设置,就比较麻烦了,不知怎么搞 |
-- 作者:lin_hailun -- 发布时间:2013/1/5 11:46:00 -- 以下是引用狐椒粉在2013-1-5 11:32:00的发言: 表分两部分: 1、原始表 2、基于原始表的统计表 原始表可以用加载树加载部分数据 统计表需要统计全部数据(基于后台统计) 这样,在加上权限设置,就比较麻烦了,不知怎么搞 没有多麻烦吧?统计数据的时候,不是也可以设置条件的么? 既然可以设置条件,就可以权限控制了。 |