MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   Trabajar con rangos de hora (foro/showthread.php?t=38444)

jtristan 25/08/10 12:28:16

Trabajar con rangos de hora
 
Hola,

¿hay alguna función que me permita teniendo una fecha de inicio y otra de fin, saber si una tercera que le paso está dentro de esas dos?.
Por ejemplo, si tengo el turno uno que va desde las 22:00:00 hasta las 06:00:00 y quiero saber si la hora 23:00:05 está incluido o no.

Muchas gracias.
Un saludo.

Chan 25/08/10 14:59:10

no se si existe..... sino, siempre puedes crearte un include con un form que te haga la comprobación y añades ese include a tus programas

if fecha_inicio <= fecha_variable y fecha variable <= fecha_fin
dentro_rango = si
else
dentro_rango = no
endif





jtristan 26/08/10 05:06:57

Hola Chan,

eso es lo primero que pensé. Pero por algún motivo no funciona correctamente. Imagino, que lo interpreta como string, y el encontrarse con el caso de 22:00 a 06:00 pues lógicamente las condiciones no se cumplen.
También he probado con un between pero estoy en el mismo caso.
Por eso, necesitaría una función que si interprete esos valores como tiempo y no como string.

Muchas gracias.

jtristan 26/08/10 06:14:42

Hola Chan,

eso es lo primero que pensé. Pero por algún motivo no funciona correctamente. Imagino, que lo interpreta como string, y el encontrarse con el caso de 22:00 a 06:00 pues lógicamente las condiciones no se cumplen.
También he probado con un between pero estoy en el mismo caso.
Por eso, necesitaría una función que si interprete esos valores como tiempo y no como string.

Muchas gracias.

jtristan 26/08/10 10:31:41

Me he dado cuenta de que no es posible hacerlo. En algún momento tendriamos que indicar la hora para la que nosotros empezamos el día. De esta forma, si podriamos concatener a la fecha actual, la hora y si la hora se encuentra entre las 24:00 y el comienzo del día, concatenar la fecha del día siguiente a la hora.
De esta forma si podríamos realizar la comparación.

Chan 26/08/10 22:39:13

y si añades el timestamp completo?

DavidXD_XD 26/08/10 23:24:16

Hola, yo realizaria un artificio, por ejm. si quieres una hora entre las 22Hrs y las 6hrs es obvio que no funcionara :eek: , debido a que 22 es mayor que 6 pero 22 pertenece al dia anterior, entonces,


La otra forma es, como vi en el ultimo comentario y creo q es muy viable, el concatenar la fecha y la hora ... supongamos q las 6Hrs pertenezcan al dia de hoy, entonces estarias comparando esto

20100825220000 y 20100826060000

Espero te ayude ... :D

jtristan 27/08/10 05:03:51

Mi problema era no tener el dato en la tabla de cuando comienza el día. Ahora vamos a almacenarlo en una tabla aparte, con lo cual ya si que puedo realizar la concatenación con la fecha o la forma que me propones.
La culpa fue mia por obcecarme en tratar de trabajar a nivel de horas, en vez de strings, sin darme cuenta de que no había solución con la información que tenía.

Muchas gracias.
Un saludo.


Husos Horarios son GMT. La hora en este momento es 23:45:33.

www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web