![]() |
---|
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 |