TR_ADDRESS_DELETE_SEARCHCONSTITUENT
Definition
Copy
CREATE trigger TR_ADDRESS_DELETE_SEARCHCONSTITUENT on dbo.ADDRESS after delete not for replication
as begin
if isnull(context_info(),0x)<>0xE2DF375A033A104382689B8EAC5165AD
begin
delete from dbo.SEARCHCONSTITUENT
where ADDRESSID in(select ID from deleted);
-- add name-only row to searchconstituent for constituent where no more addresses remain
insert into dbo.SEARCHCONSTITUENT (ID,CONSTITUENTID,
KEYNAME,FIRSTNAME,MIDDLENAME,NAMETYPECODE,
TITLECODEID,SUFFIXCODEID,
ISORGANIZATION,ISGROUP, ALIASID)
select newid(),
d.CONSTITUENTID,
c.KEYNAME,
c.FIRSTNAME,
c.MIDDLENAME,
c.NAMETYPECODE,
c.TITLECODEID,
c.SUFFIXCODEID,
c.ISORGANIZATION,
c.ISGROUP,
c.ALIASID
from (select distinct CONSTITUENTID from deleted) d
inner join dbo.V_CONSTITUENTALLNAMES c on c.ID = d.CONSTITUENTID
where c.KEYNAME<>''
and not exists(select 'x' from dbo.SEARCHCONSTITUENT where CONSTITUENTID = d.CONSTITUENTID)
end
end