Ver Mensaje Individual
  #8 (permalink)  
Antiguo 16/08/2012, 09:58
Gaug
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 15 años, 6 meses
Puntos: 1
Respuesta: Diferencia de fechas y horas

Antes que nada muchas gracias por tu respuesta, adapte tu código al anterior y me dio esto:

Código SQL:
Ver original
  1. ALTER FUNCTION [dbo].[HoraInicialINT]
  2.  
  3. (   @HISAP2 nvarchar(10),
  4.     @HFSAP2 nvarchar(10),
  5.     @FISAP DateTIME ,
  6.     @FFSAP DATEtime
  7.      )
  8.  
  9. RETURNS nvarchar(10)
  10. AS
  11. BEGIN
  12.  
  13. -- COnversion de horaS
  14.        
  15. SET @hisap2 = RIGHT('0000' + @hisap2, 4)
  16. SET @HFSAP2 = RIGHT('0000' + @HFSAP2, 4)
  17.  
  18. SET @FISAP = CAST( CONVERT(VARCHAR, @fisap,112)
  19.              + ' '
  20.              + SUBSTRING(@hisap2,1,2)
  21.              + ':'
  22.              + SUBSTRING(@HISAP2,3,2)  AS DATETIME)
  23.  
  24. SET @FFSAP = CAST( CONVERT(VARCHAR, @FFSAP,112)
  25.              + ' '
  26.              + SUBSTRING(@HFSAP2,1,2)
  27.              + ':'
  28.              + SUBSTRING(@HFSAP2,3,2)  AS DATETIME)
  29.  
  30.   RETURN CAST(CAST((DATEDIFF(MINUTE,0, @FFSAP) -
  31.                   DATEDIFF(MINUTE,0, @FISAP))/60.00 AS DECIMAL(9,6)) AS VARCHAR)
  32. END
  33. GO

Pero al usar el siguiente query:

Código SQL:
Ver original
  1. SELECT dbo.[HORAINICIALINT]('20120710' ,'1240', '20120712', '1600') [DIFERENCIA EN HRAS]

Me devuelve este error:

The conversion of a varchar data type to a datetime data type resulted in an out-of-range value.

¿Alguna idea de que esté mal en la función?

Saludos y gracias por la ayuda.