USP_APPUSER_MIGRATETOBBIDUSER
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@APPUSERID | uniqueidentifier | IN | |
@EMAILADDRESS | nvarchar(100) | IN | |
@NAMEIDENTIFIER | nvarchar(450) | IN | |
@DISPLAYNAME | nvarchar(255) | IN | |
@CHANGEAGENTID | uniqueidentifier | IN | |
@LASTLOGINDATE | datetime | IN |
Definition
Copy
CREATE procedure [dbo].[USP_APPUSER_MIGRATETOBBIDUSER](
@APPUSERID uniqueidentifier,
@EMAILADDRESS nvarchar(100),
@NAMEIDENTIFIER nvarchar(450),
@DISPLAYNAME nvarchar(255) = null,
@CHANGEAGENTID uniqueidentifier = null,
@LASTLOGINDATE datetime = null)
as
begin
set nocount on;
if @EMAILADDRESS is null begin
exec dbo.USP_RAISE_ERROR;
return 1;
end
if @EMAILADDRESS = '' begin
exec dbo.USP_RAISE_ERROR;
return 1;
end
if ((select count(1) from dbo.APPUSERCLAIMS where EMAILADDRESS = @EMAILADDRESS and APPUSERID <> @APPUSERID) = 1) begin
exec dbo.USP_RAISE_ERROR;
return 1;
end
declare @CURRENTTIME datetime = GETDATE();
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
exec USP_APPUSER_UPDATEINFO @APPUSERID, @EMAILADDRESS, @DISPLAYNAME, @CHANGEAGENTID, @LASTLOGINDATE
--Don't readd the claim if it already exist which it will in some cases
if ((select count(1) from dbo.APPUSERCLAIMS where EMAILADDRESS = @EMAILADDRESS and APPUSERID = @APPUSERID) = 0)
exec USP_APPUSERCLAIMS_ADD @NAMEIDENTIFIER, @APPUSERID, @EMAILADDRESS
begin try
update dbo.APPUSER
set CUSTOM_AUTHENTICATION_USERID = '',
DATECHANGED = @CURRENTTIME,
CHANGEDBYID = @CHANGEAGENTID
where ID = @APPUSERID
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;
end