TR_JOB_INSERTUPDATE_CURRENCY

Definition

Copy


create trigger dbo.[TR_JOB_INSERTUPDATE_CURRENCY] on dbo.[JOB] 
after insert, update 
not for replication
as
begin
  set nocount on;

  declare @ORGANIZATIONCURRENCYID uniqueidentifier = dbo.[UFN_CURRENCY_GETORGANIZATIONCURRENCY]();

  if update([ESTIMATEDVALUE])
    update dbo.[JOB] set
      [JOB].[ORGANIZATIONESTIMATEDVALUE] = [JOB].[ESTIMATEDVALUE],

      [JOB].[BASECURRENCYID] = @ORGANIZATIONCURRENCYID,

      [JOB].[CHANGEDBYID] = [JOB].[CHANGEDBYID],
      [JOB].[DATECHANGED] = [JOB].[DATECHANGED]
    from inserted
    inner join dbo.[JOB] on [JOB].[ID] = inserted.[ID]
    where [JOB].[ORGANIZATIONEXCHANGERATEID] is null
    and ([JOB].[BASECURRENCYID] is null or [JOB].[BASECURRENCYID] = @ORGANIZATIONCURRENCYID)
    and ([JOB].[ORGANIZATIONESTIMATEDVALUE] <> [JOB].[ESTIMATEDVALUE] or [JOB].[ESTIMATEDVALUE] = 0);
end