USP_OLAPETL_UPDATE_ETLREFRESH_KPI

Updates the OLAP data source ETL refresh time KPI for the given data source.

Parameters

Parameter Parameter Type Mode Description
@OLAPDATASOURCEID uniqueidentifier IN
@CHANGEAGENTID uniqueidentifier IN

Definition

Copy


CREATE procedure dbo.USP_OLAPETL_UPDATE_ETLREFRESH_KPI

@OLAPDATASOURCEID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier=null

as

set nocount on;

declare @CTXID nvarchar(36);
set @CTXID=CAST(@OLAPDATASOURCEID AS NVARCHAR(36));

declare @KPIID uniqueidentifier;
declare @NUMITEMS int;

SELECT TOP 1 @KPIID=ID,@NUMITEMS=NUMBEROFITEMSTOSTORE from dbo.KPIINSTANCE WHERE CONTEXTRECORDID=@CTXID;

--if not KPI exists nothing to do.

IF @KPIID IS NULL
    return 0;


--Grab value using existing KPI procedure

declare @CURRENTDATE datetime;
set @CURRENTDATE=getdate();

declare @KPIVALUE int;

exec dbo.USP_OLAP_DATASOURCE_ETLREFRESHTIME_KPIVALUE @KPIVALUE output,@CURRENTDATE,@OLAPDATASOURCEID;
if @KPIVALUE is null return 0;



--Manually save the kpi value.  


if @CHANGEAGENTID is null  
    exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;


declare @R int;

--This is the same routine that the KPI business process uses.

exec @R=dbo.USP_KPIINSTANCEHISTORY_ADD
@VALUE = @KPIVALUE,
@KPIINSTANCEID = @KPIID,
@ASOFDATE = @CURRENTDATE,
@NUMBEROFITEMSTOSTORE = @NUMITEMS,
@CHANGEAGENTID = @CHANGEAGENTID;


return @R;