智能报表工具FineReport中参数控制如何设置

 时间:2024-10-20 20:19:25

1、$fr_username不同用户登录查看的数据是不同的。在数据集中通过报表默认参数$fr_username进行过滤筛选,在sql中加入过滤筛选语句,即可达到不同的人看不一样的数据。示例1用户陈羽登陆成功之后只能看到自己的销量,定义的数据集为ds1:SELECT * FROM [销量] where 销售员='${fr_username}',配置好权限以王伟登陆成功之后,模板内容就会自动筛选到王伟的信息了, 以其他用户登陆进去则可以看到其他用户的信息。

智能报表工具FineReport中参数控制如何设置

2、示例2在参数界面,控件的值根据权限参数值的改变而显示的撕良滤儆值不同,这样通过动态sql获取,增加sql的过滤条件为权限参数名称即可。用户王伟登陆成功,看到的下拉框控件只有自己的产品,在设置下拉框控件,选择动态sql输入sql语句为:SELECT * FROM [销量] where 销售员='${fr_username}'选择实际值和显示值。这样就实现不同的用户,登陆系统进入报表,下拉框所看到值就不同了。注:参数界面必须定义控件,参数名为报表默认参数fr_username,因为参数界面传值是通过控件的值来引用的,所以先定义控件才可以把值传到控件chanpin里面,进行筛选数据。如果控件fr_username不希望显示,可以在控件设置,可见的勾去掉即可。

智能报表工具FineReport中参数控制如何设置

3、$fr_authority希望不同角色看到的列数不同,行列的颜色不同,这样可以给行列添加条件属性设置行高、列宽、背景等,如果登录系统用户为角色用户,则可以在公式中通过$fr_authority进行过滤,如果是部门职位用户,则不可使用该参数进行过滤。若王伟是管理员,孙林的角色名称是销售主管,且为导入的角色或者手动添加的角色,王伟登录的时候可以看到所有的列,而孙林登录的时候只显示地区、销售员、产品和销量,汇总这列看不到。这里就得在汇总这列添加条件属性>列宽,设置为0,公式中写入默认参数$fr_authority='销售主管'判断登录的角色为销售主管,如下图所示:

智能报表工具FineReport中参数控制如何设置

4、以孙林登陆成功后,即角色为销售主管登录,访问模板只能看到报表展示了以下内容,如下图所示:

智能报表工具FineReport中参数控制如何设置

5、GETUSERDEPARTMENTS()和GETUSERJOBTITLES()仍然以上面的$fr_authority示例中的模板为例,只是此时孙林不再是角色用户,而是部门职位用户,部门为销售部门,职位为主管,那么公式中应该写入两个函数GETUSERDEPARTMENTS()='销售部门'和GETUSERJOBTITLES()='主管',如下图:

智能报表工具FineReport中参数控制如何设置
  • 如何使用FineReport报表工具创建下拉复选框组件
  • 表单设计器FineReport中如何添加链接
  • 自定义报表系统FineReport设计器中的导出
  • html5表格制作软件:FineReport 结果集筛选
  • ORACLE学习记:[5]SQL Developer4数据库diff
  • 热门搜索
    关于法制的手抄报内容 关于春节的手抄报资料 神话故事手抄报 消防安全的手抄报 依法治校手抄报 快乐数学手抄报 食品卫生安全手抄报 美德少年手抄报图片 手抄报素材 美文手抄报