USP_WEBDASHBOARDCONTEXTRECORDHISTORY_ADD
Adds a record to the recently viewed context records for the web dashboard.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@RECORDTYPEID | uniqueidentifier | IN | |
@APPUSERID | uniqueidentifier | IN | |
@RECORDID | nvarchar(1000) | IN | |
@CHANGEAGENTID | uniqueidentifier | IN |
Definition
Copy
create procedure dbo.USP_WEBDASHBOARDCONTEXTRECORDHISTORY_ADD(@RECORDTYPEID uniqueidentifier,
@APPUSERID uniqueidentifier,
@RECORDID nvarchar(1000),
@CHANGEAGENTID uniqueidentifier)
as
set nocount on;
declare @EXISTINGID uniqueidentifier;
select @EXISTINGID = ID from WEBDASHBOARDCONTEXTRECORDHISTORY where RECORDTYPEID = @RECORDTYPEID and APPUSERID = @APPUSERID and RECORDID = @RECORDID;
if @EXISTINGID is null
begin
insert into dbo.WEBDASHBOARDCONTEXTRECORDHISTORY (RECORDTYPEID,
APPUSERID,
RECORDID,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED)
values (@RECORDTYPEID,
@APPUSERID,
@RECORDID,
@CHANGEAGENTID,
@CHANGEAGENTID,
getdate(),
getdate());
end
else
begin
update dbo.WEBDASHBOARDCONTEXTRECORDHISTORY set CHANGEDBYID = @CHANGEAGENTID, DATECHANGED = getdate() where ID = @EXISTINGID;
end;
declare @contextCache varbinary(128);
/* cache current context information */
set @contextCache = CONTEXT_INFO();
/* set CONTEXT_INFO to @CHANGEAGENTID */
if not @CHANGEAGENTID is null
set CONTEXT_INFO @CHANGEAGENTID;
delete from dbo.WEBDASHBOARDCONTEXTRECORDHISTORY
where APPUSERID = @APPUSERID
and RECORDTYPEID = @RECORDTYPEID and ID not in
(select top(5) ID
from dbo.WEBDASHBOARDCONTEXTRECORDHISTORY
where RECORDTYPEID = @RECORDTYPEID
and APPUSERID = @APPUSERID
order by DATECHANGED desc);
/* reset CONTEXT_INFO to previous value */
if not @contextCache is null
set CONTEXT_INFO @contextCache;