![]() |
---|
CREATE trigger [dbo].[TR_GRANTS_INSERTUPDATE_CURRENCY] on [dbo].[GRANTS] after insert, update not for replication as begin set nocount on; declare @ORGANIZATIONCURRENCYID uniqueidentifier = dbo.UFN_CURRENCY_GETORGANIZATIONCURRENCY(); if update(MINAWARD) or update(MAXAWARD) update dbo.GRANTS set GRANTS.ORGANIZATIONMINAWARD = GRANTS.MINAWARD, GRANTS.TRANSACTIONMINAWARD = GRANTS.MINAWARD, GRANTS.ORGANIZATIONMAXAWARD = GRANTS.MAXAWARD, GRANTS.TRANSACTIONMAXAWARD = GRANTS.MAXAWARD, GRANTS.BASECURRENCYID = @ORGANIZATIONCURRENCYID, GRANTS.TRANSACTIONCURRENCYID = @ORGANIZATIONCURRENCYID, GRANTS.CHANGEDBYID = GRANTS.CHANGEDBYID, GRANTS.DATECHANGED = GRANTS.DATECHANGED from inserted inner join dbo.GRANTS on inserted.ID = GRANTS.ID where GRANTS.ORGANIZATIONEXCHANGERATEID is null and (GRANTS.BASECURRENCYID is null or GRANTS.BASECURRENCYID = @ORGANIZATIONCURRENCYID) and GRANTS.BASEEXCHANGERATEID is null and (GRANTS.TRANSACTIONCURRENCYID is null or GRANTS.TRANSACTIONCURRENCYID = @ORGANIZATIONCURRENCYID) and ( GRANTS.ORGANIZATIONMINAWARD <> GRANTS.MINAWARD or GRANTS.TRANSACTIONMINAWARD <> GRANTS.MINAWARD or GRANTS.ORGANIZATIONMAXAWARD <> GRANTS.MAXAWARD or GRANTS.TRANSACTIONMAXAWARD <> GRANTS.MAXAWARD or (GRANTS.MAXAWARD = 0 and GRANTS.MINAWARD = 0) ); end |