TR_OPPORTUNITY_TASYNC_I

Definition

Copy


    CREATE trigger TR_OPPORTUNITY_TASYNC_I on dbo.OPPORTUNITY after insert not for replication
    as begin
      -- Excluding the normal condition that the insert is not performed by the sync.

      -- This table is mapped B2T to a different table than the original TA table, and this needs to behave

      -- in the same manner whether the row comes from TA or BBEC originally.


      insert into dbo.TA_OPPORTUNITY (ID, SYNCID, ACTIONCODE)
      select ID, newid(), 1
      from INSERTED
      -- don't sync records for groups

      where not exists(select 'x'
                       from dbo.GROUPDATA d
                       inner join dbo.PROSPECTPLAN p on p.PROSPECTID = d.ID
                       where p.ID = INSERTED.PROSPECTPLANID
                       and d.GROUPTYPECODE = 1);

      -- note that the above insert could fail if row is deleted and then reinserted w/ same ID before sync is run

      -- since we would not know anything about whether the row is really the same or not, we need to throw an exception

      -- to resolve, run the sync, then retry the insert

    end