Eestoy intentando hacer dos insert en un procedimiento almacenado lo curioso es que no me inserta cuando meto el segundo insert, alguienp uede ayudarme a checar que es lo que estoy haciendo mal porfa..
ESTE ES MI CODIGO
Código SQL:
Ver originalUSE [sipro_inoc]
GO
/****** Object: StoredProcedure [dbo].[PA_INSERTAR_CONTRATO] Script Date: 12/11/2013 09:03:32 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROC [dbo].[PA_INSERTAR_CONTRATO]
@nombre_obra VARCHAR(500),
@clave_contrato VARCHAR(150),
@fecha_contrato nvarchar(20),
@fecha_inicio_contrato nvarchar(20),
@fecha_terminacion_contrato nvarchar(20),
@monto_asignado NVARCHAR(150),
@monto_contrato NVARCHAR(150),
@numero_expediente_contrato VARCHAR(120),
@anticipo_contrato NVARCHAR(150)
AS
BEGIN TRY
BEGIN TRAN
SELECT CAST(@fecha_contrato AS DATE)
SELECT CAST(@fecha_inicio_contrato AS DATE)
SELECT CAST(@fecha_terminacion_contrato AS DATE)
INSERT INTO contrato(id_obra,
clave_contrato,
fecha_contrato,
fecha_inicio_contrato,
fecha_terminacion_contrato,
monto_contrato,
numero_expediente_contrato,
anticipo_contrato)
VALUES
((SELECT id_obra FROM obra WHERE nombre_obra=@nombre_obra ),
@clave_contrato ,
@fecha_contrato ,
@fecha_inicio_contrato ,
@fecha_terminacion_contrato ,
(SELECT CAST(@monto_contrato AS MONEY)),
@numero_expediente_contrato,
(SELECT CAST(@anticipo_contrato AS MONEY)))
INSERT INTO Asignados (id_contrato,fecha,asignado )
VALUES ((SELECT id_contrato FROM contrato WHERE clave_contrato = @clave_contrato ),@fecha_contrato , (SELECT CAST(@monto_asignado AS MONEY)))
COMMIT
END TRY
BEGIN CATCH
ROLLBACK
PRINT error_message()
END CATCH