TR_MKTMEMBERSHIPMAILINGSEGMENTACTIVE_IU_ORGANIZATIONAMOUNTS
Definition
Copy
create trigger [dbo].[TR_MKTMEMBERSHIPMAILINGSEGMENTACTIVE_IU_ORGANIZATIONAMOUNTS] on [dbo].[MKTMEMBERSHIPMAILINGSEGMENTACTIVE]
after insert, update
not for replication
as
begin
set nocount on;
if update(TOTALRENEWALAMOUNT) or update(AVERAGERENEWALAMOUNT) or update(COSTPERRENEWAL)
begin
declare @ORGANIZATIONCURRENCYID uniqueidentifier = dbo.[UFN_CURRENCY_GETORGANIZATIONCURRENCY]();
update
dbo.[MKTMEMBERSHIPMAILINGSEGMENTACTIVE]
set
[MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[ORGANIZATIONTOTALRENEWALAMOUNT] = [MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[TOTALRENEWALAMOUNT],
[MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[ORGANIZATIONAVERAGERENEWALAMOUNT] = [MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[AVERAGERENEWALAMOUNT],
[MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[ORGANIZATIONCOSTPERRENEWAL] = [MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[COSTPERRENEWAL],
[MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[BASECURRENCYID] = @ORGANIZATIONCURRENCYID,
[MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[CHANGEDBYID] = [MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[CHANGEDBYID],
[MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[DATECHANGED] = [MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[DATECHANGED]
from
inserted
inner join dbo.[MKTMEMBERSHIPMAILINGSEGMENTACTIVE] on inserted.ID = [MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[ID]
where
([MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[BASECURRENCYID] is null or [MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[BASECURRENCYID] = @ORGANIZATIONCURRENCYID)
and
(
[MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[ORGANIZATIONTOTALRENEWALAMOUNT] <> [MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[TOTALRENEWALAMOUNT]
or [MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[ORGANIZATIONAVERAGERENEWALAMOUNT] <> [MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[AVERAGERENEWALAMOUNT]
or [MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[ORGANIZATIONCOSTPERRENEWAL] <> [MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[COSTPERRENEWAL]
or ([MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[TOTALRENEWALAMOUNT] = 0 and [MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[AVERAGERENEWALAMOUNT] = 0 and [MKTMEMBERSHIPMAILINGSEGMENTACTIVE].[COSTPERRENEWAL] = 0)
);
end
end