USP_DATAFORMTEMPLATE_ADD_CONSTITUENTDATAREVIEW_EMAILADDRESS

The save procedure used by the add dataform template "Constituent Data Review Email Address Add Data Form".

Parameters

Parameter Parameter Type Mode Description
@AUDITID uniqueidentifier IN Input parameter indicating the context ID for the record being added.
@ID uniqueidentifier INOUT The output parameter indicating the ID of the record added.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@EMAILADDRESSTYPECODEID uniqueidentifier IN Type
@EMAILADDRESS UDT_EMAILADDRESS IN Email address
@PRIMARY bit IN Set as primary email address
@UPDATEMATCHINGSPOUSEEMAILADDRESS bit IN Update matching email information for spouse
@UPDATEMATCHINGHOUSEHOLDEMAILADDRESS bit IN Copy email address information to household members
@DONOTEMAIL bit IN Do not send email to this address
@INFOSOURCECODEID uniqueidentifier IN Information source
@INFOSOURCECOMMENTS nvarchar(256) IN Comments
@CONSTITUENTDATAREVIEWROLLBACKREASONID uniqueidentifier IN Reason
@ORIGINCODE tinyint IN Origin
@STARTDATE date IN Start date
@EMAILISCONFIDENTIAL bit IN
@DONOTEMAILREASONCODEID uniqueidentifier IN

Definition

Copy

                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_CONSTITUENTDATAREVIEW_EMAILADDRESS
                    (
                            @AUDITID uniqueidentifier,
                        @ID uniqueidentifier = null output,
                        @CHANGEAGENTID uniqueidentifier = null,    
                            @EMAILADDRESSTYPECODEID uniqueidentifier = null,
                            @EMAILADDRESS dbo.UDT_EMAILADDRESS,
                            @PRIMARY bit = null,
                            @UPDATEMATCHINGSPOUSEEMAILADDRESS bit = null,
                            @UPDATEMATCHINGHOUSEHOLDEMAILADDRESS bit = null,
                            @DONOTEMAIL bit = null,
                            @INFOSOURCECODEID uniqueidentifier = null,
                            @INFOSOURCECOMMENTS nvarchar(256) = '',
                            @CONSTITUENTDATAREVIEWROLLBACKREASONID uniqueidentifier = null,
                            @ORIGINCODE tinyint = 0,
                @STARTDATE date = null,
                            @EMAILISCONFIDENTIAL bit = 0,
                                @DONOTEMAILREASONCODEID uniqueidentifier = null
                    )
                    as
                        declare @CONSTITUENTID uniqueidentifier;

                        select @CONSTITUENTID = CONSTITUENTID,
                               @ID = AUDITRECORDID
                        from dbo.EMAILADDRESSAUDIT
                        where AUDITID = @AUDITID;

                        if @ID is null
                            raiserror('ERR_COULDNOTFINDAUDIT', 13, 1);

                        -- fix the last add's rollback, if any
                        update dbo.CONSTITUENTDATAREVIEWROLLBACK
                        set ROLLBACKAUDITID = ( select top 1 AUDITID
                                                from dbo.EMAILADDRESSAUDIT
                                                          where AUDITRECORDID = @ID
                                                          and DATEADDED = DATECHANGED
                                                          order by AUDITDATE desc)
                        where CONTEXTRECORDID = @ID
                        and ROLLBACKAUDITID is null;

                        exec dbo.USP_DATAFORMTEMPLATE_ADD_EMAILADDRESS
                            @ID output,
                            @CHANGEAGENTID,
                            @CONSTITUENTID,
                            @EMAILADDRESSTYPECODEID,
                            @EMAILADDRESS,
                            @PRIMARY,
                            @UPDATEMATCHINGSPOUSEEMAILADDRESS,
                            @UPDATEMATCHINGHOUSEHOLDEMAILADDRESS,
                            @DONOTEMAIL,
                            @INFOSOURCECODEID,
                            @INFOSOURCECOMMENTS,
                            @ORIGINCODE = @ORIGINCODE,
              @STARTDATE = @STARTDATE,
                            @EMAILISCONFIDENTIAL = @EMAILISCONFIDENTIAL,
                            @DONOTEMAILREASONCODEID = @DONOTEMAILREASONCODEID

                        declare @CURRENTDATE datetime
                        set @CURRENTDATE = getdate()

                        insert into dbo.CONSTITUENTDATAREVIEWROLLBACK
                            (ID, CONTEXTRECORDID, ROLLBACKAUDITID, SOURCEAUDITID, CONSTITUENTDATAREVIEWROLLBACKREASONID, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
                        values
                            (newid(), @ID, null, @AUDITID, @CONSTITUENTDATAREVIEWROLLBACKREASONID, @CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE)

                        return 0;