![]() |
---|
create trigger [dbo].[TR_MKTMEMBERSHIPMAILINGACTIVE_IU_ORGANIZATIONAMOUNTS] on [dbo].[MKTMEMBERSHIPMAILINGACTIVE] 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.[MKTMEMBERSHIPMAILINGACTIVE] set [MKTMEMBERSHIPMAILINGACTIVE].[ORGANIZATIONTOTALRENEWALAMOUNT] = [MKTMEMBERSHIPMAILINGACTIVE].[TOTALRENEWALAMOUNT], [MKTMEMBERSHIPMAILINGACTIVE].[ORGANIZATIONAVERAGERENEWALAMOUNT] = [MKTMEMBERSHIPMAILINGACTIVE].[AVERAGERENEWALAMOUNT], [MKTMEMBERSHIPMAILINGACTIVE].[ORGANIZATIONCOSTPERRENEWAL] = [MKTMEMBERSHIPMAILINGACTIVE].[COSTPERRENEWAL], [MKTMEMBERSHIPMAILINGACTIVE].[BASECURRENCYID] = @ORGANIZATIONCURRENCYID, [MKTMEMBERSHIPMAILINGACTIVE].[CHANGEDBYID] = [MKTMEMBERSHIPMAILINGACTIVE].[CHANGEDBYID], [MKTMEMBERSHIPMAILINGACTIVE].[DATECHANGED] = [MKTMEMBERSHIPMAILINGACTIVE].[DATECHANGED] from inserted inner join dbo.[MKTMEMBERSHIPMAILINGACTIVE] on inserted.ID = [MKTMEMBERSHIPMAILINGACTIVE].[ID] where ([MKTMEMBERSHIPMAILINGACTIVE].[BASECURRENCYID] is null or [MKTMEMBERSHIPMAILINGACTIVE].[BASECURRENCYID] = @ORGANIZATIONCURRENCYID) and ( [MKTMEMBERSHIPMAILINGACTIVE].[ORGANIZATIONTOTALRENEWALAMOUNT] <> [MKTMEMBERSHIPMAILINGACTIVE].[TOTALRENEWALAMOUNT] or [MKTMEMBERSHIPMAILINGACTIVE].[ORGANIZATIONAVERAGERENEWALAMOUNT] <> [MKTMEMBERSHIPMAILINGACTIVE].[AVERAGERENEWALAMOUNT] or [MKTMEMBERSHIPMAILINGACTIVE].[ORGANIZATIONCOSTPERRENEWAL] <> [MKTMEMBERSHIPMAILINGACTIVE].[COSTPERRENEWAL] or ( [MKTMEMBERSHIPMAILINGACTIVE].[TOTALRENEWALAMOUNT] = 0 and [MKTMEMBERSHIPMAILINGACTIVE].[AVERAGERENEWALAMOUNT] = 0 and [MKTMEMBERSHIPMAILINGACTIVE].[COSTPERRENEWAL] = 0) ); end end |