Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reporting services 在SSRS报表生成器中获取行数_Reporting Services_Ssrs 2008 - Fatal编程技术网

Reporting services 在SSRS报表生成器中获取行数

Reporting services 在SSRS报表生成器中获取行数,reporting-services,ssrs-2008,Reporting Services,Ssrs 2008,我使用ReportBuilder3.0(使用SQLServer2008R2)构建了一个报告。现在我想知道有多少条记录正在从数据库中提取到报告中 这可以通过SSRS中的count函数实现,也可以通过SQL查询中的RANK/ROW_NUMBER函数实现,并将该as字段分配给报告(RANK/ROW_NUMBER将为每一行提供排名,导航到报告中的最后一页将帮助我获得总行数) 我尝试了count函数,但它依赖于报告中的某个字段。例如=Count(Field!FieldName.value,“DataSet

我使用ReportBuilder3.0(使用SQLServer2008R2)构建了一个报告。现在我想知道有多少条记录正在从数据库中提取到报告中

这可以通过SSRS中的count函数实现,也可以通过SQL查询中的RANK/ROW_NUMBER函数实现,并将该as字段分配给报告(RANK/ROW_NUMBER将为每一行提供排名,导航到报告中的最后一页将帮助我获得总行数)

我尝试了count函数,但它依赖于报告中的某个字段。例如=
Count(Field!FieldName.value,“DataSetName”)
这种方法中的问题:“FieldName”在报告中不是唯一的,因此计数会重复

第二个选项:添加了排名/行数,但它们也使用相同类型的字段名,因此这里的计数也会重复

主要问题:我的查询中没有唯一的字段(因此我尝试了ROW_NUMBER())

如何在SSRS 2008中找到总行数或排名(每行)?

使用。比如说

=CountRows("MyDataset")

将为您提供MyDataSet中的行数。

在Tablix控件的属性中,有一个名为NoRowsMessage的属性名。在没有返回行时将消息放在此处。

我找到了一个解决方法。首先创建一个值始终设置为1的数据列。这将为每行数据提供一个值

查询列

, 1 AS Unit
在报告中使用“RunningValue”函数,如下所示

=RunningValue(Fields!Unit.Value,Sum,"DataSet")

如果您正在寻找,这也将作为“运行总和”使用。

正如上面提到的其他人一样,我无法让
CountRows(“DatasetName”)
在标题中工作,直到我将其包装为:
CSTR(CountRows(“DatasetName”)
获取行数很简单。只要在SQL查询中使用行号,就可以实现目标。此外,如果您使用FetchXML(即用于动态),您将无法执行SQL函数。@Brian-感谢您为我标记代码,代码更清晰。我必须记住这一点!