Print 'Doing pre run Checks to ensure script not already run'; Select * from Script_History where Script_Name='DNH08/4KActive240415'; if @@ROWCOUNT!=0 BEGIN RAISERROR('THIS SCRIPT HAS ALREADY BEEN RUN ON THIS SERVER, CANNOT CONTINUE, PLEASE CONTACT DEV',11,1); RETURN; END GO insert into Product_Catalogue_History(Product_Catalogue_ID, Product_Catalogue_Status_ID, reason, MonthEnd) select pc.Product_Catalogue_ID, Last_Catalogue_Status_ID, 'Supplier Discontinued - Revert to previous status', GETDATE() from Product_Catalogue pc where product_catalogue_id in ( select product_catalogue_id from product_catalogue where supplier_id = 1 and Product_Catalogue_Status_ID = 4 and product_id in ( select product_id from product where product_code in ('DNH08/4K' )) ); update Product_Catalogue set Product_Catalogue_Status_ID = Last_Catalogue_Status_ID, Last_Catalogue_Status_ID = Product_Catalogue_Status_ID, Last_Catalogue_Changed = GETDATE(), Last_Change_Reason = 'Supplier Discontinued - Revert to previous status' where product_catalogue_id in ( select product_catalogue_id from product_catalogue where supplier_id = 1 and Product_Catalogue_Status_ID = 4 and product_id in ( select product_id from product where product_code in ('DNH08/4K' )) ); Print 'Insert into script history if everything else is cool'; Insert into Script_History (RunDate,Script_Name) Values (CURRENT_TIMESTAMP,'DNH08/4KActive240415'); IF @@ERROR != 0 BEGIN RAISERROR ('UNABLE TO CONTINUE WITH SCRIPT', 11, 1); RETURN; END GO