【发布时间】:2021-07-16 14:33:51
【问题描述】:
我是 SSRS 新手,无法对数据进行排序。
我有一个我正在尝试排序的列,它具有以下表达式: =((SUM(VAL(IIF(Fields!SecTypeBaseCode.Value="cs",Fields!Marketvalue.Value,0))))/ (Sum(Fields!Marketvalue.Value)+Sum(Fields!AccruedInterest.Value)))/(Fields!EquityTarget.Value/100)
我为了尝试对其计算值进行排序,我用表达式创建了一个计算字段。然后我尝试根据计算字段进行排序。但是,每次我这样做都会给我一个错误,因为表达式有一个聚合。知道如何解决此问题或对其进行排序吗?
【问题讨论】:
-
您是否尝试过直接使用表达式作为排序顺序,而不是在计算字段中?
-
嗨,是的,我已经尝试过这样做。我发布了以下内容: =IIF( ((SUM(VAL(IIF(Fields!SecTypeBaseCode.Value="cs",Fields!Marketvalue.Value,0))))/(Sum(Fields!Marketvalue.Value)+Sum (Fields!AccruedInterest.Value)))/(Fields!EquityTarget.Value/100) = ">1", 1) ,仍然得到相同的错误,即存在聚合。
-
您的评论中的表达式不正确,括号的数量是奇数,最后一部分是将数字与字符串进行比较。尝试使用原始表达式并将其放入表格的列中,确保返回正确的数字,然后您应该能够将其放入行组的排序属性中。
-
您已经对 GROUP 属性进行了聚合排序。您无法从 tablix 或数据集执行此操作。
-
仍在尝试解决此问题,感谢您提供的信息。好像当我将排序功能放在组属性中时,它不会对数据进行排序,尽管错误确实消失了。是否可以在函数中使用 Me.Value 而不是整个公式?
标签: sorting reporting-services ssrs-2008