Reporting services sql查询以获取仅为当前月份运行的计划报告

Reporting services sql查询以获取仅为当前月份运行的计划报告,reporting-services,reportingservices-2005,sqlparameter,Reporting Services,Reportingservices 2005,Sqlparameter,我有一份SSRS 2005报告,其中有一个Oracle数据库的数据集。我的报告基本上只是从审计日志中提取所有数据。该报告运行得非常好,我已经安排了thi在SSRS中使用新的订阅方法运行并发送电子邮件 我唯一的问题是我希望报告在每月的最后一天运行(设置为在alreday执行此操作),并仅基于该月运行报告。让报告专门运行一个月是我不确定的事情?我想我可以在报告中设置参数,但这些参数只允许我的用户选择日历日期 是否有DATEADD或DATEPART类型的函数可用于完成此任务 问候 B最佳选择是在报告级

我有一份SSRS 2005报告,其中有一个Oracle数据库的数据集。我的报告基本上只是从审计日志中提取所有数据。该报告运行得非常好,我已经安排了thi在SSRS中使用新的订阅方法运行并发送电子邮件

我唯一的问题是我希望报告在每月的最后一天运行(设置为在alreday执行此操作),并仅基于该月运行报告。让报告专门运行一个月是我不确定的事情?我想我可以在报告中设置参数,但这些参数只允许我的用户选择日历日期

是否有DATEADD或DATEPART类型的函数可用于完成此任务

问候
B

最佳选择是在报告级别为日期参数设置动态日期默认值,并将订阅设置为使用此默认值,这样每当订阅运行时,它都会自动具有适当的日期

如果可以的话,最简单的方法可能是将参数设置为当前日期,例如
=Today()
。因此,无论何时订阅运行,都将计算该值

您可以根据需要设置默认值;本月的第一天,等等。您应该能够设置您需要的任何值,而不会有太多麻烦

因此,对于本月的第一天,类似于:

=日期序列(年(今天()),月(今天()),1)。

运行临时报告的用户可以根据需要重置参数


我假设报告正确处理返回的数据量,假设发送了正确的数据参数。

2参数@DateFrom和@DateTo

输出当月第一天的@DateFrom的默认值:

=DateAdd(“d”,-Day(今日())+1,今日())

输出当月最后一天的@DateTo的默认值:

=DateAdd(“d”),-Day(今天())+1,DateAdd(“m”,1,今天())