TR_DESIGNATIONLEVELFINANCIALINFO_INSERTUPDATE_CURRENCY
Definition
Copy
CREATE trigger [dbo].[TR_DESIGNATIONLEVELFINANCIALINFO_INSERTUPDATE_CURRENCY] on [dbo].[DESIGNATIONLEVELFINANCIALINFO]
after insert, update
not for replication
as
begin
set nocount on;
declare @ORGANIZATIONCURRENCYID uniqueidentifier = dbo.UFN_CURRENCY_GETORGANIZATIONCURRENCY();
if update(BOOKVALUESTART) or update(BOOKVALUEEND) or update(MARKETVALUESTART) or update(MARKETVALUEEND) or update(TOTALGIFTREVENUE) or update(TOTALDISBURSEMENTS) or update(PLEDGEBALANCE)
update
dbo.DESIGNATIONLEVELFINANCIALINFO
set
DESIGNATIONLEVELFINANCIALINFO.ORGANIZATIONBOOKVALUESTART = DESIGNATIONLEVELFINANCIALINFO.BOOKVALUESTART,
DESIGNATIONLEVELFINANCIALINFO.ORGANIZATIONBOOKVALUEEND = DESIGNATIONLEVELFINANCIALINFO.BOOKVALUEEND,
DESIGNATIONLEVELFINANCIALINFO.ORGANIZATIONMARKETVALUESTART = DESIGNATIONLEVELFINANCIALINFO.MARKETVALUESTART,
DESIGNATIONLEVELFINANCIALINFO.ORGANIZATIONMARKETVALUEEND = DESIGNATIONLEVELFINANCIALINFO.MARKETVALUEEND,
DESIGNATIONLEVELFINANCIALINFO.ORGANIZATIONTOTALGIFTREVENUE = DESIGNATIONLEVELFINANCIALINFO.TOTALGIFTREVENUE,
DESIGNATIONLEVELFINANCIALINFO.ORGANIZATIONTOTALDISBURSEMENTS = DESIGNATIONLEVELFINANCIALINFO.TOTALDISBURSEMENTS,
DESIGNATIONLEVELFINANCIALINFO.ORGANIZATIONPLEDGEBALANCE = DESIGNATIONLEVELFINANCIALINFO.PLEDGEBALANCE,
DESIGNATIONLEVELFINANCIALINFO.BASECURRENCYID = @ORGANIZATIONCURRENCYID,
DESIGNATIONLEVELFINANCIALINFO.CHANGEDBYID = DESIGNATIONLEVELFINANCIALINFO.CHANGEDBYID,
DESIGNATIONLEVELFINANCIALINFO.DATECHANGED = DESIGNATIONLEVELFINANCIALINFO.DATECHANGED
from
inserted
inner join
dbo.DESIGNATIONLEVELFINANCIALINFO on inserted.ID = DESIGNATIONLEVELFINANCIALINFO.ID
where
DESIGNATIONLEVELFINANCIALINFO.ORGANIZATIONEXCHANGERATEID is null
and (DESIGNATIONLEVELFINANCIALINFO.BASECURRENCYID is null or DESIGNATIONLEVELFINANCIALINFO.BASECURRENCYID = @ORGANIZATIONCURRENCYID)
and
(
DESIGNATIONLEVELFINANCIALINFO.ORGANIZATIONBOOKVALUESTART <> DESIGNATIONLEVELFINANCIALINFO.BOOKVALUESTART
or DESIGNATIONLEVELFINANCIALINFO.ORGANIZATIONBOOKVALUEEND <> DESIGNATIONLEVELFINANCIALINFO.BOOKVALUEEND
or DESIGNATIONLEVELFINANCIALINFO.ORGANIZATIONMARKETVALUESTART <> DESIGNATIONLEVELFINANCIALINFO.MARKETVALUESTART
or DESIGNATIONLEVELFINANCIALINFO.ORGANIZATIONMARKETVALUEEND <> DESIGNATIONLEVELFINANCIALINFO.MARKETVALUEEND
or DESIGNATIONLEVELFINANCIALINFO.ORGANIZATIONTOTALGIFTREVENUE <> DESIGNATIONLEVELFINANCIALINFO.TOTALGIFTREVENUE
or DESIGNATIONLEVELFINANCIALINFO.ORGANIZATIONTOTALDISBURSEMENTS <> DESIGNATIONLEVELFINANCIALINFO.TOTALDISBURSEMENTS
or DESIGNATIONLEVELFINANCIALINFO.ORGANIZATIONPLEDGEBALANCE <> DESIGNATIONLEVELFINANCIALINFO.PLEDGEBALANCE
or (
DESIGNATIONLEVELFINANCIALINFO.BOOKVALUESTART = 0 and
DESIGNATIONLEVELFINANCIALINFO.BOOKVALUEEND = 0 and
DESIGNATIONLEVELFINANCIALINFO.MARKETVALUESTART = 0 and
DESIGNATIONLEVELFINANCIALINFO.MARKETVALUEEND = 0 and
DESIGNATIONLEVELFINANCIALINFO.TOTALGIFTREVENUE = 0 and
DESIGNATIONLEVELFINANCIALINFO.TOTALDISBURSEMENTS = 0 and
DESIGNATIONLEVELFINANCIALINFO.PLEDGEBALANCE = 0
)
);
end