历史版本3 :根据账号控制查询数据权限 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 问题描述

希望实现下图所示的效果:管理员登录时,参数为空可以查询所有信息,非管理员时则不能。

不为空.gif

1.2 实现思路

利用 JS 控制只允许管理员可参数为空选全部。

2. 操作步骤编辑

2.1 数据准备

新建普通报表,新建数据集 ds1,数据库查询语句为:

SELECT * FROM 销量

where 1=1

${if(len(地区)==0,"","and 地区='"+地区+"'")}

image.png

2.2 报表设计

1)如下图设计表格:

image.png

2)参数面板添加地区控件,并配置数据字典,如下图所示:

3.jpg

3)地区控件添加初始化后事件

  • 参数名:user

  • 参数值:$fine_username

if(user=="admin"){
this.options.allowBlank=true;
}

4.jpg

2.3 效果预览

保存报表,点击分页预览,效果如下图所示:

不为空.gif

注:不支持移动端。

3. 模板下载编辑

已完成模板可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Parameter\JS控制是否参数为空选全部.cpt

点击下载模板:JS控制是否参数为空选全部.cpt