如何向表格组件传递参数?

2024-03-26

我正在使用 Jaspersoft Studio 创建报告,发现将参数传递到表时出现问题。

报告布局和结果

正如您在这些图片中看到的,当我尝试使用参数来设置表标题时,我得到了null.

为了获取值,我在报表参数列表和表数据集参数列表中创建了相同的参数名称。显然,它根本不起作用。

我尝试遵循以下说明:jaspersoft-将参数传递到表 http://www.vikramtakkar.com/2013/03/jaspersoft-passing-parameter-to-tables.html

但我的数据源来自net.sf.jasperreports.engine.data.JRBeanCollectionDataSource参数,我找不到成功完成教程的方法。

相关代码:

<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="subreport" pageWidth="555" pageHeight="802" columnWidth="555" leftMargin="0" rightMargin="0" topMargin="0" bottomMargin="0" uuid="19165c65-293a-42f1-9c92-0f4ceacaaa39">
  .....
  <subDataset name="ATableDataset" uuid="f7f9da25-c513-46bb-92c2-5a97ee76eb5e">
    <parameter name="tableHeadA" class="java.lang.String"/>
    <parameter name="column1AHead" class="java.lang.String"/>
    <parameter name="column2AHead" class="java.lang.String"/>
    <parameter name="column3AHead" class="java.lang.String"/>
    <queryString>
        <![CDATA[]]>
    </queryString>
    <field name="column1A" class="java.lang.String"/>
    <field name="column2A" class="java.lang.String"/>
    <field name="column3A" class="java.lang.String"/>
  </subDataset>
   .....
  <jr:table xmlns:jr="http://jasperreports.sourceforge.net/jasperreports/components" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports/components http://jasperreports.sourceforge.net/xsd/components.xsd">
    <datasetRun subDataset="ATableDataset" uuid="8ac10f33-c9e3-4678-8280-2830a76f72c6">
    <dataSourceExpression><![CDATA[$P{AtableDatasource}]]></dataSourceExpression>
   </datasetRun>
    ....
</jr:table>
......
</jasperReport>

完整代码参见gitHub https://github.com/MichaelKnight/jaspertest.git, sample\src\main\resources\subreport.jrxml


要将参数传递给表组件,您需要:

1. 定义数据源中具有所需类的参数

Example

<subDataset name="TableDataset" uuid="da383fc2-e830-42d2-a822-6a65972efe4c">
    <parameter name="myParameter" class="java.lang.String"/>
     .......
</subDataset>

2. Pass报告参数、变量或字段使用datasetParameter tag

Example

<jr:table xmlns:jr="http://jasperreports.sourceforge.net/jasperreports/components" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports/components http://jasperreports.sourceforge.net/xsd/components.xsd">
   <datasetRun subDataset="TableDataset" uuid="5c37a139-a9dc-4f1b-b231-5dd82794ae4f">
       <datasetParameter name="myParameter">
             <datasetParameterExpression><![CDATA[$P{reportParameter}]]></datasetParameterExpression>
       </datasetParameter>
        <dataSourceExpression><![CDATA[....]]></dataSourceExpression>
   </datasetRun>
    ......
</jr:table>

在你的代码中我找到了 1 但没有找到 2。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何向表格组件传递参数? 的相关文章

