• here's one idea: modify the trigger to also use CONTEXT_INFO as the update criteria

    ALTER TRIGGER [dbo].[tuReferral_UpdateAudit]

    ON [dbo].[tReferral]

    FOR UPDATE

    AS

    -- Select the context information

    DECLARE @sess VARBINARY(128), @var NVARCHAR(64)

    SET @sess = (SELECT context_info FROM master.dbo.sysprocesses

    WHERE spid = @@spid)

    SET @var = ISNULL(CAST(@sess AS NVARCHAR(64)),'')

    -- Keep Audit "Update" audit columns current (reflect data changes) for table: tReferral

    UPDATEtbl

    SET

    tbl.UpdateLogin= SUSER_SNAME()

    ,tbl.UpdateApp= SUBSTRING(APP_NAME(),1,64)

    ,tbl.UpdateDateTime= CURRENT_TIMESTAMP

    FROMdbo.tReferral tbl

    JOIN (SELECT *,CHECKSUM(*) AS CSUM FROM inserted) i

    ON tbl.ReferralID = i.ReferralID

    JOIN (SELECT *,CHECKSUM(*) AS CSUM FROM deleted) d

    ON i.ReferralID = d.ReferralID

    WHEREi.CSUM != d.CSUM

    AND SUSER_SNAME() NOT IN ('sa','PKX\prodsqlsvc')

    and @var <> 'SKIPME'

    then in your stored procedure, you do this:

    Create Procedure MyProc

    AS

    BEGIN

    DECLARE @var VARBINARY(128)

    SET @var = CAST(N'SKIPME' AS VARBINARY(128))

    SET CONTEXT_INFO @var

    --do stuff

    --disable the work around

    SET @var = CAST(N'' AS VARBINARY(128))

    SET CONTEXT_INFO @var

    END --PROC

    the advantage of that is it is a per session variable,and not global like a row in a table would be.

    Lowell


    --help us help you! If you post a question, make sure you include a CREATE TABLE... statement and INSERT INTO... statement into that table to give the volunteers here representative data. with your description of the problem, we can provide a tested, verifiable solution to your question! asking the question the right way gets you a tested answer the fastest way possible!