Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

retornar un mensaje en SP

Estas en el tema de retornar un mensaje en SP en el foro de SQL Server en Foros del Web. Hola tengo el siguiente procedimiento almacenado: create procedure sp_consulta_existencia ( @rutempresa varchar(15), @Rut_Empleado varchar(8000), @idturno int ) as DECLARE @Empleados varchar(8000) DECLARE @Rut varchar(20) DECLARE ...
  #1 (permalink)  
Antiguo 19/01/2007, 11:55
 
Fecha de Ingreso: junio-2004
Mensajes: 170
Antigüedad: 19 años, 10 meses
Puntos: 0
Pregunta retornar un mensaje en SP

Hola tengo el siguiente procedimiento almacenado:

create procedure sp_consulta_existencia (
@rutempresa varchar(15),
@Rut_Empleado varchar(8000),
@idturno int

)


as


DECLARE @Empleados varchar(8000)
DECLARE @Rut varchar(20)
DECLARE @Posicion int
Declare @entidad varchar(10)
DECLARE @msg INT


SET @Empleados = @Rut_Empleado+','
set @msg=1

WHILE patindex('%,%' , @Empleados) <> 0
BEGIN
SELECT @Posicion = patindex('%,%' , @Empleados)
SET @Rut = left(@Empleados, @Posicion - 1)
SELECT @Empleados = stuff(@Empleados, 1, @Posicion, '')

SELECT @ENTIDAD=Id_Entidad from EMPLEADOS where rut_empleado=@rut

if @entidad is null or @entidad=''
begin
SET @Entidad='1'
end
BEGIN Transaction


Select t.Id_Turno from Empleados as e
Inner Join Turno_Empleado as t On e.rut_empleado=T.rut_Empleado
where e.rut_Empresa=@rutEmpresa and e.estado='0' and id_Turno=@idturno and t.rut_empleado=@Rut
Commit Transaction

if @idturno = Id_Turno
begin
set @msg = 1
end

if @idturno != Id_Turno
begin
set @msg = 0
end


END


GO


pero me retorna un mensaje para todos los rut entregados con parametro en la variable Rut_Empleado, como lo tengo q hacer para q me retorne un mensaje para cada uno?


saludos
  #2 (permalink)  
Antiguo 19/01/2007, 12:56
 
Fecha de Ingreso: noviembre-2006
Ubicación: México
Mensajes: 866
Antigüedad: 17 años, 5 meses
Puntos: 8
Re: retornar un mensaje en SP

Que tal Jesús.

Puedes crear una tabla tenporal, antes de tu While, con la información de rut y el resultado
Código:
CREATE TABLE #Resultado ( rut tipoDato , Resultado  tipoDato)
Después para cada operación(cada registro, rut), dentro del while, haces un insert con el rut y el Resultado.
Código:
...
INSERT INTO#Resultado(rut, REsultado) VALUES ( @rut , @msg )
...
Y al final de tu stored haces un select a esa tabla temporal y la borras para no dejar evidencia .
Código:
SELECT rut, Resultado FROM #Resultado
DROP TABLE #Resultado
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:23.