自定义报表-FineReport JS实现隐藏Tab页

news2024/11/22 18:29:43

1. 概述

 1.1 问题描述

在实际项目中,使用决策报表的时候,有时会用到在决策报表参数面板获取报表控件的值,那么该如何实现呢?

1.2 实现思路

使用 JS 获取报表主体的控件值:

_g().getWidgetByName("area").getValue(); //获取报表主体控件area的控件值

注:该方案支持新版决策报表。

2. 示例

 2.1 设计报表

1)新建决策报表,将 body 的布局方式修改为绝对布局。如下图所示:

2)在 body 中拖入一个「标签控件」和「文本控件」,将标签控件的控件值修改为 地区是:如下图所示:

3)将「文本控件」的控件名称修改为 area,如下图所示:

4)在 body 中拖入参数面板,在参数面板中添加一个「按钮控件」,将按钮名称改为:获取报表主体控件值,如下图所示:

2.2 添加事件

选中参数面板上「按钮控件」,添加一个「点击」事件。事件作用为点击按钮时弹窗打印报表中文本控件的值。如下图所示:

JavaSccript 代码如下:

var label = _g().getWidgetByName("label0").getValue(); //获取标签控件label0的控件值 

var area = _g().getWidgetByName("area").getValue(); //获取文本控件area的控件值 

alert(label + area);

2.3 效果预览

1)点击参数面板空白处,取消勾选「点击查询前不显示报表内容」,使得报表初始化时展现报表内容。如下图所示:

2)保存模板,点击「PC端预览」,在报表「文本控件」中输入值华东,点击参数面板按钮,弹窗显示文本控件的值。PC 端效果如下图所示:

App 及HTML5 效果如下图所示:

3. 概述

3.1 问题描述

在设计决策报表时,需要通过决策报表主体的按钮控件或者报表块的超链接获取参数面板的控件值,那么该如何实现呢?

3.2 解决思路

通过内置接口和 JS 事件获取参数面板的控件值:

_g().getParameterContainer().getWidgetByName('text').getValue();//text为参数面板里的控件名称

4. 示例

4.1 设计报表

1)新建一张决策报表,拖入参数面板,在参数面板中添加「文本框控件」和「查询按钮」,将「文本框控件」的控件名改为text,控件值填入我是参数控件。如下图所示:

2)点击参数面板空白处,取消勾选「点击查询前不显示报表内容」属性。如下图所示:

3)在决策报表主体拖入一个「按钮控件」和报表块,按钮名字改为获取参数控件值。如下图所示:

4.2 添加点击事件

选中「按钮控件」,为其添加一个「点击」事件,如下图所示:

JavaScript 代码如下:

alert(_g().getParameterContainer().getWidgetByName('text').getValue()); //获取参数面板的文本框text的控件值

4.3 添加超级链接

2.2 节中实现了点击按钮获取参数面板控件值,2.3 节将在超链接中添加 JS,实现点击超链接获取参数面板控件值。

在 报表块 A1 单元格中输入获取参数控件值,并为其添加「超级链接」。如下图所示:

JavaScript 代码如下:

alert(_g().getParameterContainer().getWidgetByName('text').getValue());//获取参数面板的文本框text的控件值

2.4 预览效果

2.4.1 PC 端

保存模板,预览后点击按钮和超链,获取控件值的效果如 1.1问题描述 中所示。

2.4.2 移动端

支持 App 端和 HTML5 端预览。如下图所示:

总结

帆软FineReport在设计决策报表时,帆软报表分析与制作需要通过决策报表主体的按钮控件或者报表块的超链接获取参数面板的控件值,通过内置接口和 JS 事件获取参数面板的控件值进行全链路数据建设

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/115294.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【金猿人物展】数睿数据创始人兼CEO穆鸿:大数据价值创造关键在于应用普惠...

‍穆鸿本文由数睿数据创始人兼CEO穆鸿撰写并投递参与“数据猿年度金猿策划活动——2022大数据产业趋势人物榜单及奖项”评选。‍数据智能产业创新服务媒体——聚焦数智 改变商业事情还得从我2022年这一年经历的一些事情谈起,由于工作的原因,我要经常往返…

Python量化交易04——基于机器学习的交易策略

参考书目:深入浅出Python量化交易实战 学量化肯定要用的上机器学习这种强大的预测技术。本次使用机器学习构建一些简单的预测进行量化交易,使用Python进行回测。 获取数据 import pandas as pd import tushare as ts import numpy as npfrom sklearn.neighbors imp…

线程池设计与实现C

线程池实现 结构设计 先上图: 参数 线程池: 包含一个执行队列、一个任务队列mutex用来在多个线程取任务时锁任务队列,cond用来在任务队列为空时锁任务队列 如线程A锁了任务队列,去取任务时,又发现任务队列为空&…

【C++求解数学题】大圆圈里面三角形个数相等

本文介绍的问题是一道来自于二年级(上)数学的练习题。 问题 在下图中画8个Δ\DeltaΔ,使每个大圆圈里都有4个Δ\DeltaΔ. 示例: 每个大圆圈里面均有4个Δ\DeltaΔ. 方法 按照“变量-范围-条件”的三段式穷举法解题框架,对…

分布式系列之聊聊Nginx实现原理

