SSRS - 基于行数据的计算值对行组进行分组

时间:2016-02-01 16:41:55

标签: reporting-services ssrs-2008 ssrs-tablix ssrs-grouping rdl

我想基于对行的列数据之一的计算来分组(显示)一组行。

假设我的Tablix中有3列。 1.描述 2.金额 3.借方/贷方

根据D / C值,我想总结一下金额(借记它的-ve和信用额是+ ve),直到总数达到零,然后将这些行分组为不同的颜色或行之间的行间距其他行。

示例输出:

<小时/> 说明金额D / C.
XYZ 10 d
SSS 10℃

美国广播公司15 d
VVV 5℃
CCC 5℃
ABC 5℃

谢谢你 KARTHIK

1 个答案:

答案 0 :(得分:1)

我使用您在问题中提供的数据集重新创建了您的方案。 我使用Amount单元格background-color属性对总和进行分组。

这是我创建的Tablix。选定的Cell background-property设置为表达式(见下文):

enter image description here

Report菜单中,Report Properties... / Code标签将此功能放入文字区域。

Dim prevColor As String = "Red"
Dim accumulator As Double = 0
Public Function GetSumColor(ByVal value as Double) as String
    Dim color As String             
    accumulator = accumulator + value
    color = prevColor
    If accumulator = 0 Then
        If prevColor = "Red" Then
            prevColor = "Yellow"
        Else
            prevColor = "Red"
        End If
    End If
    Return color
End Function

此函数将根据总和等于零(您可以使用您想要的任何颜色)更改RedYellow之间的单元格背景颜色。

在Amount单元格background-color属性中,使用以下表达式:

=Code.GetSumColor(
IIF(Fields!D_C.Value="C",-Fields!Amount.Value,Fields!Amount.Value)
)

它将产生以下结果:

enter image description here

如果这有助于您,请告诉我。