You need to be more selective than that. Any reference to the column will turn the "UPDATE flag" on, even if the value is the same. Maybe something like this:
ALTER TRIGGER [dbo].[trgCustomer_upd]
ON [dbo].[Customer]
FOR update
AS
SET NOCOUNT ON;
if @@rowcount = 0
RETURN
DECLARE @SUPPID_changed bit
DECLARE @MANID_changed bit
SELECT
@SUPPID_changed = MAX(CASE WHEN ISNULL(i.SUPPID, '-999') <> ISNULL(o.SUPPID, '-999') THEN 1 ELSE 0 END),
@MANID_changed = MAX(CASE WHEN ISNULL(i.MANID, '-999') <> ISNULL(o.MANID, '-999') THEN 1 ELSE 0 END)
FROM inserted i
INNER JOIN deleted d ON d.CustID = i.CustID
IF @SUPPID_changed = 1
OR @MANID_changed = 1
BEGIN
DECLARE @raiserror_msg nvarchar(1024)
SET @raiserror_msg = 'Cannot update ' +
CASE WHEN @SUPPID_changed = 1 THEN 'SUPPID' ELSE '' END +
CASE WHEN @MANID_changed = 1
THEN CASE WHEN @SUPPID_changed = 1 THEN ' nor ' ELSE '' END + 'MANID'
ELSE '' END + '.'
RAISERROR (@raiserror_msg,16,1)
ROLLBACK TRAN
RETURN
END
declare @date datetime
set @date = getdate()
UPDATE tblCustomer
SET dtEdited = @date
FROM inserted Ins
WHERE tblCustomer.CustID = ins.CustID
INSERT INTO AuditDB..tblCustomer
SELECT ... FROM deleted
GO --end of trigger
SQL DBA,SQL Server MVP(07, 08, 09) A socialist is someone who will give you the shirt off *someone else's* back.