SSRS返回小计到第一行

时间:2018-07-05 04:11:26

标签: reporting-services visual-studio-2017 ssrs-2016

我已经创建了一个报告,用户可以在该报告中从参数网格中选择公司,它将结果与max,min,2nd max和2nd min(由自定义代码生成的值)进行比较

如果匹配,它将返回一个加权分数,我为每一行创建了一个小计,我想使用颜色表达式来表示最左边单元格的小计(如果小计大于70,则该单元格会变成红色,低于49会变成绿色,介于50到70之间会变成黄色)。

对于报告,列company和searchcompany是动态的,行是静态的

报告设计

enter image description here

报告审查

enter image description here

但是,当我实现表达式时,我的自定义代码(所有max min函数)无法正常工作。

报表设计视图(全部放在同一行中)

enter image description here

报告审阅(将所有内容置于同一行中)

enter image description here

我通过在小计列下实现颜色表示找到了解决方案。

临时解决方案

enter image description here

我只是想知道是否有任何解决方案可以将所有内容放在这样的同一列中?

预期结果

enter image description here

自定义代码在下面

Public Dim max1 As Integer
Public Dim max2 As Integer
Public Dim min1 As Integer
Public Dim min2 As Integer

Public Function setMinMax(ByVal v As Integer)  As Integer

If max1=0 Then
max1 = v
ElseIf v>max1 Then
max2 = max1
max1 = v
ElseIf v<max1 And v>max2 Then
max2 = v
End If

If min1 = 0 Then
min1 = v
ElseIf v < min1 Then
min2 = min1
min1 = v
Elseif min2=0
min2 = v
ElseIf v<min2
min2 = v
End If

Return v

End Function


Public Function resetMinMax(ByVal s As String) As String 
    max1 = 0
    max2 = 0
    min1 = 0
    min2 = 0

Return s

End Function

重置功能(屏幕截图中没有显示)

=Code.resetMinMax(Fields!r.Value)

minmax函数(我在公司栏中输入了内容)

=Code.setMinMax(Sum(Fields!v.Value))

最小和最大函数

= Code.max1
= Code.max2
= Code.min1
= Code.min2

niktrs提供了自定义代码,以获取更多详细信息

SSRS 2016 find 2nd minimum/ 2nd maximum

提前谢谢

0 个答案:

没有答案