【问题标题】:How to set a Global Variable in SSRS Report Builder如何在 SSRS 报表生成器中设置全局变量
【发布时间】:2018-11-02 07:01:50
【问题描述】:

条件:

当一行中一个字段的值大于1,000,000时,字体大小必须设置为6pt,否则默认为9pt

我为此使用了这个表达式:

=IIF(Fields!UNIT_RATE.Value > 1000000, "6pt", "9pt")

为了报告的统一性,所有行中的其他字段必须根据该字段的字体大小遵循其字体大小..但挑战是,公式正在每行测试此条件..

所以结果是这样的

有没有办法或正确的方法来解决这个问题?第二行在哪里也必须跟随第一行,根据提供的条件自动调整?

我的初步解决方案

我正在考虑首先创建一个全局变量来检查,如果数据集中有一个值大于 1,000,000 的单位速率,那么这个全局变量雾为 TRUE。否则为 False,然后将其用作每个变量中的变量字段字体大小公式表达式..

但我不知道如何实现这一点,因为我是 REPORT BUILDER 的新手

【问题讨论】:

    标签: sql-server reporting-services ssrs-2008 rdlc reportbuilder3.0


    【解决方案1】:

    你必须检查数据集中字段的最大值是否超过1000000

    = Iif( max(Fields!val.Value, "YourDatasetName")>=1000000, "6pt", "9pt" )
    

    对于多个字段,您可以使用多个 OR 条件

     = Iif( max(Fields!val1.Value, "YourDatasetName")>=1000000 OR max(Fields!val2.Value, "YourDatasetName")>=1000000 OR ...., "6pt", "9pt" )
    

    为了在全局变量中使用它,请转到报告属性并输入您的表达式,如下图所示,并在每个文本框的字体大小属性中设置变量值

    【讨论】:

    • 这个公式放在哪里?这会过滤数据集中的所有行吗?
    • 但行数是动态的。每个数据的数量因结果而异
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-28
    • 1970-01-01
    • 2019-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多