USP_DATABASEGROWTHANALYSISPROCESSSCHEDULE_LOAD
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@BUSINESSPROCESSPARAMETERSETID | uniqueidentifier | IN |
Definition
Copy
create procedure dbo.[USP_DATABASEGROWTHANALYSISPROCESSSCHEDULE_LOAD]
(
@BUSINESSPROCESSPARAMETERSETID uniqueidentifier
)
as begin
set nocount on;
declare @RECENTRUNS table ([STARTEDON] datetime, [ENDEDON] datetime);
declare @LASTRUNON datetime;
declare @AVERAGERUNSECONDS integer;
declare @STATUSCODE tinyint;
insert into @RECENTRUNS
select top 5
[BUSINESSPROCESSSTATUS].[STARTEDON],
[BUSINESSPROCESSSTATUS].[ENDEDON]
from dbo.[DATABASEGROWTHANALYSISPROCESS]
left outer join dbo.[BUSINESSPROCESSSTATUS] on [BUSINESSPROCESSSTATUS].[BUSINESSPROCESSPARAMETERSETID] = [DATABASEGROWTHANALYSISPROCESS].[ID]
left outer join dbo.[APPUSER] on [APPUSER].[ID] = [BUSINESSPROCESSSTATUS].[STARTEDBYUSERID]
where [DATABASEGROWTHANALYSISPROCESS].[ID] = @BUSINESSPROCESSPARAMETERSETID
and [BUSINESSPROCESSSTATUS].[STATUSCODE] = 0
order by [BUSINESSPROCESSSTATUS].[ENDEDON] desc;
select
@LASTRUNON = max([STARTEDON]),
@AVERAGERUNSECONDS = avg(datediff(second, [STARTEDON], [ENDEDON]))
from @RECENTRUNS;
set @STATUSCODE = 3;
if exists (select top 1 1 from dbo.[BUSINESSPROCESSSTATUS] where [BUSINESSPROCESSCATALOGID] = '23C3CAE9-FEC7-4EAB-BA79-E50C997A5BBF' and [BUSINESSPROCESSPARAMETERSETID] = @BUSINESSPROCESSPARAMETERSETID)
select top 1
@STATUSCODE = [STATUSCODE]
from dbo.[BUSINESSPROCESSSTATUS]
where [BUSINESSPROCESSCATALOGID] = '23C3CAE9-FEC7-4EAB-BA79-E50C997A5BBF'
and [BUSINESSPROCESSPARAMETERSETID] = @BUSINESSPROCESSPARAMETERSETID
order by [STARTEDON] desc;
select
[DATABASEGROWTHANALYSISPROCESS].[TSLONG],
[SCHEDULE].[TYPECODE] as [SCHEDULETYPECODE],
[SCHEDULE].[DAYOFMONTH] as [SCHEDULEMONTHLYDAYOFMONTH],
[SCHEDULE].[WEEKCODE] as [SCHEDULEMONTHLYWEEKCODE],
[SCHEDULE].[DAYOFWEEKCODE] as [SCHEDULEMONTHLYDAYOFWEEKCODE],
[SCHEDULE].[DAYSOFWEEK] as [SCHEDULEDAYOFWEEKCODE],
[SCHEDULE].[TIME] as [SCHEDULETIME],
@LASTRUNON as [LASTRUNON],
@AVERAGERUNSECONDS as [AVERAGERUNSECONDS],
@STATUSCODE as [STATUSCODE]
from dbo.[SCHEDULE]
inner join dbo.[BUSINESSPROCESSSCHEDULE] on [BUSINESSPROCESSSCHEDULE].[SCHEDULEID] = [SCHEDULE].[ID]
inner join dbo.[DATABASEGROWTHANALYSISPROCESS] on [DATABASEGROWTHANALYSISPROCESS].[ID] = [BUSINESSPROCESSSCHEDULE].[BUSINESSPROCESSPARAMETERSETID]
where dbo.[DATABASEGROWTHANALYSISPROCESS].[ID] = @BUSINESSPROCESSPARAMETERSETID;
return 0;
end