TR_INSTALLMENTSPLIT_INSERTUPDATE_REVENUESPLITID
Definition
Copy
CREATE trigger [dbo].[TR_INSTALLMENTSPLIT_INSERTUPDATE_REVENUESPLITID] on [dbo].[INSTALLMENTSPLIT]
after insert, update
not for replication
as
begin
set nocount on;
if update(REVENUESPLITID)
begin
update
dbo.INSTALLMENTSPLIT
set
INSTALLMENTSPLIT.REVENUESPLITID = REVENUESPLIT.ID,
INSTALLMENTSPLIT.CHANGEDBYID = INSTALLMENTSPLIT.CHANGEDBYID,
INSTALLMENTSPLIT.DATECHANGED = INSTALLMENTSPLIT.DATECHANGED
from
inserted
inner join
dbo.INSTALLMENTSPLIT on inserted.ID = INSTALLMENTSPLIT.ID
inner join
dbo.FINANCIALTRANSACTIONLINEITEM REVENUESPLIT on INSTALLMENTSPLIT.PLEDGEID = REVENUESPLIT.FINANCIALTRANSACTIONID
inner join
dbo.REVENUESPLIT_EXT on REVENUESPLIT.ID = REVENUESPLIT_EXT.ID and INSTALLMENTSPLIT.DESIGNATIONID = REVENUESPLIT_EXT.DESIGNATIONID
where
INSTALLMENTSPLIT.REVENUESPLITID is null
and INSTALLMENTSPLIT.DESIGNATIONID is not null
and REVENUESPLIT.DELETEDON is null
and REVENUESPLIT.TYPECODE <> 1;
-- Bug fix 194918: For membership installments the revenue split id is passed down as null in the installment splits. This will ensure the correct revenue split id
-- is put back in place for FTM transactions.
update
dbo.INSTALLMENTSPLIT
set
INSTALLMENTSPLIT.REVENUESPLITID = FINANCIALTRANSACTIONLINEITEM.ID,
INSTALLMENTSPLIT.CHANGEDBYID = INSTALLMENTSPLIT.CHANGEDBYID,
INSTALLMENTSPLIT.DATECHANGED = INSTALLMENTSPLIT.DATECHANGED
from
inserted
inner join
dbo.INSTALLMENTSPLIT on inserted.ID = INSTALLMENTSPLIT.ID
inner join
dbo.FINANCIALTRANSACTIONLINEITEM on INSTALLMENTSPLIT.PLEDGEID = FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID
where
INSTALLMENTSPLIT.REVENUESPLITID is null;
end
end