Restaurant POS : POSmen

A Trigger Sample

USE [POSmen]
GO

/****** Object:  Trigger [dbo].[tI_KSM09_TBL]    Script Date: 12/25/2008 11:18:13 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

ALTER trigger ti_KSM09_TBL ON KSM09_TBL FOR INSERT
AS

/* INSERT trigger on KSM09_TBL */
BEGIN

DECLARE  @numrows int, @nullcnt int, @validcnt int, @errno   int, @errmsg  varchar(255)

SELECT @numrows = @@rowcount
  /* KSM06_TBL R/13 KSM09_TBL ON CHILD INSERT SET NULL */

IF UPDATE(f_sawonid)
BEGIN
 UPDATE KSM09_TBL
 SET  KSM09_TBL.f_sawonid = NULL
 FROM KSM09_TBL, INSERTED
 WHERE KSM09_TBL.f_billno = INSERTED.f_billno AND
   KSM09_TBL.f_billseq = INSERTED.f_billseq AND
   NOT EXISTS (SELECT * FROM KSM06_TBL WHERE INSERTED.f_sawonid = KSM06_TBL.f_sawonid)
 END
RETURN

error:
    raiserror @errno @errmsg
    rollback transaction
END