我有一份Rdlc报告 在这个报告中,我有一个字段,通过这个表达式获取其值
(Round(((First(Fields!Occurs.Value) / First(Fields!TotalDistance.Value))* 10000),2)
但在某些情况下(TotalDistance.Value)= 0所以前一个表达式返回Infinity, 因此,如果该字段等于0,我需要获取下一条记录, 如果下一个字段等于0,我想得到下一个
我寻找获得下一个记录的方法,但没有找到 我只找到(第一,最后)方法, 我怎么能这样做?
答案 0 :(得分:2)
如果您不关心哪条记录不是0而不是使用First或Last,那么就不能使用聚合函数。例如:
(Round(((First(Fields!Occurs.Value) / MAX(Fields!TotalDistance.Value))* 10000),2)
您可以使用Max,Min或Avg来获取值。我不知道rdlc中的任何方式可以像你要的那样遍历记录。
另一种完全不同的方法是将数据加载到数据表中,然后添加一列以包含计算值,并使用一些代码在传递给报表之前计算值。