TR_MKTMARKETINGPLANBRIEF_INSERTUPDATE_CURRENCY
Definition
Copy
CREATE trigger dbo.[TR_MKTMARKETINGPLANBRIEF_INSERTUPDATE_CURRENCY] on dbo.[MKTMARKETINGPLANBRIEF]
after insert, update
not for replication
as
begin
set nocount on;
update dbo.[MKTMARKETINGPLANBRIEF] set
[MKTMARKETINGPLANBRIEF].[BASECURRENCYID] = [MKTMARKETINGPLAN].[BASECURRENCYID],
[MKTMARKETINGPLANBRIEF].[CHANGEDBYID] = [MKTMARKETINGPLANBRIEF].[CHANGEDBYID],
[MKTMARKETINGPLANBRIEF].[DATECHANGED] = [MKTMARKETINGPLANBRIEF].[DATECHANGED]
from inserted
inner join dbo.[MKTMARKETINGPLANBRIEF] on [MKTMARKETINGPLANBRIEF].[ID] = inserted.[ID]
inner join dbo.[MKTMARKETINGPLANITEM] on [MKTMARKETINGPLANITEM].[ID] = [MKTMARKETINGPLANBRIEF].[MARKETINGPLANITEMID]
inner join dbo.[MKTMARKETINGPLAN] on [MKTMARKETINGPLAN].[ID] = [MKTMARKETINGPLANITEM].[MARKETINGPLANID]
where [MKTMARKETINGPLANBRIEF].[BASECURRENCYID] is null;
if update([UNITCOST]) or update([BUDGETAMOUNT]) or update([TOTALREVENUEGOAL]) or update ([AVERAGEREVENUEGOAL])
begin
declare @ORGANIZATIONCURRENCYID uniqueidentifier = dbo.[UFN_CURRENCY_GETORGANIZATIONCURRENCY]();
update dbo.[MKTMARKETINGPLANBRIEF] set
[MKTMARKETINGPLANBRIEF].[ORGANIZATIONUNITCOST] = [MKTMARKETINGPLANBRIEF].[UNITCOST],
[MKTMARKETINGPLANBRIEF].[ORGANIZATIONBUDGETAMOUNT] = [MKTMARKETINGPLANBRIEF].[BUDGETAMOUNT],
[MKTMARKETINGPLANBRIEF].[ORGANIZATIONTOTALREVENUEGOAL] = [MKTMARKETINGPLANBRIEF].[TOTALREVENUEGOAL],
[MKTMARKETINGPLANBRIEF].[ORGANIZATIONAVERAGEREVENUEGOAL] = [MKTMARKETINGPLANBRIEF].[AVERAGEREVENUEGOAL],
[MKTMARKETINGPLANBRIEF].[CHANGEDBYID] = [MKTMARKETINGPLANBRIEF].[CHANGEDBYID],
[MKTMARKETINGPLANBRIEF].[DATECHANGED] = [MKTMARKETINGPLANBRIEF].[DATECHANGED]
from inserted
inner join dbo.[MKTMARKETINGPLANBRIEF] on [MKTMARKETINGPLANBRIEF].[ID] = inserted.[ID]
where [MKTMARKETINGPLANBRIEF].[CURRENCYEXCHANGERATEID] is null
and [MKTMARKETINGPLANBRIEF].[BASECURRENCYID] = @ORGANIZATIONCURRENCYID
and ([MKTMARKETINGPLANBRIEF].[ORGANIZATIONUNITCOST] <> [MKTMARKETINGPLANBRIEF].[UNITCOST]
or [MKTMARKETINGPLANBRIEF].[ORGANIZATIONBUDGETAMOUNT] <> [MKTMARKETINGPLANBRIEF].[BUDGETAMOUNT]
or [MKTMARKETINGPLANBRIEF].[ORGANIZATIONTOTALREVENUEGOAL] <> [MKTMARKETINGPLANBRIEF].[TOTALREVENUEGOAL]
or [MKTMARKETINGPLANBRIEF].[ORGANIZATIONAVERAGEREVENUEGOAL] <> [MKTMARKETINGPLANBRIEF].[AVERAGEREVENUEGOAL]
or ([MKTMARKETINGPLANBRIEF].[UNITCOST] = 0 and
[MKTMARKETINGPLANBRIEF].[BUDGETAMOUNT] = 0 and
[MKTMARKETINGPLANBRIEF].[TOTALREVENUEGOAL] = 0 and
[MKTMARKETINGPLANBRIEF].[AVERAGEREVENUEGOAL] = 0)
);
end
end