USP_DATAFORMTEMPLATE_ADD_THIRDPARTYAUTH_APPLICATIONUSER
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | INOUT | |
@CHANGEAGENTID | uniqueidentifier | IN | |
@DISPLAYNAME | nvarchar(255) | IN | |
@EMAILADDRESS | UDT_EMAILADDRESS | IN | |
@CONSTITUENTID | uniqueidentifier | IN | |
@SYSTEMROLES | xml | IN | |
@SITEID | uniqueidentifier | IN | |
@CURRENCYSETID | uniqueidentifier | IN |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_THIRDPARTYAUTH_APPLICATIONUSER
(
@ID uniqueidentifier = null output,
@CHANGEAGENTID uniqueidentifier = null,
@DISPLAYNAME nvarchar(255) = '',
@EMAILADDRESS dbo.UDT_EMAILADDRESS,
@CONSTITUENTID uniqueidentifier = null,
@SYSTEMROLES xml = null,
@SITEID uniqueidentifier = null,
@CURRENCYSETID uniqueidentifier = null
)
as
set nocount on;
if @ID is null
set @ID = newid();
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
declare @CURRENTDATE datetime = getdate();
begin try
if @CONSTITUENTID is not null
--Remove any old link because duplicates are not allowed.
update dbo.APPUSER set
CONSTITUENTID = null,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
where (CONSTITUENTID = @CONSTITUENTID)
and (ID <> @ID);
insert into dbo.APPUSER
(ID, USERSID, DISPLAYNAME, EMAILADDRESS, CONSTITUENTID, SITEID, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
values
(@ID, SUSER_SID('NT AUTHORITY\ANONYMOUS LOGON'), @DISPLAYNAME, @EMAILADDRESS, @CONSTITUENTID, @SITEID, @CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE);
exec dbo.USP_APPUSER_GETALLSYSTEMROLES_UPDATEFROMXML @ID, @SYSTEMROLES;
if @CURRENCYSETID is not null
insert into dbo.APPUSERCURRENCYSET
(APPUSERID, CURRENCYSETID, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
values
(@ID, @CURRENCYSETID, @CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE);
end try
begin catch
exec dbo.USP_RAISE_ERROR
return 1
end catch
return 0;