<< Click to Display Table of Contents >> 内置参数的使用复制链接 |
1. 值已确定的内置参数
这些参数直接引用即可,一部分参数根据登录用户来获取值(比如_USER_,_IP_等),一部分参数根据当前时间来获取值(比如_LAST_YEAR_,_THIS_MONTH_等),可以用于过滤,填报,参数值显示等任何需要用到内置参数的场景。
场景 |
参数名称 |
说明 |
用户信息 |
_CURRENT_LOCALE_ |
返回当前环境的区域和语言 |
_USER_ |
返回当前的用户名称 |
|
_GROUP_ |
返回当前用户所在的组名 |
|
_GROUPS_ |
返回当前用户所在的组名(多个组) |
|
_ROLE_ |
返回当前用户所承担的角色 |
|
_ROLES_ |
返回当前用户所承担的角色(多个角色) |
|
_BLANK_ |
返回数据中的空值。参见_BLANK_示例 |
|
_USER_ALIAS_ |
返回当前登录用户的昵称 |
|
_IP_ |
返回当前登陆用户的IP |
|
日期时间 |
_NOW_ |
返回当前时间(类型为时间戳) |
_NOW_LONG_ |
返回当前时间(类型为数值) |
|
_LAST_YEAR_ |
返回当前时间的上一年年份,值为整数,如今年是2013年,则返回值为2012 |
|
_THIS_YEAR_ |
返回今年的年份,值为整数 |
|
_NEXT_YEAR_ |
返回下一年的年份,值为整数 |
|
_LAST_QUARTER_ |
返回当前季度的上一季度值,值为整数 |
|
_THIS_QUARTER_ |
返回当前季度值,值为整数 |
|
_NEXT_QUARTER_ |
返回当前季度的下一季度值,值为整数 |
|
_LAST_MONTH_ |
返回当前月份的上一月份值,值为整数 |
|
_THIS_MONTH_ |
返回当前月份值,值为整数 |
|
_NEXT_MONTH_ |
返回当前月份的下一月份值,值为整数 |
|
_LAST_WEEK_ |
返回在一年中当前周的上一周值,值为整数,如今天是2013-01-18,是2013年中的第3周,则返回值为2 |
|
_THIS_WEEK_ |
返回当前日期是今年的第几周,值为整数,如今天是2013-01-18,是2013年中的第3周,则返回值为3 |
|
_NEXT_WEEK_ |
返回在一年中当前周的下一周值,值为整数,如今天是2013-01-18,是2013年中的第3周,则返回值为4 |
|
_LAST_DAY_ |
返回当前日期的前一天是几号,值为整数,如今天是2013-01-18,则返回值为17 |
|
_THIS_DAY_ |
返回当前日期是几号,值为整数,如今天是2013-01-18,则返回值为18 |
|
_NEXT_DAY_ |
返回当前日期的下一天是几号,值为整数,如今天是2013-01-18,则返回值为19 |
|
_LAST_YEAR_QUARTER_ |
返回当前季度的上一季度的第一天,返回值为日期类型,如今天是2013-04-18,则返回值为2013-01-01 |
|
_THIS_YEAR_QUARTER_ |
返回当前季度第一天,返回值为日期类型,如今天是2013-04-18,则返回值为2013-04-01 |
|
_NEXT_YEAR_QUARTER_ |
返回当前季度的下一季度的第一天,返回值为日期类型,如今天是2013-04-18,则返回值为2013-07-01 |
|
_LAST_YEAR_MONTH_ |
返回当前月份的上一月份的第一天,返回值为日期类型,如今天是2013-04-18,则返回值为2013-03-01 |
|
_THIS_YEAR_MONTH_ |
返回当前月份的第一天,返回值为日期类型,如今天是2013-04-18,则返回值为2013-04-01 |
|
_NEXT_YEAR_MONTH_ |
返回当前月份的下一月份的第一天,返回值为日期类型,如今天是2013-04-18,则返回值为2013-05-01 |
|
_LAST_YEAR_WEEK_ |
返回当前周的上一周的第一天,返回值为日期类型,如今天是2013-04-18,则返回值为2013-04-07。注意星期是根据java提供的规范进行计算的,把周日当做一周的起点 |
|
_THIS_YEAR_WEEK_ |
返回当前周的第一天,返回值为日期类型,如今天是2013-04-18,则返回值为2013-04-14 |
|
_NEXT_YEAR_WEEK_ |
返回当前周的下一周的第一天,返回值为日期类型,如今天是2013-04-18,则返回值为2013-04-21 |
|
_LAST_FULL_DAY_ |
返回当前日期的前一天,返回值为日期类型,如今天是2013-04-18,则返回值为2013-04-17 |
|
_THIS_FULL_DAY_ |
返回当前日期,返回值为日期类型,如今天是2013-04-18,则返回值为2013-04-18 |
|
_NEXT_FULL_DAY_ |
返回当前日期的后一天,返回值为日期类型,如今天是2013-04-18,则返回值为2013-04-19 |
|
_LAST_WEEKDAY_ |
返回当前日期的前一天是周几,返回值为整数,如今天是2013-04-18,则返回值为4。注意星期是根据java提供的规范进行计算的,把周日当做一周的起点 |
|
_THIS_WEEKDAY_ |
返回当前日期的是周几,返回值为整数,如今天是2013-04-18,则返回值为5 |
|
_NEXT_WEEKDAY_ |
返回当前日期的后一天是周几,返回值为整数,如今天是2013-04-18,则返回值为6 |
|
流程审批 |
_EXECUTION_ID_ |
返回流程审批获取当前流程的分支id。 |
_INSTANCE_ID_ |
返回流程审批中获取当前流程id。 |
|
报告 |
_P_ |
返回当前预览页面页码 |
_PT_ |
返回当前报告总页数 |
|
汇总过滤、高亮、预警 |
_AVG_ |
返回当前汇总数据的平均值。例如:字段A在4个分组下的汇总结果分别为10,20,30,40,参数的返回值为25。 |
_MEDIAN_ |
返回当前汇总数据的中位数。例如:字段A在5个分组下的汇总结果分别为10,20,30,40,50,参数的返回值为30。 |
|
_QUARTILE1_ |
返回当前汇总数据的较小四分位数。例如:字段A在7个分组下的汇总结果分别为10,20,30,40,50,60,70,参数的返回值为20。 |
|
_QUARTILE3_ |
返回当前汇总数据的较大四分位数。例如:字段A在7个分组下的汇总结果分别为10,20,30,40,50,60,70,参数的返回值为60。 |
•_BLANK_示例
假设数据库表中的数据如下:
过滤里定义条件:string 是 = ?{_BLANK_},则过滤出string为空字符串的数据,也就是上图数据库表里的最后一行数据。
如果过滤里定义条件:string 是 空,则过滤出string为null,空的数据,也就是上图的数据库表里的第一行数据。
•内置日期参数示例
比如文本组件输入?{_THIS_FULL_DAY_}可以显示当前最新日期。
过滤里选择日期列,输入?{_THIS_FULL_DAY_}参数,可以过滤出对应列当天的数据。
•内置用户信息示例
假设数据如下,希望对当前登录的用户角色进行高亮。
在高亮对话框中,设置高亮效果为蓝色,高亮条件中设置角色是等于?{_ROLE_}。
高亮设置完成后,点击确定,查看表格中的角色高亮效果如下。
参数名称 |
数据类型 |
说明 |
_RESULT_NOT_EMPTY_ |
Boolean |
报表实时刷新时,如果执行的结果为空时,从缓存获取数据,以免组件上出现空数据的现象 |
_WARNING2HINT_ |
Boolean |
当报表出现错误弹框时,报表不弹出dialog进行提示(弹出后需要手动点击),改为hint进行提示 |
_MAX_ROWS_ |
String/Integer |
控制报表中组件的显示行数,导出数据也受控制 |
_M_REFRESH_ |
Boolean |
控制同步到集市的数据集,预览数据和再次物化数据集时是通过集市处理还是数据库处理 |
_REFRESH_ |
Boolean |
控制每次打开数据集和报表是否刷新数据 |
_DISABLE_AUTO_LINK_ |
Boolean |
控制是否识别数据内容为超链接 |
_EXCEL_EXPORT_TYPE_ |
String/Integer |
导出excel时sheet页配置 0:同时导出Dashboard页和所有细节表 1:只导出Dashboard页,不导出细节表 2:只导出所有组件的细节表,不导出Dashboard的整体页面 |
_EXCEL_EXPORT_SHEETNAME_ |
String |
自定义导出Excel时Dashboard页的名称 |
_KEEP_EXCEL_DATA_SPAN_ |
Boolean |
控制导出excel时,数据是否带有合并单元格。为true时,导出详细数据也保留合并单元格。默认为false不会合并单元格 |
Boolean |
控制详细表格设置分页后,查看时是否以真分页方式获取数据。当前Oracle、SQL Server 、MySQL、DB2已经自动支持真分页,对于暂未支持的数据库类型,数据集SQL语句如下: select * from coffee <_PAGE_> where ID BETWEEN (?{@_PAGE_} - 1) </_PAGE_> <_PAGE_LIMIT_> * ?{@_PAGE_LIMIT_} AND </_PAGE_LIMIT_> <_PAGE_> ?{@_PAGE_} </_PAGE_> <_PAGE_LIMIT_>* ?{@_PAGE_LIMIT_} </_PAGE_LIMIT_> 结合_SELF_CTRL_PAGE_可以实现真分页,有以下两种方式: •在编辑参数中添加_SELF_CTRL_PAGE_=true,对报告中所有的普通表实现真分页。 •在脚本中添加图表1.innerParam["_SELF_CTRL_PAGE_"] = true,只对当前设置的普通表实现真分页。 |
|
_PAGE_COUNT_AYSN_ |
Boolean |
配合参数_SELF_CTRL_PAGE_一起使用,还未实现真分页的数据库设置了上述真分页,总条数和第一页数据会在一个请求返回,设置为true后,会分开发请求返回数据。 |
_IMPLEMENT_REAL_PAGE_ |
Boolean |
设置查看报告时是否走真分页; _IMPLEMENT_REAL_PAGE_=true,不走真分页; _IMPLEMENT_REAL_PAGE_=false,走真分页。 |
_EXTRACT_MAX_ROWS_ |
Integer/Short/Long/Byte |
限制基于此数据源的数据集能够抽取到数据集市的数据行数,超过限制的行数会抽取失败。仅在数据源上支持该参数,默认勾选“二次引用时不显示”,并且不能修改,以便于控制通过该数据源创建的数据集和报告的编辑参数中不显示该参数。参考限定抽取数据的数量章节。 |
_HIDE_SKELETON_ |
Boolean |
控制打开报告时,渲染图表的过程是否屏蔽骨架图。true时,屏蔽骨架图;false时,开启骨架图。 |
Boolean |
true:decimal数据进行高精度计算,数据展示为精确值。 false:将decimal数据处理为double,不进行高精度计算,数据以科学计数法形式展示粗略值。 数据过小或过大时,数据默认以科学计数法展示粗略值,如需进行高精度计算展示精确值。可在数据集上设置_DECIMAL_KEEP_ACCURACY_ =true,表示数据以decimal存储,进行精确计算。默认mem.decimal.as.double=true,将decimal处理为double,此时数据集的内置参数优先级更高。 |
|
_MONGO_META_ALL_COLS_ |
Boolean |
_MONGO_META_ALL_COLS_=true,刷新单个mongo数据集元数据加载所有的列。 |
_PARAM_LIMIT_ |
Integer |
控制报告中的多个参数组件并行执行的个数,默认值为4,若参数个数超过_PARAM_LIMIT_ 的值则并行执行,可加快执行速度,但可能会出现执行顺序错乱问题,建议酌情考虑。 |