2

我正在以编程方式创建一个 SSRS 订阅,并将其转发到CreateSubscription带有以下参数matchData的方法:

<ScheduleDefinition><StartDateTime>2013-05-08T11:38:13</StartDateTime></ScheduleDefinition>

我看到该Subscriptions表正确存储了日期(以秒为单位),但在Schedule表中,“StartDate”列中的日期为“2013-05-08 11:38:00.000”。

在“作业活动监视器”中,我看到作业将从“2013-05-08 11:38:00.000”开始,而不是从“2013-05-08 11:38:13.000”开始。

这 13 秒去哪儿了?为什么被省略了?

我在用着:

  • SSRS 2008 R2 SP1
  • 微软 SQL 2008
4

1 回答 1

0

在使用 SQL Profiler 挖掘流程后,看起来所有 SSRS 作业都是在几秒钟内创建的。我的解决方案是使用以下代码更新作业:

DECLARE @JobTime INT = REPLACE(CONVERT(VARCHAR, @ScheduledExecution, 108), ':','')          

DECLARE @jobId BINARY(16)
SET @jobId = (SELECT job_id FROM BE_LAB_DB01.msdb.dbo.sysjobs_view WHERE name = @JobName) EXEC BE_LAB_DB01.msdb.dbo.sp_update_jobschedule @job_id = @jobId ,@name ='Schedule_1',@ active_start_time = @JobTime

于 2013-05-09T08:09:54.137 回答