• Thank you so much

    But I have a question(It might be dumb,I'm not sure. I'm a beginner)

    but the @@spid here returns the sessionid of the storeprocedure???(I was thinking since the current sessionID would be the execution of trigger)

    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'

    ThankYou

    Swetha