Hola buenas tardes, espero alguien pueda darme una mano con esto. LLevo dos días intentando de diversas formas pero no llego a lo que necesito.
Escenario: guardo en la base de datos el timestamp cada vez que un repartidor se conecta para recibir pedidos, y de igual manera cuando se desconecta. Luego resto el timestamp de desconeccion al de conexion y me da como resultado la cantidad de milisegundos que estuvo conectado.
Problematica: como transformo eso a horas y minutos para mostrarse a modo informativo al usuario?
Muchas gracias por tomarte el tiempo… Saludos
En Origin data pon el valor que te arroja de la resta.
Gracias Joel por tu respuesta. Fue una de las cosas que intenté pero no me arroja un resultado real.
Te muestro lo que guardo en la BD, lo que hago es sumar los datos del field “Cantidad hs”, a través de un foreach y guardo el resultado en un varible, a esa variable la envio al globalformater tal cual me comentas vos, y el resultado obtenido es de una cantidad de horas, minutos y segundos que no corresponde. Adjunto las imagenes por si son de ayuda. De nuevo gracias por el aporte. Saludos
Lo que se me ocurre entonces sería…
- La resta entre Time desconectado - Time conectado
- El valor que salga de esta resta lo divides entre 3600000 (1 hora en milisegundos)
Ya con esto tendrías las horas transcurridas en ese intervalo de tiempo; el primer registro que tienes en la base, haciendo esa operación que te comento, da como resultado 0.0059986111111111
Eso es porque el tiempo que hay entre Time desconectado y Time conectado fue muy poco (21 segundos) y como lo esta convirtiendo a horas por eso sale un numero tan grande. Sin embargo si son periodos de tiempo más grande te saldrían resultados algo así: 20.73201305555556 (ósea 21 horas redondeándolo)
Nuevamente gracias Joel. Pero justamente ese sería un problema, ya que necesito mostrarle el tiempo al usuario en el formato hh:mm:ss según corresponda.