登录者对象login

6295
3

xxxl 数据领袖Lv6

发表于2020-12-4 14:41

楼主
本帖最后由 xxxl 于 2020-12-4 14:53 编辑

一、简介
     登录者对象表达式用于获取登录者信息,如id,名称,权限等,可用于过滤条件、参数组件节点过滤、宏文本等


二、登录者对象Login属性
属性名
简介
示例
id
账号
Login.id — 比如默认账号是admin
name
名称
Login.name — 比如默认账号的名称为"系统管理员"
org
得到一个机构,这个机构是用户自己定义的
Login.org.id — 比如返回cz
orgid
部门代码
Login.orgid — 比如返回cz
orgname
部门名称
Login.orgname — 比如返回船总
datalevel
数据级次
login.datalevel — 比如返回当前设置的数据级次维代码,如“000000”
如果需要获取用户的扩展字段,用法为: login.user.用户自定义扩展字段"属性名",例如:login.user.email


三、登录者对象Login方法

方法名
简介
示例
getDataLevel(String rid)
返回登陆者在指定rid中的数据级次维,如,rid可为报表rid,主题集rid,主题域rid,如果为空,默认获取当前报表数据级次维,若为空,则在主题集中找,主题集中也没有设置,则在主题域中找
Login.getDataLevel("EDSU$2$d5f686ac7c4b444181bc677dfdece15a")
是返回当前主题域对应的数据级次维第一条数据
getDataLevels用法相同,返回数据为设置数据级次维字符串数组
check(rid,oper,datalevel)
表达式验证权限的方法,返回true|false,rid表示待验证的资源ID,可以为null为null时表示取当前报表的资源ID;oper为表示对该资源ID的操作一般取值为view,datalevel表示验证数据级次权限。
login.check('','','420000')表示验证当前登录用户对该表是否有420000的数据级次权限,三个参数不不可缺少一
print()
输出login对象的所相关属性,返回的是一个字符串。
login.print()


四、补充
     针对login.org对象机构用户还有以下属性
属性名
简介
示例
id
id
Login.org.id — 比如返回cz
name
同id
Login.org.name
caption
名称
Login.org.caption — 比如返回船总
isleaf
是否是最下级机构
Login.org.isleaf — 比如返回false
parent
所属的上级机构
Login.org.parent — 比如返回null
parents
本机构及上级机构组成的数组,数组的元素仍是机构对象。
注意:数组的第一个元素是根机构,依次到最后是本机构
login.org.parents
机构自定义属性
在权限管理中定义的机构的属性。通过属性名直接访问。
有哪些自定义属性,请参考权限管理。



五、应用举例
    1.需要根据登录者用户名对主题表字段进行过滤
    在过滤条件中写:主题表字段='<#=login.id#>'
    2.在维下拉的根节点显示中,想要让根节点显示为用户字段自定义的扩展字段名,假设该属性扩展字段名为xzqh
    在维下拉根节点显示属性中就写:login.user.xzqh
    3.需要给参数组件设置默认为用户的机构代码
    在参数组件默认值中写:<#=login.org.id#>
    4.需要在文本中显示用户的机构名称
    在文本写宏:<#=login.orgname#>

最近看过此主题的会员

阿瓦大

qwz

429661127

Ly_LJY

关晓彤的老公

hhdtest

w1371228041

Gardenia

zhaojinjin

wukongsky

jonie

esen_4T463X0SBX

18301609034

3个回答

只看楼主

abiiba 小试身手Lv3

发表于2020-12-5 09:36

只看该作者

取消 关注该作者的回复

沙发

请问,需要根据登录者用户名对主题表字段进行过滤
    在过滤条件中写:主题表字段='<#=login.id#>',第一次打开图表分析,加载的时候非常慢,什么原因,如何解决?

xxxl 数据领袖Lv6

发表于2021-1-8 13:34

只看该作者

取消 关注该作者的回复

板凳

abiiba 发表于 2020-12-5 09:36
请问,需要根据登录者用户名对主题表字段进行过滤
    在过滤条件中写:主题表字段='',第一次打开图表分析 ...

您用的是什么数据库呢

esen_4FEZ7U2INX 小试身手Lv3

发表于2024-3-5 09:49

只看该作者

取消 关注该作者的回复

地板

请问一下,利用这种方法实现用户的分级分权,可不可以设置一些超级用户,使这些用户可以查看多个地市的数据,如何实现

登录后可回答问题,请登录注册

快速回复 返回顶部 返回列表

小时

全天响应

分钟

快速处理问题

工程师强势助力

明星产品
解决方案
联系合作

400咨询:400-0011-866

技术支持QQ:400-0011-866(工作日9:00-18:00)

产品建议邮箱yixin@esensoft.com

关注我们

扫TA学习更多干货

一对一专家交流

版权所有© 2006-2024 北京亿信华辰软件有限责任公司 京ICP备07017321号 京公网安备11010802016281号