Stored Procedures [dbo].[CreateTimeBasedSubscriptionSchedule]
Properties
PropertyValue
ANSI Nulls OnYes
Quoted Identifier OnYes
Parameters
NameData TypeMax Length (Bytes)
@SubscriptionIDuniqueidentifier16
@ScheduleIDuniqueidentifier16
@Schedule_Namenvarchar(260)520
@Report_Namenvarchar(425)850
@StartDatedatetime8
@Flagsint4
@NextRunTimedatetime8
@LastRunTimedatetime8
@EndDatedatetime8
@RecurrenceTypeint4
@MinutesIntervalint4
@DaysIntervalint4
@WeeksIntervalint4
@DaysOfWeekint4
@DaysOfMonthint4
@Monthint4
@MonthlyWeekint4
@Stateint4
@LastRunStatusnvarchar(260)520
@ScheduledRunTimeoutint4
@UserSidvarbinary(85)85
@UserNamenvarchar(260)520
@AuthTypeint4
@EventTypenvarchar(260)520
@EventDatanvarchar(260)520
@Pathnvarchar(425)850
Permissions
TypeActionOwning Principal
GrantExecuteRSExecRole
SQL Script
CREATE PROCEDURE [dbo].[CreateTimeBasedSubscriptionSchedule]
@SubscriptionID as uniqueidentifier,
@ScheduleID uniqueidentifier,
@Schedule_Name nvarchar (260),
@Report_Name nvarchar (425),
@StartDate datetime,
@Flags int,
@NextRunTime datetime = NULL,
@LastRunTime datetime = NULL,
@EndDate datetime = NULL,
@RecurrenceType int = NULL,
@MinutesInterval int = NULL,
@DaysInterval int = NULL,
@WeeksInterval int = NULL,
@DaysOfWeek int = NULL,
@DaysOfMonth int = NULL,
@Month int = NULL,
@MonthlyWeek int = NULL,
@State int = NULL,
@LastRunStatus nvarchar (260) = NULL,
@ScheduledRunTimeout int = NULL,
@UserSid varbinary (85) = NULL,
@UserName nvarchar(260),
@AuthType int,
@EventType nvarchar (260),
@EventData nvarchar (260),
@Path nvarchar (425) = NULL
AS
EXEC CreateTask @ScheduleID, @Schedule_Name, @StartDate, @Flags, @NextRunTime, @LastRunTime,
        @EndDate, @RecurrenceType, @MinutesInterval, @DaysInterval, @WeeksInterval, @DaysOfWeek,
        @DaysOfMonth, @Month, @MonthlyWeek, @State, @LastRunStatus,
        @ScheduledRunTimeout, @UserSid, @UserName, @AuthType, @EventType, @EventData, 1 /*scoped type*/, @Path
if @@ERROR = 0
begin
    -- add a row to the reportSchedule table
    declare @Report_OID uniqueidentifier
    select @Report_OID = (select [ItemID] from [Catalog] with (HOLDLOCK) where [Catalog].[Path] = @Report_Name and ([Catalog].[Type] = 2 or [Catalog].[Type] = 4))
    EXEC AddReportSchedule @ScheduleID, @Report_OID, @SubscriptionID, 4 -- TimedSubscription action
end

GO
GRANT EXECUTE ON  [dbo].[CreateTimeBasedSubscriptionSchedule] TO [RSExecRole]
GO
Uses