Spanish [SOLUCIONADO]comparar hora.

mvera

Active Member
Licensed User
Longtime User
hola tengo una aplicacion que cada x tiempo busca datos nuevos e informa al usuario.
pero me gustaria para mejorar la experiencia de usuario que la aplicacion solo notificara de lunes a domingo de 10 am a 20:30 pm.

se como sacar la hora actual

Dim ahora As String
ahora=DateTime.Now

Log("HORA:"&DateTime.Time(ahora))

pero no que no tengo claro como es decirle si mi hora actual es mayor a las 20:30 a "dormir"

gracias.
 

bgsoft

Well-Known Member
Licensed User
Longtime User
Hola, en el link que te ha dado Gabino tienes la respuesta.
En todo caso te explico un poco como conseguir cosas y quizas así lo veas mas claro.


B4X:
  dim DiaSemana, Hora, Minuto as int

    DiaSemana = DateTime.GetDayOfWeek(DateTime.now) ' dia de la semana  del 1 al 7, *** el 1 es el domingo ***
    Hora = DateTime.GetHour(DateTime.Now) ' hora actual de 0 a 23
    Minuto = DateTime.GetMinute(DateTime.Now) ' minuto actual de 0 a 59

Si quieres hacer algo en unas horas determinadas, simplemente compara esas horas y mira si estas en el dia que tu quieres que se haga, trabajando en formatos de 24 horas es facil.


Saludos
 

bgsoft

Well-Known Member
Licensed User
Longtime User
Hola mvera:

Se me olvidó comentarte, que al trabajar con horas, y si en tu pais existe el cambio de horario de verano/invierno, pongas el código para que lo tenga en cuenta, si el código lo estas haciendo en un servicio, ponla en el Create

B4X:
Sub Service_Create
    ' para que se produzca el evento
    ' de cambio de horario de verano/invierno
    DateTime.ListenToExternalTimeChanges

...
...

Saludos
 
Top