I am working with the following code:
[HTML]CREATE TRIGGER PurchaseOrder
ON tblPO
FOR INSERT
AS
DECLARE @Result INT
DECLARE @ODate SMALLDATETIME
DECLARE @SDate SMALLDATETIME
DECLARE @CustomerID INT
DECLARE @SuID INT
DECLARE @Fav REAL
DECLARE @STo CHAR(35)
DECLARE @SAdd CHAR(50)
DECLARE @SCit CHAR(15)
DECLARE @SProv CHAR(10)
DECLARE @SPC CHAR(10)
DECLARE @SPhone CHAR(10)
DECLARE @Acc CHAR(20)
BEGIN TRY
--BEGIN TRANSACTION PurchaseOrder
SELECT @Result = CustID FROM tblCust WHERE ((CustID=2) AND (Active>0))
--SELECT @Result
IF (@Result IS NULL)
BEGIN
PRINT 'Customer is not ACTIVE'
BREAK
END
ELSE
BEGIN
BEGIN TRANSACTION PurchaseOrder
INSERT INTO tblPO
(OrderDate, ShipDate, CustID, SupID, FavUnfav, ShipTo, ShipAddress, ShipCity, ShipProv, ShipPC, ShipPhone, AccntPO)
Values(@ODate, @SDate, @CustomerID, @SuID, @Fav, @STo, @SAdd, @SCit, @SProv, @SPC, @SPhone, @Acc)
COMMIT TRANSACTION PurchaseOrder
END
--COMMIT TRANSACTION PurchaseOrder
END TRY[/HTML]
When I run the following:
[HTML]insert into tblPO VALUES ('2007-02-04', '2007-02-06', 2, 1, 0.1, 'Intrawest Foods Ltd.', '13811 Wireless Way', 'Burnaby', 'BC', 'V6X 1W3', 6044512700, 'PO20070002')[/HTML]
The PRINT statement executes, but so does the insert as well. I'm trying to stop the insert from occuring if the value returned is NULL (which it is with the data I'm trying to insert)