USP_EXCHANGECONTACTBATCH_ADDEDITEMAILADDRESS

Commits Exchange contact batch email address changes.

Parameters

Parameter Parameter Type Mode Description
@EMAILADDRESSID uniqueidentifier IN
@EMAILADDRESS nvarchar(100) IN
@EMAILADDRESSTYPECODEID uniqueidentifier IN
@CONSTITUENTID uniqueidentifier IN
@CHANGEAGENTID uniqueidentifier IN
@INFOSOURCECODEID uniqueidentifier IN

Definition

Copy


            CREATE procedure dbo.USP_EXCHANGECONTACTBATCH_ADDEDITEMAILADDRESS
            (
                @EMAILADDRESSID uniqueidentifier = null,
                @EMAILADDRESS nvarchar(100) = null,
                @EMAILADDRESSTYPECODEID uniqueidentifier = null,
                @CONSTITUENTID uniqueidentifier = null,
                @CHANGEAGENTID uniqueidentifier = null,
                @INFOSOURCECODEID uniqueidentifier = null
            )
            as            
                set nocount on;

                declare @CHANGEDATE datetime;
                set @CHANGEDATE = getdate();

                if @CHANGEAGENTID is null  
                    exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;                            

                if @EMAILADDRESSID is null
                    begin
                        set @EMAILADDRESSID = newid();

                        declare @ISPRIMARY bit;
                        if exists(select ID from dbo.EMAILADDRESS where CONSTITUENTID = @CONSTITUENTID and ISPRIMARY = 1)
                            begin
                                set @ISPRIMARY = 0;
                            end
                        else
                            begin
                                set @ISPRIMARY = 1;
                            end

                        insert into dbo.EMAILADDRESS
                            (ID, EMAILADDRESS, EMAILADDRESSTYPECODEID, CONSTITUENTID, ISPRIMARY, INFOSOURCECODEID, DATEADDED, DATECHANGED, ADDEDBYID, CHANGEDBYID)
                        values
                            (@EMAILADDRESSID, @EMAILADDRESS, @EMAILADDRESSTYPECODEID, @CONSTITUENTID, @ISPRIMARY, @INFOSOURCECODEID, @CHANGEDATE, @CHANGEDATE, @CHANGEAGENTID, @CHANGEAGENTID);
                    end
                else
                    begin
                        update
                            dbo.EMAILADDRESS
                        set
                            EMAILADDRESS = @EMAILADDRESS,
                            INFOSOURCECODEID = @INFOSOURCECODEID,
                            DATECHANGED = @CHANGEDATE,
                            CHANGEDBYID = @CHANGEAGENTID
                        where
                            EMAILADDRESS.ID = @EMAILADDRESSID;
                    end