【辰哥小课堂】亿信BI报表设计之对象表达式

2463
4

辰哥 管理员

发表于2018-11-21 09:31

楼主
       我们常熟见的对象表达式不是login.do就是drillcell.txt,那对象表达式到底是什么呢?

      简单讲,就是通过对象的属性及方法,访问服务器上的任何资源。

何为属性及方法
      对象很富有,它拥有属性和方法,对象用它们可以做任何他可以做的事。
      如果我本人是一个对象,性别、身高、体重等为我的属性;而我可以用我这个对象去工作、洗衣、打球等活动,这就是方法。


如何访问对象      
       访问对象的属性和方法的格式为:
       (1对象.属性
       比如:myme.name=”小王”  ;  myme.age=” secret”
       (2)对象.方法
       比如:this.display表示display(this)


对象的特点      
       1. 对象本身是有值的,如:A1.value
       2. 对象、属性、方法大小写不敏感
       3. 对象的属性、方法可能是另一个对象,可以继续引用。比如:A1.dimitem可获取A1表元的指标对应维项目;A1.dimitem.level可获取A1表元的指标对应维项目所在的级次
       4. 可以用函数去处理对象的属性和方法,如:left(A1.text,1)

亿信BI常用的对象表达式
Self对象
       self对象是表达式所在的对象,比如在表元的表达式中用self引用表元自己
       self.value—表元的原始值
       self.txt—表元的显示值
       self.index—表元在浮动出来的节点中的序号
       self.row—表元所在行号

Login对象
       login.id—登录用户的id
       login.org.id—登录用户所在机构的id

参数对象
       @jg.txt—计算时,所选参数值对应的文字
       @jg.level—计算时,选择参数值在维表中的级次

钻取表元对象
       drillcell.txt—钻取表元的显示文字,常用于下钻表中

计算信息对象
       calcinfo.sql—报表计算时的sql


应用实例
实例(一):
       表元对象
     【需求说明】
      使用对象表达式对浮动表元值进行排名,如下图:


       【实现方法】
       查询《对象表达式字典》,我们发现rank表元对象的属性刚好满足需求。
       那我们来看看,rank属性的作用是什么?
       表元对象属性rank:表元的排名。
       例子:self.rank --- 如果本表元的值最大,则返回1
       所以我们只需要在C2表元输入B2.rank即可,效果如下图:


实例(二):
       参数对象
     【需求说明】
       1. 表头需要显示报表期参数(@bbq)选择的报表期;
       2. 选择机构参数(@jg)时,报表展示其直接下级的数据;如下图


       【实现方法】
       查询《对象表达式字典》,我们发现只需要用到txt属性(当前参数值对应的文字)和level属性(当前参数值在维度中的层级)即可
       1. 表头文本使用宏表达式,引用参数对象的txt属性,表达式为<#=@bbq.txt#>
       2. 浮动维表元的下钻级次属性中,使用宏表达式引用参数@jg的level属性,表达式为<#=@jg.level+1#>,如下图:






最近看过此主题的会员

esen_4PZ0WJGUKU

esen_4QAC7AS544

13249159784

nsmeng3

ccchen

Ekzeuy

丿沉默的风·

TiaL

Ly_LJY

4个回答

只看楼主

wut 数据老手Lv5

发表于2018-11-29 13:44

只看该作者

取消 关注该作者的回复

沙发

顶楼~~~~赞赞赞

13007610673 数据达人Lv4

发表于2018-11-29 15:15

只看该作者

取消 关注该作者的回复

板凳

大佬      《对象表达式字典》 这个在哪里查啊

辰哥 管理员

发表于2018-11-29 15:28

只看该作者

取消 关注该作者的回复

地板

13007610673 发表于 2018-11-29 15:15
大佬      《对象表达式字典》 这个在哪里查啊

对象表达式字典 对象表达式字典.doc (84.79 KB, 下载次数: )

13007610673 数据达人Lv4

发表于2018-11-30 09:33

只看该作者

取消 关注该作者的回复

5#

辰哥 发表于 2018-11-29 15:28
对象表达式字典

谢谢大佬

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

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

小时

全天响应

分钟

快速处理问题

工程师强势助力

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

渠道咨询电话:137-0120-6790

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

产品建议邮箱yixin@esensoft.com

关注我们

扫TA学习更多干货

一对一专家交流

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