USP_APPUSER_ADDAPPUSER
Adds an application user to the system.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | INOUT | |
@USERSID | varbinary | IN | |
@DISPLAYNAME | nvarchar(255) | IN | |
@CHANGEAGENTID | uniqueidentifier | IN | |
@SITEID | uniqueidentifier | IN | |
@WINDOWSUSERNAME | nvarchar(255) | IN | |
@CURRENCYSETID | uniqueidentifier | IN |
Definition
Copy
CREATE procedure dbo.USP_APPUSER_ADDAPPUSER
(
@ID uniqueidentifier = null output,
@USERSID varbinary(85),
@DISPLAYNAME nvarchar(255),
@CHANGEAGENTID uniqueidentifier = null,
@SITEID uniqueidentifier = null,
@WINDOWSUSERNAME nvarchar(255) = null,
@CURRENCYSETID uniqueidentifier = null
)
as
begin
set nocount on;
if @ID is null
set @ID = newid();
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
declare @CURRENTDATE datetime;
set @CURRENTDATE = getdate();
if @WINDOWSUSERNAME is null
set @WINDOWSUSERNAME = coalesce(suser_name(@USERSID), '');
begin try
if exists(select ID from dbo.APPUSER where USERSID = @USERSID)
begin
/*Modeling after other application user add and edit forms*/
select @ID = ID from dbo.APPUSER where USERSID = @USERSID;
/*update existing records with current info*/
update DBO.APPUSER set
SITEID = @SITEID,
DISPLAYNAME = @DISPLAYNAME,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
where ID = @ID;
end
else
begin
insert into dbo.APPUSER
(ID, USERSID, DISPLAYNAME, SITEID, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED, WINDOWSUSERNAME)
values
(@ID, @USERSID, @DISPLAYNAME, @SITEID, @CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE, @WINDOWSUSERNAME);
if @CURRENCYSETID is not null
insert into dbo.APPUSERCURRENCYSET
(APPUSERID, CURRENCYSETID, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
values
(@ID, @CURRENCYSETID, @CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE);
end
return 0;
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
end