我有一个标题部分显示总计等。我在另一个数据集(数据集估计)中有两个字段,我想将其拉入标题数据集。
费用(带圆圈)= IIf(右(Fields!ProjCategoryId.Value,3)<>“EXP”,Fields!Value.Value,0) 第三方(带圆圈)= IIf(右(Fields!ProjCategoryId.Value,3)=“EXP”,Fields!Value.Value,0)
我知道您可以在没有问题的情况下对来自其他数据集的数据集求和,但是如何使用IIF等?
答案 0 :(得分:1)
您可以使用自定义代码和lookupset()
。
代码:
Function SumLookup(ByVal items As Object()) As Decimal
If items Is Nothing Then
Return Nothing
End If
Dim suma As Decimal = New Decimal()
Dim ct as Integer = New Integer()
suma = 0
ct = 0
For Each item As Object In items
suma += Convert.ToDecimal(item)
ct += 1
Next
If (ct = 0) Then return 0 else return suma
End Function
=Code.SumLookup(lookupset("EXP", right(Fields!ProjCategoryId.Value, 3), Fields!Value.Value, "DatasetName"))
调用这将将ProjCategoryId以“EXP”开头的所有值相加。
对于<> “EXP”,您可能需要对它进行多次调用,以便为它可以开始的每个事物添加它们。例如..
Code.SumLookup(lookupset("ONE", right(Fields!ProjCategoryId.Value, 3), Fields!Value.Value, "DatasetName")) + Code.SumLookup(lookupset("TWO", right(Fields!ProjCategoryId.Value, 3), Fields!Value.Value, "DatasetName"))
答案 1 :(得分:1)