Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.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_Tsql_Reporting Services_Sql Server 2008 R2_Ssrs 2008 - Fatal编程技术网

Sql server SSRS数据集可以有默认值吗?

Sql server SSRS数据集可以有默认值吗?,sql-server,tsql,reporting-services,sql-server-2008-r2,ssrs-2008,Sql Server,Tsql,Reporting Services,Sql Server 2008 R2,Ssrs 2008,我的SSRS报告有一个数据集(datasetMacys),它调用usp\u GetStoreSales@Rundate,@StoreName 数据集是否可以有默认值?这样,报表将只要求一个参数(@Rundate),并且数据集嵌入了字符串值“Macys” 换句话说,用户不必为第二个参数选择值,因为它已经是该数据集的默认值 然后我将添加第二个数据集(datasetSears),其中@StoreName的默认值为“Sears”,这意味着它将只使用用户选择的@Rundate 存储过程看起来是这样的,尽管

我的
SSRS
报告有一个数据集(
datasetMacys
),它调用
usp\u GetStoreSales@Rundate,@StoreName

数据集是否可以有默认值?这样,报表将只要求一个参数(
@Rundate
),并且数据集嵌入了字符串值“Macys”

换句话说,用户不必为第二个参数选择值,因为它已经是该数据集的默认值

然后我将添加第二个数据集(
datasetSears
),其中@StoreName的默认值为“Sears”,这意味着它将只使用用户选择的
@Rundate

存储过程看起来是这样的,尽管这个问题实际上并不需要它:

create procedure usp_GetStoreSales 
(
    @RunDate date,
    @StoreName varchar(10)
)
as

select * from [Sales] 
where RunDate = @RunDate and StoreName = @StoreName

我可以通过创建两个不同的存储过程(即
usp\u GetMacysSales@RunDate
usp\u GetSearsSales@RunDate
)轻松解决这个问题,但这正是我想要避免的。您只需创建两个数据集,然后右键单击每个数据集的名称,选择属性,单击“参数”选项卡并覆盖StoreName参数的参数值。

您只需创建两个数据集,然后为每个数据集右键单击数据集名称,选择“属性”,单击参数选项卡并覆盖StoreName参数的参数值。

是-您可以为数据集的参数设置默认值

在“数据集属性”的“参数”选项卡中,可以在“参数值表达式”框中键入(硬代码)值

当然,下一个问题是为什么?也许有更好的方法可以做到这一点


如果要同时拥有两组数据,为什么不进行一个查询,将数据合并成一个数据集,以便只拥有一个数据集

是-可以为数据集的参数设置默认值

在“数据集属性”的“参数”选项卡中,可以在“参数值表达式”框中键入(硬代码)值

当然,下一个问题是为什么?也许有更好的方法可以做到这一点


如果要同时拥有两组数据,为什么不进行一个查询,将数据合并成一个数据集,以便只拥有一个数据集

是否正在查找?否,因为默认值将影响整个报告。这将是一个数据集的默认值。用户选择一个日期,一个数据集将使用所选的日期和参数
Sears
,而另一个数据集将使用所选的日期和参数
Macys
,这两个数据集的执行是否与其他任何内容无关?是否存在绑定到这两个数据集的表,并且用户每次查看报告时,这两个表都应显示数据?嗨-是否可以更改过程,使其仅获取一个参数并检查其数据集?或者写一些类似proxy proc的东西?你在找吗?不,因为默认值会影响整个报告。这将是一个数据集的默认值。用户选择一个日期,一个数据集将使用所选的日期和参数
Sears
,而另一个数据集将使用所选的日期和参数
Macys
,这两个数据集的执行是否与其他任何内容无关?是否存在绑定到这两个数据集的表,并且用户每次查看报告时,这两个表都应显示数据?嗨-是否可以更改过程,使其仅获取一个参数并检查其数据集?或者写一些类似代理程序的东西?谢谢。我将表达式设置为
“Macys”
,但它不起作用。起作用的是将
表达式设置为
=“Macys”
。再次感谢,谢谢。我将表达式设置为
“Macys”
,但它不起作用。起作用的是将
表达式设置为
=“Macys”
。再次感谢。这里有两组以上的数据。这将是太多的
加入
。感谢您的回复和打印屏幕。有两组以上的数据。这将是太多的
加入
。感谢您的回复和打印屏幕。