USP_USERSETTINGS_BATCHSETTINGS_CREATEORUPDATE
Creates or updates user settings for a given batch type.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@BATCHID | uniqueidentifier | IN | |
@APPUSERID | uniqueidentifier | IN | |
@SETTINGS | xml | IN | |
@CHANGEAGENTID | uniqueidentifier | IN |
Definition
Copy
Create procedure USP_USERSETTINGS_BATCHSETTINGS_CREATEORUPDATE(@BATCHID uniqueidentifier, @APPUSERID uniqueidentifier, @SETTINGS xml, @CHANGEAGENTID uniqueidentifier = null)
as
begin
set nocount on
declare @BATCHTYPECATALOGID uniqueidentifier
select @BATCHTYPECATALOGID=BATCHTYPECATALOGID from dbo.BATCHTEMPLATE inner join dbo.BATCH on BATCHTEMPLATE.ID = BATCH.BATCHTEMPLATEID where BATCH.ID = @BATCHID;
declare @existingID uniqueidentifier
select @existingID = ID from dbo.BATCHUSERSETTINGS where BATCHTYPECATALOGID = @BATCHTYPECATALOGID and APPUSERID = @APPUSERID;
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
declare @date datetime
set @date = getdate()
if @existingID is null
begin
declare @ID uniqueidentifier
set @ID = NewID()
insert into dbo.BATCHUSERSETTINGS
(ID, BATCHTYPECATALOGID, APPUSERID, SETTINGS, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
values
(@ID, @BATCHTYPECATALOGID, @APPUSERID, @SETTINGS, @CHANGEAGENTID, @CHANGEAGENTID, @date, @date)
end
else
update dbo.BATCHUSERSETTINGS
set SETTINGS = @SETTINGS,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @date
where ID = @existingID
RETURN 0;
end