USP_FAFEVENT_ADDCLIENTUSERFORINDIVIDUAL

Adds a client user for and individual constituent.

Parameters

Parameter Parameter Type Mode Description
@CONSTITUENTID uniqueidentifier IN
@PASSWORD nvarchar(255) IN

Definition

Copy


CREATE procedure dbo.USP_FAFEVENT_ADDCLIENTUSERFORINDIVIDUAL
(
    @CONSTITUENTID uniqueidentifier,
    @PASSWORD nvarchar(255)
)
as
begin
    -- do work


  declare @CLIENTUSERSID int = 0;
  declare @UserName nvarchar(50); 
  declare @EMail  nchar(100); 
  declare @LastName nvarchar(50);  
  declare @FirstName nvarchar(50); 
  declare @MiddleInitial nvarchar(5);  
  declare @Guid uniqueidentifier;

    select 
        @FirstName = FIRSTNAME, 
        @LastName = KEYNAME, 
        @MiddleInitial = MIDDLENAME, 
        @EMail = EA.EMAILADDRESS,
        @CLIENTUSERSID = coalesce(dbo.fnGetUserIDFromLinkedRecordID(C.SEQUENCEID, 0), 0)
    from dbo.CONSTITUENT C
    left join EMAILADDRESS EA on C.ID = EA.CONSTITUENTID and EA.ISPRIMARY = 1 
    where C.ID = @CONSTITUENTID;

  if @CLIENTUSERSID > 0
        raiserror('Cannot save. Selected individual can only have one client user record.', 13, 1);

    select @UserName = left(replace(cast(newid() as varchar(36)), '-', ''), 8);
    while dbo.fnUserInformationExists(1, @UserName) = 1
        select @UserName = left(replace(cast(newid() as varchar(36)), '-', ''), 8);

    exec dbo.spAddUpdate_ClientUsers
        @PKID = @CLIENTUSERSID output,  
        @CurrentUsersID = 1,          
        @Password = @PASSWORD,  
        @UserName = @UserName,  
        @EMail  = @EMail,  
        @Active  = 1,  
        @LastName = @LastName,  
        @FirstName = @FirstName,  
        @MiddleInitial = @MiddleInitial,  
        @InternalUser = 0,  
        @ClientsID = 1,  
        @BackofficeID = 0,  
        @BackOfficeSysID = 0,  
        @RegistrationNumber = '',  
        @ReminderPhrase = '',  
        @IsSupervisor = 0,  
        @IsProvisional = 0,  
        @TimeZoneID = 0,  
        @Guid = @Guid;

  exec dbo.USP_CONSTITUENT_LINK_CLIENTUSER  
        @CONSTITUENTID = @CONSTITUENTID,
        @CLIENTUSERID = @CLIENTUSERSID;

end