我需要一些帮助在名为“ReportData”的数据集中创建一个表达式,该数据集引用来自名为“Contracts”的不同数据集中的字段。
我已经尝试过表达式构建器,并创建了以下表达式:
=IIf((First(Fields!Product.Value, "Contracts")="Loan"),
cdbl(Sum(Fields!Provision.Value, "Contracts")),
cdbl(0))
这返回0,这是正确的,因为First(Fields!Product.Value,“Contracts”)=“Loan”确实是假的,但我想评估“整个”产品字段,而不仅仅是第一个值
答案 0 :(得分:1)
这些表达式假设当前数据集范围为DatasetA
。
这是来自DatasetB
的基本总和,用于显示DatasetA
中的值是否为"某些文字"。不确定这是否能满足您的需求。
=IIf(Fields!Field1.Value = "some text", Sum(Fields!Field2.Value, "DatasetB"), 0)
这会查看DatasetB
中的第一个值,并根据该值进行求和。这似乎与你提出的伪代码最接近。
=IIf(First(Fields!Field1.Value, "DatasetB") = "some text", Sum(Fields!Field2.Value, "DatasetB"), 0)
这是查找版本,它根据Field2
(当前范围)中与值({{匹配的值DatasetB
返回Field1
中的DatasetA
值1}})Field1
。我添加了这个,以防您在进行故障排除时出于某种原因需要它。
DatasetB
可能比你需要的多一点,但希望其中一个适合你。
编辑:
=Lookup(Fields!Field1.Value, Fields!Field1.Value, Fields!Field2.Value, "DatasetB")
答案 1 :(得分:0)
如果有疑问,请使用表达式构建器!
在您要修改的元素的属性中:
答案 2 :(得分:0)
试试这个:
=IIF(
SUM(IIF(Fields!Product.Value="Loan",1,0),"Contracts")>0,
CDbl(Sum(Fields!Provision.Value, "Contracts")),
Cdbl(0)
)
<强>更新强>
=SUM(IIF(Fields!Product.Value="Loan",Fields!Provision.Value,0),"Contracts")
如果有帮助,请告诉我。