【问题标题】:conditional formatting in matrix with multiple datasets具有多个数据集的矩阵中的条件格式
【发布时间】:2018-06-14 08:01:56
【问题描述】:

我有一个使用 Lookup 的矩阵,其中包含多个数据集。

我想添加一些条件格式

Department         A1 Complete      A2 Complete       A3 Complete
HR                     90%               50%               2%
L&D                    30%               100%              15%
I.T                    65%               70%               12%

理想情况下,超过 80% 为绿色,50% 至 79% 为黄色,低于 49% 为红色。

这是我的一次尝试,报告运行但对格式没有影响

=switch(lookup(fields!Department.value,fields!Department.value,fields!A1.value,"Dateset1") > 80% , "Green","White")    

【问题讨论】:

    标签: visual-studio-2012 ssrs-2008 ssrs-2012


    【解决方案1】:

    你是如何计算百分比的,它是如何存储在你的数据库中的,“80”、“80%”还是“0.8”?

    通常为 80 或 0.8,百分比与文本框的属性格式一起添加。 在这种情况下,您应该从代码中删除 % 并看看会发生什么。

    我倾向于使用自定义代码。

    Function SetColour(ByVal Value As Integer) As String
    
    Dim Ret as string
    Ret = "Blue"
    
    Dim Val As Double 
    
    doubleVal = System.Convert.ToDouble(Variance)
    
    
    if Value >= .86 then
    Ret = "OliveDrab"
    
    ElseIf Value <=.80 then 
    Ret = "IndianRed"
    
    end if
    
    End Function
    

    颜色表达式由Code.SetColour(me.value)

    调用

    【讨论】:

    • 感谢 Jon,百分比是在查询中使用 Round 计算出来的,并返回一个整数,例如 98,没有小数点或百分号。然后在报告生成器中,我使用自定义格式来获取百分比符号,例如。 0\%
    • 我尝试从查询中删除百分比并在报表生成器中将其作为表达式执行,但它仍然对条件格式没有影响
    • 试试这个。 =Switch(Fields!Department.value &lt;= 49, "Red", Fields!Department.value &gt;= 80, "Green", fields!Department.value &gt; 50, "Yellow")
    • 为了补全,我想你可能已经在你原来的帖子中梳理了 Switch 和 IIF。 =IIF(Sum(Fields!Department.Value) &lt;= 49, "Red", IIF(Sum(Fields!Department.Value) &gt;80, "Green", "Yellow"))
    • 得到错误'报告项目只能引用当前日期集或范围内的字段'等,所以在最后添加了数据集但仍然得到错误 =switch(Fields!Total.value =80, "Green", fields!Total.value > 50, "Yellow"),"Last7DaysDec"
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-19
    • 1970-01-01
    • 1970-01-01
    • 2015-07-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多