找回密码
 立即注册

QQ登录

只需一步,快速开始

KearneyKang 讲师达人认证 悬赏达人认证

超级版主

199

主题

6505

帖子

1万

积分

超级版主

Rank: 8Rank: 8

积分
10804

圣诞拼拼乐微信认证勋章讲师达人悬赏达人元老葡萄

KearneyKang 讲师达人认证 悬赏达人认证
超级版主   /  发表于:2018-11-7 15:09  /   查看:3629  /  回复:0

报表表格中的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起排。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部