0

我正在创建一个包含 3 个参数 @Name、@StartDate 和 @EndDate 的报告(在报告生成器 3.0 中)——非常简单。

现在报告阅读者希望可以使用第四个参数@Year。理论上,此参数应在选择时设置@StartDate 和@EndDate。

例如,读者在@Year 中选择“2012”,然后@StartDate 和@EndDate 将自动填充“01-01-2012”和“31-12-2012”

这怎么可能?

4

2 回答 2

2

您不能从@Year 参数在SQL 查询中创建两个新变量@Startdate 和@Enddate。所以它会根据你的需要工作。

@Startdate = convert(datetime, @year+'-01-01', 120)
@Etartdate = convert(datetime, @year+'-12-31', 120)
于 2012-12-13T08:39:36.990 回答
1

添加到 Pradeeshnarayan 的答案。

实现这一点的唯一方法是您必须添加两个隐藏参数,这些参数决定是否输入年份然后默认为全年,或者如果没有则默认为选定的开始和结束日期。

例如:

@h_Startdate = IIf(@year=Empty, @Startdate, convert(datetime, @year+'-01-01', 120))
@h_Enddate = IIf(@year=Empty, @Enddate, convert(datetime, @year+'-12-31', 120))

好问题。

于 2012-12-15T03:19:41.583 回答