USP_DATAFORMTEMPLATE_EDIT_REVENUEBATCHDUPLICATEMATCH_3
Parameters
| Parameter | Parameter Type | Mode | Description |
|---|---|---|---|
| @ID | uniqueidentifier | IN | |
| @CHANGEAGENTID | uniqueidentifier | IN | |
| @LOOKUPID | nvarchar(50) | IN | |
| @FIRSTNAME | nvarchar(50) | IN | |
| @MIDDLENAME | nvarchar(50) | IN | |
| @LASTNAME | nvarchar(100) | IN | |
| @SUFFIXCODEID | uniqueidentifier | IN | |
| @TITLECODEID | uniqueidentifier | IN | |
| @MAIDENNAME | nvarchar(100) | IN | |
| @NICKNAME | nvarchar(50) | IN | |
| @GENDERCODE | tinyint | IN | |
| @BIRTHDATE | UDT_FUZZYDATE | IN | |
| @ADDRESSID | uniqueidentifier | IN | |
| @ADDRESSTYPECODEID | uniqueidentifier | IN | |
| @ADDRESS_ADDRESSBLOCK | nvarchar(150) | IN | |
| @ADDRESS_CITY | nvarchar(50) | IN | |
| @ADDRESS_STATEID | uniqueidentifier | IN | |
| @ADDRESS_POSTCODE | nvarchar(12) | IN | |
| @ADDRESS_COUNTRYID | uniqueidentifier | IN | |
| @PHONEID | uniqueidentifier | IN | |
| @PHONETYPECODEID | uniqueidentifier | IN | |
| @PHONENUMBER | nvarchar(100) | IN | |
| @EMAILID | uniqueidentifier | IN | |
| @EMAILADDRESSTYPECODEID | uniqueidentifier | IN | |
| @EMAILADDRESS | UDT_EMAILADDRESS | IN | |
| @CREATEDON | datetime | IN | |
| @DATECHANGED | datetime | IN | |
| @ADDRESSES | xml | IN | |
| @PHONES | xml | IN | |
| @EMAILADDRESSES | xml | IN | |
| @CONSTITUENTACTION | tinyint | IN | |
| @ADDRESSACTION | tinyint | IN | |
| @EMAILACTION | tinyint | IN | |
| @PHONEACTION | tinyint | IN | |
| @PRIMARYRECORDID | uniqueidentifier | IN | |
| @ERBCONSTITUENTID | uniqueidentifier | IN | |
| @EMAILISPRIMARY | bit | IN | |
| @PHONEISPRIMARY | bit | IN | |
| @ADDRESSISPRIMARY | bit | IN | |
| @CURRENTAPPUSERID | uniqueidentifier | IN | |
| @DECEASED | bit | IN | |
| @DECEASEDDATE | UDT_FUZZYDATE | IN | |
| @GIVESANONYMOUSLY | bit | IN | |
| @MARITALSTATUSCODEID | uniqueidentifier | IN | |
| @WEBADDRESS | UDT_WEBADDRESS | IN | |
| @ADDRESSHISTORICALSTARTDATE | date | IN | |
| @ADDRESSHISTORICALENDDATE | date | IN | |
| @ADDRESSDONOTMAIL | bit | IN | |
| @ADDRESSDONOTMAILREASONCODEID | uniqueidentifier | IN | |
| @ADDRESSSTARTDATE | UDT_MONTHDAY | IN | |
| @ADDRESSENDDATE | UDT_MONTHDAY | IN | |
| @ADDRESSDPC | nvarchar(max) | IN | |
| @ADDRESSCART | nvarchar(max) | IN | |
| @ADDRESSLOT | nvarchar(5) | IN | |
| @ADDRESSINFOSOURCECODEID | uniqueidentifier | IN | |
| @ADDRESSINFOSOURCECOMMENTS | nvarchar(256) | IN | |
| @ADDRESSCOUNTYCODEID | uniqueidentifier | IN | |
| @ADDRESSREGIONCODEID | uniqueidentifier | IN | |
| @ADDRESSCONGRESSIONALDISTRICTCODEID | uniqueidentifier | IN | |
| @ADDRESSSTATEHOUSEDISTRICTCODEID | uniqueidentifier | IN | |
| @ADDRESSSTATESENATEDISTRICTCODEID | uniqueidentifier | IN | |
| @ADDRESSLOCALPRECINCTCODEID | uniqueidentifier | IN | |
| @ADDRESSCERTIFICATIONDATA | int | IN | |
| @ADDRESSLASTVALIDATIONATTEMPTDATE | date | IN | |
| @ADDRESSOMITFROMVALIDATION | bit | IN | |
| @ADDRESSVALIDATIONMESSAGE | nvarchar(200) | IN | |
| @PHONEDONOTCALL | bit | IN | |
| @PHONESTARTTIME | UDT_HOURMINUTE | IN | |
| @PHONEENDTIME | UDT_HOURMINUTE | IN | |
| @PHONEINFOSOURCECODEID | uniqueidentifier | IN | |
| @PHONECOUNTRYID | uniqueidentifier | IN | |
| @PHONESTARTDATE | date | IN | |
| @PHONEENDDATE | date | IN | |
| @PHONESEASONALSTARTDATE | UDT_MONTHDAY | IN | |
| @PHONESEASONALENDDATE | UDT_MONTHDAY | IN | |
| @EMAILADDRESSDONOTEMAIL | bit | IN | |
| @EMAILADDRESSINFOSOURCECODEID | uniqueidentifier | IN | |
| @EMAILADDRESSSTARTDATE | date | IN | |
| @EMAILADDRESSENDDATE | date | IN | |
| @GENDERCODEID | uniqueidentifier | IN |
Definition
Copy
create procedure dbo.USP_DATAFORMTEMPLATE_EDIT_REVENUEBATCHDUPLICATEMATCH_3(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@LOOKUPID nvarchar(50),
@FIRSTNAME nvarchar(50),
@MIDDLENAME nvarchar(50),
@LASTNAME nvarchar(100),
@SUFFIXCODEID uniqueidentifier,
@TITLECODEID uniqueidentifier,
@MAIDENNAME nvarchar(100),
@NICKNAME nvarchar(50),
@GENDERCODE tinyint,
@BIRTHDATE dbo.UDT_FUZZYDATE,
@ADDRESSID uniqueidentifier,
@ADDRESSTYPECODEID uniqueidentifier,
@ADDRESS_ADDRESSBLOCK nvarchar(150),
@ADDRESS_CITY nvarchar(50),
@ADDRESS_STATEID uniqueidentifier,
@ADDRESS_POSTCODE nvarchar(12),
@ADDRESS_COUNTRYID uniqueidentifier,
@PHONEID uniqueidentifier,
@PHONETYPECODEID uniqueidentifier,
@PHONENUMBER nvarchar(100),
@EMAILID uniqueidentifier,
@EMAILADDRESSTYPECODEID uniqueidentifier,
@EMAILADDRESS dbo.UDT_EMAILADDRESS,
@CREATEDON datetime,
@DATECHANGED datetime,
@ADDRESSES xml,
@PHONES xml,
@EMAILADDRESSES xml,
@CONSTITUENTACTION tinyint,
@ADDRESSACTION tinyint,
@EMAILACTION tinyint,
@PHONEACTION tinyint,
@PRIMARYRECORDID uniqueidentifier,
@ERBCONSTITUENTID uniqueidentifier,
@EMAILISPRIMARY bit,
@PHONEISPRIMARY bit,
@ADDRESSISPRIMARY bit,
@CURRENTAPPUSERID uniqueidentifier,
@DECEASED bit,
@DECEASEDDATE dbo.UDT_FUZZYDATE,
@GIVESANONYMOUSLY bit,
@MARITALSTATUSCODEID uniqueidentifier,
@WEBADDRESS dbo.UDT_WEBADDRESS,
@ADDRESSHISTORICALSTARTDATE date,
@ADDRESSHISTORICALENDDATE date,
@ADDRESSDONOTMAIL bit,
@ADDRESSDONOTMAILREASONCODEID uniqueidentifier,
@ADDRESSSTARTDATE dbo.UDT_MONTHDAY,
@ADDRESSENDDATE dbo.UDT_MONTHDAY,
@ADDRESSDPC nvarchar(max),
@ADDRESSCART nvarchar(max),
@ADDRESSLOT nvarchar(5),
@ADDRESSINFOSOURCECODEID uniqueidentifier,
@ADDRESSINFOSOURCECOMMENTS nvarchar(256),
@ADDRESSCOUNTYCODEID uniqueidentifier,
@ADDRESSREGIONCODEID uniqueidentifier,
@ADDRESSCONGRESSIONALDISTRICTCODEID uniqueidentifier,
@ADDRESSSTATEHOUSEDISTRICTCODEID uniqueidentifier,
@ADDRESSSTATESENATEDISTRICTCODEID uniqueidentifier,
@ADDRESSLOCALPRECINCTCODEID uniqueidentifier,
@ADDRESSCERTIFICATIONDATA int,
@ADDRESSLASTVALIDATIONATTEMPTDATE date,
@ADDRESSOMITFROMVALIDATION bit,
@ADDRESSVALIDATIONMESSAGE nvarchar(200),
@PHONEDONOTCALL bit,
@PHONESTARTTIME dbo.UDT_HOURMINUTE,
@PHONEENDTIME dbo.UDT_HOURMINUTE,
@PHONEINFOSOURCECODEID uniqueidentifier,
@PHONECOUNTRYID uniqueidentifier,
@PHONESTARTDATE date,
@PHONEENDDATE date,
@PHONESEASONALSTARTDATE dbo.UDT_MONTHDAY,
@PHONESEASONALENDDATE dbo.UDT_MONTHDAY,
@EMAILADDRESSDONOTEMAIL bit,
@EMAILADDRESSINFOSOURCECODEID uniqueidentifier,
@EMAILADDRESSSTARTDATE date,
@EMAILADDRESSENDDATE date,
@GENDERCODEID uniqueidentifier
)
as
set nocount on;
declare @CURRENTDATE datetime;
declare @INCOMINGADDRESSID uniqueidentifier, @INCOMINGEMAILID uniqueidentifier, @INCOMINGPHONEID uniqueidentifier;
set @CURRENTDATE = getdate();
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output
begin try
-- first load the new constituent's data and save the matched constituent to the CUB tables
exec dbo.USP_REVENUEBATCH_DUPLICATEMATCH_EDITSAVE_CONSTITUENT @ID, @ERBCONSTITUENTID, @PRIMARYRECORDID, @CURRENTAPPUSERID;
select @INCOMINGADDRESSID = (select ID from dbo.BATCHCONSTITUENTUPDATEADDRESSES where BATCHCONSTITUENTUPDATEID = @ID),
@INCOMINGEMAILID = (select ID from dbo.BATCHCONSTITUENTUPDATEEMAILADDRESSES where BATCHCONSTITUENTUPDATEID = @ID),
@INCOMINGPHONEID = (select ID from dbo.BATCHCONSTITUENTUPDATEPHONES where BATCHCONSTITUENTUPDATEID = @ID);
-- make the CUB updates based on the changes the user made on the reconciliation screen
exec dbo.USP_DATAFORMTEMPLATE_EDIT_CONSTITUENTUPDATEBATCHDUPLICATEMATCH_7
@ID,
@CHANGEAGENTID,
@LOOKUPID,
@FIRSTNAME,
@MIDDLENAME,
@LASTNAME,
@SUFFIXCODEID,
@TITLECODEID,
@MAIDENNAME,
@NICKNAME,
@GENDERCODE,
@BIRTHDATE,
@ADDRESSID,
@ADDRESSTYPECODEID,
@ADDRESS_ADDRESSBLOCK,
@ADDRESS_CITY,
@ADDRESS_STATEID,
@ADDRESS_POSTCODE,
@ADDRESS_COUNTRYID,
@PHONEID,
@PHONETYPECODEID,
@PHONENUMBER,
@EMAILID,
@EMAILADDRESSTYPECODEID,
@EMAILADDRESS,
@CREATEDON,
@DATECHANGED,
@ADDRESSES,
@PHONES,
@EMAILADDRESSES,
@CONSTITUENTACTION,
@ADDRESSACTION,
@EMAILACTION,
@PHONEACTION,
@PRIMARYRECORDID,
@EMAILISPRIMARY,
@PHONEISPRIMARY,
@ADDRESSISPRIMARY,
@INCOMINGADDRESSID,
@INCOMINGEMAILID,
@INCOMINGPHONEID,
0,
0,
0,
0,
0,
0,
0,
@DECEASED,
@DECEASEDDATE,
@GIVESANONYMOUSLY,
@MARITALSTATUSCODEID,
@WEBADDRESS,
@ADDRESSHISTORICALSTARTDATE,
@ADDRESSHISTORICALENDDATE,
@ADDRESSDONOTMAIL,
@ADDRESSDONOTMAILREASONCODEID,
@ADDRESSSTARTDATE,
@ADDRESSENDDATE,
@ADDRESSDPC,
@ADDRESSCART,
@ADDRESSLOT,
@ADDRESSINFOSOURCECODEID,
@ADDRESSINFOSOURCECOMMENTS,
@ADDRESSCOUNTYCODEID,
@ADDRESSREGIONCODEID,
@ADDRESSCONGRESSIONALDISTRICTCODEID,
@ADDRESSSTATEHOUSEDISTRICTCODEID,
@ADDRESSSTATESENATEDISTRICTCODEID,
@ADDRESSLOCALPRECINCTCODEID,
@ADDRESSCERTIFICATIONDATA,
@ADDRESSLASTVALIDATIONATTEMPTDATE,
@ADDRESSOMITFROMVALIDATION,
@ADDRESSVALIDATIONMESSAGE,
@PHONEDONOTCALL,
@PHONESTARTTIME,
@PHONEENDTIME,
@PHONEINFOSOURCECODEID,
@PHONECOUNTRYID,
@PHONESTARTDATE,
@PHONEENDDATE,
@PHONESEASONALSTARTDATE,
@PHONESEASONALENDDATE,
@EMAILADDRESSDONOTEMAIL,
@EMAILADDRESSINFOSOURCECODEID,
@EMAILADDRESSSTARTDATE,
@EMAILADDRESSENDDATE,
null,
null,
null,
null,
@GENDERCODEID;
update dbo.BATCHREVENUERECOGNITION set
CONSTITUENTID = @PRIMARYRECORDID,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
where
BATCHREVENUEID = @ID and
CONSTITUENTID = @ERBCONSTITUENTID;
update dbo.BATCHREVENUEAPPLICATIONPLEDGE set
CONSTITUENTID = @PRIMARYRECORDID,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
from dbo.BATCHREVENUEAPPLICATIONPLEDGE
inner join dbo.BATCHREVENUEAPPLICATION on BATCHREVENUEAPPLICATIONPLEDGE.ID = BATCHREVENUEAPPLICATION.BATCHREVENUEAPPLICATIONPLEDGEID
where
BATCHREVENUEAPPLICATION.BATCHREVENUEID = @ID and
BATCHREVENUEAPPLICATIONPLEDGE.CONSTITUENTID = @ERBCONSTITUENTID;
update dbo.BATCHREVENUE set
CONSTITUENTID = @PRIMARYRECORDID,
GIVENANONYMOUSLY =
case
when
(@GIVESANONYMOUSLY = 1 or BATCHREVENUE.GIVENANONYMOUSLY = 1) then
1
else
@GIVESANONYMOUSLY
end,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
where ID = @ID;
--update the constituent accounts
exec dbo.USP_REVENUEBATCH_GENERATECONSTITUENTACCOUNTS
@ERBCONSTITUENTID,
@PRIMARYRECORDID,
@CHANGEAGENTID
-- remove the exception row when the duplicate is resolved
delete from dbo.BATCHREVENUEBATCHSYSTEMMESSAGES where BATCHREVENUEID = @ID and MESSAGETYPECODE = 1;
end try
begin catch
exec dbo.USP_RAISE_ERROR
return 1
end catch
return 0;