Page tree
Skip to end of metadata
Go to start of metadata

报表表格中的RowNumber()函数总是从1起排,一直到最后。有没有办法按照分类分别从1起排呢?

实际上,RowNumber()函数是可以带参数的,参数名为scope,scope可以是分组名称、表格名称、数据集名称。如果给定一个表格分组名称,就可以实现按分类从1开始排行号。

图中的【表格1_分组1】是按【类别ID】字段作为分组条件的分组,下面这个表达式就是按照每个分类分别从1开始排行号:

=RowNumber("表格1_分组1")


如果是用矩表元素设计的表格,由于RowNumber()是按记录次序排列,而矩表中的记录会被重新编排,因此,对于矩表,RowNumber()将不再适用。

对于矩表,使用RunningValue()函数可实现分组排序,如下图:

序号1的数据单元格表达式为:

=RunningValue(Fields!区域.Value, CountDistinct, Nothing)

其含义是:求【区域】字段唯一值的累计计数。

序号2的数据单元格表达式为:

=RunningValue(Fields!省份.Value, CountDistinct, "矩表1_区域1")

其含义是:在【矩表1_区域1】这个分组内部,求【省份】字段唯一值的累计计数。

其中,分组名称是上级分组的名称,可通过点击左侧工具箱的第二个图标,展开矩表的分组信息即可看到分组名。

效果如下图:

可以看到,区域的序号和省份的序号都是从1起排。




  • No labels