【问题标题】:Passing a value from one JasperReports Server input control to a another input control将值从一个 JasperReports Server 输入控件传递到另一个输入控件
【发布时间】:2016-07-04 05:41:35
【问题描述】:

我需要以某种方式在输入控件中实现层次结构级别。例如用户需要选择某个组织,每个组织都有一些子组织,如果他在下拉列表中选择组织,我需要显示所选组织的所有子组织,并且我必须在一个组织时留下一个可能性选择选择所有子组织,或者只选择一个。同样,选择所有父组织的可能性必须存在。如何实现这一点,我已经探索了几乎所有的选项,我认为我最好的选择是让我的自己的带有参数的 JSP 页面,有没有其他方法可以在 JasperReports 服务器中使用已经合并的输入控件来实现这一点?

我目前正在使用 Jaspersoft Studio 5.6 和 JasperReports Server

附:父组织及其 ID 的列表是从查询中填充的,它不是硬编码的。

【问题讨论】:

    标签: jasper-reports jasperserver


    【解决方案1】:

    这实际上很容易实现。

    假设您已经有一个名为Organization 的多选查询输入,女巫让用户能够选择Organization name 返回公司“ID”号码。让我们假设它的 SQL 看起来像这样:

     select 
     ORGANIZATION_NAME
     ,ID 
     from organization
    

    现在你必须在Sub_organizations 多选查询SQL 中添加指向Organization 输入控件的where 条件。你可以这样做:

     select 
     SUB_ORGANIZATION_NAME
     ,SUB_ORGANIZATION_ID
     ,ORGANIZATION_ID 
     from sub_organization
     where $X{IN,sub_organization.organization_id,Organization}
    

    顺便说一句,在where 子句中我引用了 jasperserver 输入控制参数的名称,女巫返回所需的参数。

    希望这会对你有所帮助;)

    【讨论】:

    • 你试过这个解决方案了吗?我无法让它工作,我不断收到一些 sql 异常,我已经完成了你建议我做的事情。
    • 这就是输入参数在我的 JasperServer 上的工作方式。您是否在最高级别的输入参数中设置了值和可见列? imgur.com/t0qkN1N
    • 现在好了 :) 我忘了用 {} 代替这个 () 谢谢你的帮助
    • 别提了。我真的很高兴,我帮忙了!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-27
    • 1970-01-01
    • 2014-10-31
    • 2022-08-14
    相关资源
    最近更新 更多