TR_RECURRINGGIFTINSTALLMENTWRITEOFF_UPDATE_STATUSCODEUPDATE
Definition
 Copy 
                                    
                    CREATE trigger [dbo].[TR_RECURRINGGIFTINSTALLMENTWRITEOFF_UPDATE_STATUSCODEUPDATE] on [dbo].[RECURRINGGIFTINSTALLMENTWRITEOFF] 
                    after update
                    not for replication
                    as
                    begin
                        set nocount on;
                        -- update the rg installment.statuscode to reflect writeoff/skip
                        update rgi
                        set STATUSCODE = case when (select rgw.typecode from dbo.RECURRINGGIFTWRITEOFF rgw where ins.WRITEOFFID = rgw.ID) = 1 then 3 -- skips
                                              -- otherwise deal with write-offs
                                              else case when ins.AMOUNT = rgi.AMOUNT then 4
                                                        when ins.AMOUNT < del.AMOUNT then case when rgi.PASTDUEDATE is not null then 1 else 0 end
                                                        else dbo.UFN_RECURRINGGIFTINSTALLMENT_DETERMINESTATUSAFTERCHANGE(rgi.ID,rgi.STATUSCODE,4) end
                                              end,
                            rgi.CHANGEDBYID = ins.CHANGEDBYID,
                            rgi.DATECHANGED = ins.DATECHANGED
                        from dbo.RECURRINGGIFTINSTALLMENT rgi
                        inner join inserted ins on ins.RECURRINGGIFTINSTALLMENTID = rgi.ID
                        inner join deleted del on del.ID = ins.ID
                        where ins.AMOUNT <> del.AMOUNT
                    end