随机推荐

  • 如何让线程构建块在 Ubuntu 14.04 中工作

    我想让 TBB 工作 但在 Ubuntu 14 04 上编译工作有点困难 我认为这可能是为编译器设置库位置的问题 我使用以下命令安装了 TBB sudo apt get install libtbb dev 我现在正在尝试编译一个小测试示例
  • 如何编写读取退回电子邮件的 PHP 脚本?

    我正在使用 PHP 处理退回电子邮件 我已在邮件功能中包含返回路径 例如 mail to address subject message headers f return path return path email protected c
  • 如果我不等待任务会怎样?

    考虑这个例子 var task DoSomething bool ready await DoSomethingElse if ready return null var value await DoThirdThing depends o
  • 从项目根目录移动 cypress 文件夹

    当我安装并运行 cypress 时 它会搭建一个cypress 我的项目根目录中的文件夹 问题是所有其他测试相关数据都存储在test 文件夹 有没有简单的方法可以将其移动到test cypress并配置 cypress 来查看那里 赛普拉斯
  • 在同一 SQL 查询中使用“WITH”和“UPDATE”语句

    我有一个表格 需要使用 Excel 电子表格中的一些数据进行更新 我正在考虑这样的查询 WITH temp AS SELECT abcd AS oldvalue defg AS newvalue FROM dual UNION SELECT
  • Fortran 90 - 尝试读取文件末尾之后的内容

    我在 Fortran 90 中遇到读取问题 我尝试读取 31488 行数据 我正在使用 Portland Group Fortran 90 编译器 我的错误信息是这样的 PGFIO F 217 列表定向读取 单元 14 尝试读取文件末尾 文
  • MacOS M1 上的 Docker kafka 配置时遇到问题

    我使用 macOS M1 Big Sur 11 2 3 但我的 kafka 无法正常运行 无法创建 列出主题 我不知道是不是操作系统的原因 但是kafka的日志只是这样 docker compose 日志 https i stack img
  • 使用 forEach() 返回数组值[重复]

    这个问题在这里已经有答案了 我希望返回存储在另一个对象中的数组的名称值 exports send function req res req body items forEach function item console log item
  • 设置服务总线辅助角色的 OperationTimeOut 属性

    我正在使用服务总线辅助角色模板创建辅助角色 我处理每条消息都要花费一分多钟的时间 因此 我发现工作角色多次收到相同的消息 大约每分钟收到一条消息 我认为这是因为该值默认为 60 秒 http msdn microsoft com en us
  • Android所有广播Intent列表在哪里

    我想接收Android广播消息 有所有意图的列表吗 我找到了广播意向列表 它可以位于sdks or android sdks platforms
  • 如何在 Tomcat 中为单个 Web 应用程序设置时区?

    在 Tomcat 中为单个 Web 应用程序设置时区的最佳方法是什么 我已经看到了更改 Tomcat 的命令行参数或环境变量的选项 但是有没有一种方法可以将其设置为独立于 WAR 文件而不依赖于任何 Tomcat 配置 编辑 再次强调 我正
  • Glassfish 4.1.1 - 使用我自己的证书的 DAS 抛出“j_security_check”错误

    我有一个 glassfish 4 1 1 实例正在运行 并将我自己的证书添加到我的应用程序中 直到那时一切都正常 但是 当我尝试访问 glassfish 管理员 DAS 时 连接不受信任 并且添加例外的按钮消失了 然后我发现了一些有趣的链接
  • 无法为 32 位 HKLM 设置注册表插入

    我想在 Inno setup 中创建一个带有子菜单项的上下文菜单 问题是 它在 64 位注册表 WoW6432Node 部分插入 HKLM 密钥 The 文档 http www jrsoftware org ishelp index php
  • 从变量打印mysql查询的结果

    所以我之前写过这个 在 php 中 但是每次我尝试 echo test 时 我只是返回资源 id 5 有谁知道如何从变量中实际打印出 mysql 查询 dave mysql query SELECT order date no of ite
  • Google Chrome 扩展浏览器和页面操作

    有没有办法在已经实现 browser action 的扩展中添加 page action 我想使用 browser action 显示带有书签列表的弹出窗口 同时使用 page action 为用户提供一种为当前页面添加书签并将其加载到列表
  • std::numeric_limits::infinity() 的倒数为零吗?

    C 标准 或 IEEE 754 浮点标准 中是否有任何内容可以保证1 std numeric limits
  • 在html中编码物理地址的最佳方法是什么?

    在 html 中编码物理地址的最佳方法是什么 以语义 可访问和 SEO 方式 Use a 微格式 vCard div class vcard span class fn Gregory Peck span a class org url h
  • 转到点击事件 jquery 上的锚链接

    正如描述所说 我在java脚本上发现了很多关于平滑滚动和位置属性的东西 但似乎没有什么能做我正在寻找的事情 这只是模仿html a 标签的功能 我不需要使用该项目的 html 链接标签 所以我得到的是你想向下滚动到一个元素而不使用 html
  • SECURITY_ERR:DOM 异常 18 仅在 Safari 中

    我有两台服务器 prod example com 和 img example com 所以在 prod 上 我使用画布处理 img 中的图像 在 FF 和 Chrome 中一切正常 但在 Safari 中我得到了这个SECURITY ERR
  • 如何向表格组件传递参数?

    我正在使用 Jaspersoft Studio 创建报告 发现将参数传递到表时出现问题 报告布局和结果 正如您在这些图片中看到的 当我尝试使用参数来设置表标题时 我得到了null 为了获取值 我在报表参数列表和表数据集参数列表中创建了相同的