【问题标题】:Hiding Subreports in SQL Report (RDL)在 SQL 报表 (RDL) 中隐藏子报表
【发布时间】:2008-09-22 18:29:57
【问题描述】:

我有一堆打印出来并邮寄给客户的报告。报告顶部是返回地址,左对齐。我被要求在报告中添加一个可选的徽标。此徽标应位于退货地址的左侧。 (徽标和所有其他信息都存储在数据库中)。因此,如果徽标存在,您应该看到:

如果不存在徽标,您应该看到:

在许多不同的报告中可能放置了许多不同的徽标,因此为了使生活更轻松,徽标被实现为子报告。子报表只是抓取正确的徽标图像,然后它会自动显示在报表中。

我遇到的问题是这个。如果日志不存在,那么我们希望返回地址左对齐,如上所示。但是发生的情况是,虽然子报表没有显示任何内容,但它仍然占用了徽标所在的空间,并且返回地址浮动在页面左侧的右侧几英寸处。

           <Return Address>

所以...如果没有要显示的徽标,我是否可以使用/设置使子报表不显示或不占用任何空间?

抱歉,希望我说得够清楚了。我对 RDL 完全陌生。

【问题讨论】:

    标签: sql report rdl


    【解决方案1】:

    您应该能够在子报表的可见性上设置一个表达式,这样如果没有徽标,它就不会显示。

    这是我手头的 RDL 中的 XML:

    <Subreport Name="SubReport">
      <ReportName>SubReport</ReportName>
      <Visibility>
        <Hidden>=Not Parameters!ShowLogo.Value</Hidden>
      </Visibility>
    </Subreport>
    

    这会针对一个名为 ShowLogo 的布尔参数进行测试,但您可以同样轻松地测试另一个参数的值(可能是 URL 的长度?)。

    需要明确的是,在为“隐藏”属性指定表达式时,当您希望元素显示时,您希望它的计算结果为 False。如果您的表达式计算结果为 True,则意味着该元素将被隐藏。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多