Nginx作为开源的轻量级的HTTP服务器,广泛应用于分布式应用架构中。本文简要介绍了Nginx的特点及使用场景、Nginx的进程模型和请求处理流程,并结合不同场景进行配置,对Nginx的架构和实现原理有个初步的了解。 1、Nginx是什么 Nginx&#xff0…

Echarts之甘特图type: ‘custom‘参数详解

甘特图 const groupData XEUtils.groupBy(data, "eqpName"); //分组后的数据 const yAxisData Object.keys(groupData); const seriesData Object.keys(groupData).map((item, index) > {let arr [];groupData[item].forEach((GItem) > {arr.push([index,f…

Graphviz安装向导及入门指南

目录 1、首先在官网下载graphviz 2、安装。 3、测试并在Windows命令行中使用 4、在Python中使用 5、在自带的gvedit.exe 程序中使用 6、在语雀中使用 7、绘制一棵简单的二叉树 8、详细语法介绍 8.1 带标签 8.2 修改方框颜色和形状 8.3子视图 8.4 结构视图 8.5 …

【网络安全】Centos7安装杀毒软件----ClamAV

一、ClamAV介绍 Clam AntiVirus是一个Linux系统上使用的反病毒软件包。主要应用于邮件服务器,采用多线程后台操作,可以自动升级病毒库。 二、安装 1.下载rpm wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm 2.升级epe…

4.1、网络层概述

1、主要任务 网络层的主要任务是实现网络互连\color{red}实现网络互连实现网络互连,进而实现数据包在各网路之间的传输\color{red}实现数据包在各网路之间的传输实现数据包在各网路之间的传输 例如: 这些异构型网络若只是需要各自内部通信&#xff0c…

高质量发展指标构建:全国各省高质量发展需求(2014-2021年)

高质量发展是坚持更高层次和更高水平对外开放的发展。中国改革开放四十年的实践充分证明,不断扩大对外开放是推动中国经济社会发展的重要动力,是实现国家繁荣富强的根本出路。因此,在中国经济发展的新时代,推动新一轮高水平开放&a…

docker logs实时查看日志tail

docker logs实时查看日志tail docker logs -f -t --since="2017-05-31" --tail=10 container说明: --since : 指定输出日志开始日期。 -f : 查看实时日志 -t : 查看日志产生的时间戳 -tail=10 : 查看最后的10条日志。 container : 容器名docker logs -f --until=2s说…

Docker常用操作命令总结(一)

文章目录一、Docker的应用场景二、Docker 的优点三、Docker 架构四、安装Docker1、更新 apt 包索引2、安装docker3、安装完成之后,运行命令sudo docker info,检查安装状态4、有可能,第一次需要手动启动服务.就需要执行下面的命令,…

LabVIEW如何减少下一代测试系统中的硬件过时4

LabVIEW如何减少下一代测试系统中的硬件过时4 DSSP Class Definition DSSP父类定义有三种不同类型的函数:仅父类、公共类和基于度量的函数。DSSP父类,DSSP.Lvclass包含所有子类函数的超集,加上父类特有的一些函数。DSSP父类的单个子实例(例如AgSigGen.…

2022年总结(2022年1月1日至2022年12月25日)

前言 时光飞逝,又到了一年一度的年终总结的时间了,2022年充满磨难的一年,悲哉,痛哉~~ 但对于我而言,其实还好,基本无太大影响,黄金单身汉,一人吃饱,全家不饿~&#xff…

spring之手写框架

文章目录前言一、手写spring框架之核心接口实现二、手写spring框架之实例化Bean三、手写spring框架之获取所有set方法四、手写spring框架之给属性赋值4.1 非简单类型属性赋值4.2 简单类型属性赋值附:前言 Spring IoC容器的实现原理:工厂模式解析XML反射…

学习性能所必须的知识之算法

什么是算法? 通过有效地缩小查找范围,只需要很少的次数就能很快速的找到需要的数字,这样的策略或方法就称为“算法”。 算法的好坏对性能有很大的影响。 学习算法的窍门 掌握算法优点与缺陷,“折中”是一个很重要的思维通过在图上推演来思考评价算法的指标 通过复杂度(…

各种型号西门子PLC所支持的通信协议小结

西门子PLC有4大类,几十个型号类型,PLC不同所支持的通讯协议也不相同。 按照大类型来划分,具体可分为串口协议和以太网通信协议两大类。 串口协议主要有:MODBUS RTU 通信协议;PROFIBUS 通信协议;USS通信协…

疫情信息管理系统(附源代码及数据库)

本系统是一个可以对各种疫情进行管理的系统,管理员可以直接对居民、住户进行统一的管理,这样就能在疫情期间大大减轻了管理者的工作量,使管理社区的渠道更加的方便。其主要功能有:登录功能,公告的发布,到访…

2022, 6年技术路, 后疫情时代复盘

专注 聚焦 持续复盘写下你一年的希望...又到了每年一度的复盘时间。转眼一想, 做技术已经 6 年了。说实话,有点疲惫了。今年整个互联网行业都不好过, 加上疫情的反复不断, 从耳边流出了很多裁员的信息, 股市也比较低迷, 身处底层的我们只能夹缝生存。但是, 我又是…

【MySQL基础教程】DQL语句详细介绍

前言 本文为 【MySQL基础教程】DQL语句 相关内容介绍,下边具体将对DQL语句基本语法,基础查询,条件查询,聚合函数,分组查询,排序查询,分页查询,相关案例,执行顺序等进行详…