复杂报表排序不生效的解决方法
场景一
在制作复杂报表的时候,发现出来的报表并没有按照视图里设置的排序进行排序。比如视图里设置的产品类别排序是饮料类、小食类,但是报表最终出来的排序是小食类、饮料类。
产生原因
模板里使用了派生公式,派生公式里生成的派生表聚合时会按照字符串ASCII码自动升序排列,且不支持修改排序方式,因此有可能会和视图里的原有排序不一样。
该场景里使用了派生公式 G_DT,“产品分类”使用的是派生表的自动排序,无法继承视图排序。
解决方案
按照实际场景增加一个或多个视图,制作专用的维度表,设置好排序方式;然后在模板里使用基于原表的动态公式。即,把派生表以视图的方式直接展现,排序后再引用。
以此案例来讲,如果仅需要按照产品分类进行排序,那么可以做一个产品维度的视图直接引用。
此时,出来的产品分类排序就是正确的。
场景二
用户在模板里从工具栏设置了排序,预览排序不生效。
产生原因
无论是在线编辑模式,还是本地编辑模式,模板里设置的排序都不生效。数据只按照视图里准备的数据顺序展示。
解决方案
把需要的数据在视图里都计算好并排序,模板仅做简单的引用和展示。
小结
派生表的排序不可调整,模板里不支持排序功能,只有视图里的排序才会生效。