Libras!!! me esta arrojando el siguiente error tu codigo, por lo que veo es un problema con la tabla temporal que estas armando, te paso mi codigo y el error, a ver si me puedes ayudar.
declare @nombre varchar(max)
declare @id int
declare @fecha date
declare @x int
Declare @Mensaje varchar(max)
set @fecha = CONVERT(char(10),getdate(),126)
set @x=1
select *, IDENTITY(INT,1,1) AS rn INTO #temp from ProximoService where FechaService=@fecha
while @x <= (select COUNT(*) from #temp)
begin
select @nombre=Cliente,@id=UnidadEntregadaID from #temp where rn=@x
Select @Mensaje = 'Proximo Service: ' + CHAR(13) + CHAR(10) + CHAR(13) + CHAR(10) +
'Cliente: ' + @nombre + CHAR(13) + CHAR(10) + CHAR(13) + CHAR(10) +
'ID Entregada: ' + @id
Exec msdb.dbo.sp_send_dbmail @profile_name='Profile de prueba',
@recipients = "
[email protected]",
@subject = "Fecha Service",
@body = @Mensaje
Update ProximoService
Set FechaService=DATEADD(DAY,10,FechaService)
where UnidadEntregadaID=@id
set @x=@x+1
end
y el error es el siguiente
Msg 2714, Level 16, State 6, Line 8
There is already an object named '#temp' in the database