El CodActivo lo saco de una tabla que se llama tztActivo
Al insertar un ingreso de activo los campos de la tabla txtIngresoActivo quedan así -> Codigo=1, CodActivo=101, Descripción=Computadora Portatil, Serie=200-10-1-1, FechaIngreso=16-07-2014, Estado=Creado
En mi código visual .NET tengo un método que me permite aprobar esta transacción, osea que actualizo el campo Estado de la tabla txtIngresoActivo -> Estado=Aprobado
Lo que quiero por favor que me ayuden es en lo siguiente, en un procedimiento almacenado que permita actualizar los datos de la tabla txtIngresoActivo solo si el Estado de ese registro se encuentra en Estado=Creado y la Serie no se repita en ningún otro registro.
Este procedimiento lo hice yo pero me sale un error.
Código SQL:
[/PHP]Ver original
CREATE PROCEDURE ModificarIngresoActivo @Codigo INT, @CodAct INT, @Descripcion VARCHAR(500), @Serie VARCHAR(50), @FechaIngreso DATE, @Estado VARCHAR(50) AS DECLARE @resultado bit IF (SELECT * FROM txtIngresoActivo WHERE Codigo = @Codigo ) = 'Aprobado' BEGIN SET @resultado = 1 END ELSE BEGIN IF EXISTS (SELECT * FROM txtIngresoActivo WHERE Serie = @Serie) BEGIN SET @resultado = 2 END ELSE BEGIN SET @resultado = 0 UPDATE txtIngresoActivo SET CodAct = @CodAct, Descripcion=@Descripcion, Serie = @Serie, FechaIngreso = @FechaIngreso WHERE Codigo = @Codigo END END SELECT @resultado GO
Al ejecutar este procedimiento me sale: " Solo se puede especificar una expresión en la Lista de Selección cuando la subconsulta no se especifica con EXISTS"
gracias.