USP_ADDRESS_EDITSAVE
Parameters
| Parameter | Parameter Type | Mode | Description |
|---|---|---|---|
| @ID | uniqueidentifier | IN | |
| @CHANGEAGENTID | uniqueidentifier | IN | |
| @ADDRESSTYPECODEID | uniqueidentifier | IN | |
| @PRIMARY | bit | IN | |
| @DONOTMAIL | bit | IN | |
| @STARTDATE | UDT_MONTHDAY | IN | |
| @ENDDATE | UDT_MONTHDAY | IN | |
| @COUNTRYID | uniqueidentifier | IN | |
| @STATEID | uniqueidentifier | IN | |
| @ADDRESSBLOCK | nvarchar(150) | IN | |
| @CITY | nvarchar(50) | IN | |
| @POSTCODE | nvarchar(12) | IN | |
| @CART | nvarchar(10) | IN | |
| @DPC | nvarchar(8) | IN | |
| @LOT | nvarchar(5) | IN | |
| @OMITFROMVALIDATION | bit | IN | |
| @COUNTYCODEID | uniqueidentifier | IN | |
| @CONGRESSIONALDISTRICTCODEID | uniqueidentifier | IN | |
| @STATEHOUSEDISTRICTCODEID | uniqueidentifier | IN | |
| @STATESENATEDISTRICTCODEID | uniqueidentifier | IN | |
| @LOCALPRECINCTCODEID | uniqueidentifier | IN | |
| @INFOSOURCECODEID | uniqueidentifier | IN | |
| @REGIONCODEID | uniqueidentifier | IN | |
| @LASTVALIDATIONATTEMPTDATE | datetime | IN | |
| @VALIDATIONMESSAGE | nvarchar(200) | IN | |
| @CERTIFICATIONDATA | int | IN | |
| @UPDATECONTACTS | bit | IN | |
| @DONOTMAILREASONCODEID | uniqueidentifier | IN | |
| @UPDATEMATCHINGHOUSEHOLDADDRESSES | bit | IN | |
| @HISTORICALSTARTDATE | date | IN | |
| @HISTORICALENDDATE | date | IN | |
| @INFOSOURCECOMMENTS | nvarchar(256) | IN | |
| @ISCONFIDENTIAL | bit | IN | |
| @CONSTITUENTDATAREVIEWROLLBACKREASONID | uniqueidentifier | IN |
Definition
Copy
CREATE procedure dbo.USP_ADDRESS_EDITSAVE
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@ADDRESSTYPECODEID uniqueidentifier,
@PRIMARY bit,
@DONOTMAIL bit,
@STARTDATE dbo.UDT_MONTHDAY,
@ENDDATE dbo.UDT_MONTHDAY,
@COUNTRYID uniqueidentifier,
@STATEID uniqueidentifier,
@ADDRESSBLOCK nvarchar(150),
@CITY nvarchar(50),
@POSTCODE nvarchar(12),
@CART nvarchar(10),
@DPC nvarchar(8),
@LOT nvarchar(5),
@OMITFROMVALIDATION bit,
@COUNTYCODEID uniqueidentifier,
@CONGRESSIONALDISTRICTCODEID uniqueidentifier,
@STATEHOUSEDISTRICTCODEID uniqueidentifier,
@STATESENATEDISTRICTCODEID uniqueidentifier,
@LOCALPRECINCTCODEID uniqueidentifier,
@INFOSOURCECODEID uniqueidentifier,
@REGIONCODEID uniqueidentifier,
@LASTVALIDATIONATTEMPTDATE datetime,
@VALIDATIONMESSAGE nvarchar(200),
@CERTIFICATIONDATA integer,
@UPDATECONTACTS bit,
@DONOTMAILREASONCODEID uniqueidentifier,
@UPDATEMATCHINGHOUSEHOLDADDRESSES bit,
@HISTORICALSTARTDATE date,
@HISTORICALENDDATE date,
@INFOSOURCECOMMENTS nvarchar(256),
@ISCONFIDENTIAL bit,
@CONSTITUENTDATAREVIEWROLLBACKREASONID uniqueidentifier -- used by constituent data review
)
as
set nocount on;
if @PRIMARY = 0 and (select count(*) from dbo.ADDRESS where CONSTITUENTID = (select CONSTITUENTID from ADDRESS as ADDSUB where ADDSUB.ID = @ID) and ISPRIMARY = 1) = 0
raiserror('ERR_ADDRESS_MUSTHAVEPRIMARY', 13, 1);
if @CERTIFICATIONDATA is null
set @CERTIFICATIONDATA = 0;
if @INFOSOURCECOMMENTS is null
set @INFOSOURCECOMMENTS = '';
if @HISTORICALSTARTDATE is not null
begin
if @HISTORICALSTARTDATE > GETDATE()
raiserror('Start date cannot be future dated.', 13, 1);
end
if @HISTORICALENDDATE is not null
begin
if @HISTORICALENDDATE > GETDATE()
raiserror('End date cannot be future dated.', 13, 1);
end
-- Clear county value if the country doesn't have a label for it.
if @COUNTRYID is not null
and not exists(
select 1
from dbo.COUNTRY C
inner join dbo.COUNTRYADDRESSLABEL CAL on CAL.COUNTRYID = C.ID
where C.ID = @COUNTRYID
and (coalesce(CAL.COUNTYLABEL,'') <> '')
)
begin
set @COUNTYCODEID = null;
end
if exists(select object_id from sys.objects where type = 'U' and name = 'GROUPMEMBER')
begin
begin try
if @UPDATEMATCHINGHOUSEHOLDADDRESSES = 1 begin
exec dbo.USP_ADDRESS_UPDATEMATCHINGADDRESSES @ADDRESSID = @ID,
@CHANGEAGENTID = @CHANGEAGENTID,
@ADDRESSTYPECODEID = @ADDRESSTYPECODEID,
@PRIMARY = @PRIMARY,
@DONOTMAIL = @DONOTMAIL,
@STARTDATE = @STARTDATE,
@ENDDATE = @ENDDATE,
@COUNTRYID = @COUNTRYID,
@STATEID = @STATEID,
@ADDRESSBLOCK = @ADDRESSBLOCK,
@CITY = @CITY,
@POSTCODE = @POSTCODE,
@CART = @CART,
@DPC = @DPC,
@LOT = @LOT,
@OMITFROMVALIDATION = @OMITFROMVALIDATION,
@COUNTYCODEID = @COUNTYCODEID,
@CONGRESSIONALDISTRICTCODEID = @CONGRESSIONALDISTRICTCODEID,
@STATEHOUSEDISTRICTCODEID = @STATEHOUSEDISTRICTCODEID,
@STATESENATEDISTRICTCODEID = @STATESENATEDISTRICTCODEID,
@LOCALPRECINCTCODEID = @LOCALPRECINCTCODEID,
@INFOSOURCECODEID = @INFOSOURCECODEID,
@REGIONCODEID = @REGIONCODEID,
@LASTVALIDATIONATTEMPTDATE = @LASTVALIDATIONATTEMPTDATE,
@VALIDATIONMESSAGE = @VALIDATIONMESSAGE,
@CERTIFICATIONDATA = @CERTIFICATIONDATA,
@DONOTMAILREASONCODEID = @DONOTMAILREASONCODEID,
@HISTORICALSTARTDATE = @HISTORICALSTARTDATE,
@HISTORICALENDDATE = @HISTORICALENDDATE,
@INFOSOURCECOMMENTS = @INFOSOURCECOMMENTS,
@ISCONFIDENTIAL = @ISCONFIDENTIAL
end
exec dbo.USP_ADDRESS_UPDATE @ID, @CHANGEAGENTID, @ADDRESSTYPECODEID, @PRIMARY, @DONOTMAIL, @STARTDATE, @ENDDATE,
@COUNTRYID, @STATEID, @ADDRESSBLOCK, @CITY, @POSTCODE, @CART, @DPC, @LOT, 0, -- Spouse addresses should be taken care of through the household address updates
@OMITFROMVALIDATION, @COUNTYCODEID, @CONGRESSIONALDISTRICTCODEID, @STATEHOUSEDISTRICTCODEID,
@STATESENATEDISTRICTCODEID, @LOCALPRECINCTCODEID, @INFOSOURCECODEID, @REGIONCODEID, @LASTVALIDATIONATTEMPTDATE,
@VALIDATIONMESSAGE, @CERTIFICATIONDATA, @UPDATECONTACTS, @DONOTMAILREASONCODEID, @HISTORICALSTARTDATE, @HISTORICALENDDATE,
@INFOSOURCECOMMENTS, @ISCONFIDENTIAL
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
end