Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.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
Sql server SSRS-如果参数留空,则默认显示所有值_Sql Server_Reporting Services_Ssrs 2008_Reporting_Ssrs 2008 R2 - Fatal编程技术网

Sql server SSRS-如果参数留空,则默认显示所有值

Sql server SSRS-如果参数留空,则默认显示所有值,sql-server,reporting-services,ssrs-2008,reporting,ssrs-2008-r2,Sql Server,Reporting Services,Ssrs 2008,Reporting,Ssrs 2008 R2,“我的SSRS报告”为名为MeterNumber的字段显示日期范围2参数和多个可选值参数 我想让multi-selectable参数的默认值显示所有值,直到用户在列表中指定一个值为止 我试着通过在参数属性中设置general选项卡来实现这一点,允许多个值,并将可用值和默认值设置为等于来自同一数据集的相同值字段,但不允许 有什么想法吗 您可以使用填充参数可用值的相同数据集来填充参数的默认值 然后,默认情况下,当用户第一次打开报告时,所有值都被选中。如果日期开始和结束为空或null,则可以在后端指定

“我的SSRS报告”为名为MeterNumber的字段显示日期范围2参数和多个可选值参数

我想让multi-selectable参数的默认值显示所有值,直到用户在列表中指定一个值为止

我试着通过在参数属性中设置general选项卡来实现这一点,允许多个值,并将可用值和默认值设置为等于来自同一数据集的相同值字段,但不允许


有什么想法吗

您可以使用填充参数可用值的相同数据集来填充参数的默认值


然后,默认情况下,当用户第一次打开报告时,所有值都被选中。

如果日期开始和结束为空或null,则可以在后端指定最小日期和最大日期。请记住,sql中的最小日期为1/1/1753 12:00:00 AM,最大日期为12/31/9999 11:59:59 PM,因此您的日期格式应该是这样的。因此,当它传递给您的参数时,它将获得该最小开始日期和最大结束日期内的所有数据

这就是在c中分配最小日期时间的方法

DateTime dateStart = SqlDateTime.MinValue.Value;
和最长日期

DateTime dateEnd = SqlDateTime.MaxValue.Value;

数据集中是否有MeterNumber的空值和/或空值?这可能会导致参数值出现问题。因为在您的情况下需要多个值,所以不能有空值。只需确保选择了“允许空白值”和“允许多个值”。然后,确保MeterNumber列中没有空值。如果你这样做了,那么转换为空字符串,即ISNULLAC.MeterNumber,因为MeterNumber刚刚遇到了完全相同的问题@Byronyk,但是刚刚意识到问题所在,也意识到这篇文章非常古老,这更适合那些偶然发现这一点的人

我发现的问题是,与默认值相比,我在可用值中有一个额外的值,因此它抛出了默认选择

一旦我意识到并添加了它,就再次选择了默认值


我怀疑这就是问题所在,因为日期工作正常,问题出在'MeterNumber'参数中

这就是我如何获得当前参数的原因。如果这有帮助,下面是我的数据集查询。所讨论的参数是MeterNumber:从tblAccountMeterRead AMR中选择AC.MeterNumber、AC.AccountName、AMR.MeterRead、AMR.CorrectedMBTU、AMR.AccountID加入tblAccount AC ON AC.AccountID=AMR.AccountID,其中AMR.ReadDate介于@StartDate和@EndDate之间,AMR.MeterReadId为“0”。查询不重要,如果对可用值使用的默认值使用相同的数据集,则默认情况下应选中所有值。你的问题中肯定没有提到你做错了什么。能否添加一些参数属性页的屏幕截图?是否为@StartDate和@EndDate参数设置了默认值?@alejandrozuleta Yes.@StartDate默认为每月的第一天,@EndDate默认为每月的最后一天。