IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sp_MMEDirectionsUpdateInsert]') AND type in (N'P', N'PC')) DROP PROCEDURE [dbo].[sp_MMEDirectionsUpdateInsert] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sp_MMEDirectionsUpdateInsert]') AND type in (N'P', N'PC')) BEGIN EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [dbo].[sp_MMEDirectionsUpdateInsert] AS' END GO ALTER PROCEDURE [dbo].[sp_MMEDirectionsUpdateInsert] @s_GUID uniqueidentifier ,@DIRECTION nvarchar(50) ,@TEXT_L1 nvarchar(255) ,@TEXT_L2 nvarchar(255) ,@DATE datetime ,@VERSION int ,@EXPIRED bit ,@REMARKS nvarchar(max) ,@LAST_CHANGE datetime ,@LAST_CHANGE_TEXT nvarchar(255) ,@HISTORY nvarchar(max) ,@SORTKEY nvarchar(50) ,@new_id int output ,@errorNumber int output ,@errorMessage nvarchar(250) output AS BEGIN set @errorNumber = 0 set @errorMessage = space(0) SET NOCOUNT ON; if(exists(select * from [dbo].[MMEDirections] where [s_GUID] = @s_GUID)) begin set @new_id = 0 exec dbo.sp_MMEDirectionsUpdate @s_GUID, @DIRECTION, @TEXT_L1, @TEXT_L2, @DATE, @VERSION, @EXPIRED, @REMARKS, @LAST_CHANGE, @LAST_CHANGE_TEXT, @HISTORY,@SORTKEY, @errorNumber output, @errorMessage output end else begin exec dbo.sp_MMEDirectionsInsert @s_GUID, @DIRECTION, @TEXT_L1, @TEXT_L2, @DATE, @VERSION, @EXPIRED, @REMARKS, @LAST_CHANGE, @LAST_CHANGE_TEXT, @HISTORY,@SORTKEY, @new_id output, @errorNumber output, @errorMessage output end END GO