Spanish [Solucionado] ¿Como obtengo DIAS tras comparar dos fechas?

Sergio Castellari

Active Member
Licensed User
Hola,
Suponiendo el siguiente caso:
B4X:
nVence = DateTime.DateParse(DateTime.Date(row(1)))          'Obtengo SOLO la Fecha (DateParse) del Vencimiento
nHoy   = DateTime.DateParse(DateTime.Date(DateTime.Now))    'Obtengo SOLO la Fecha actual
nDias  = nVence - nHoy                                      'Obtengo DIAS del vencimiento
nDias me devuelve TICKS (o eso es lo que creo Yo) y lo que necesito es obtener los DIAS de diferencia entre estas fechas....
 

Gabino A. de la Gala

Well-Known Member
Licensed User
Longtime User
Hola,
Suponiendo el siguiente caso:
B4X:
nVence = DateTime.DateParse(DateTime.Date(row(1)))          'Obtengo SOLO la Fecha (DateParse) del Vencimiento
nHoy   = DateTime.DateParse(DateTime.Date(DateTime.Now))    'Obtengo SOLO la Fecha actual
nDias  = nVence - nHoy                                      'Obtengo DIAS del vencimiento
nDias me devuelve TICKS (o eso es lo que creo Yo) y lo que necesito es obtener los DIAS de diferencia entre estas fechas....
Si row(1) viene en ticks yo creo que así podrías hacerlo cogiendo la parte entera (la verdad es que no lo he probado) :
B4X:
NDias = (Datetime.Now - row(1)) / DateTime.TicksPerDay
 

Sergio Castellari

Active Member
Licensed User
[QUOTE = "Gabino A. de la Gala, post: 843789, miembro: 47226"]
Si row (1) viene en ticks yo creo que así podrías hacerlo cogiendo la parte entera (la verdad es que no lo he probado):
[CÓDIGO]
NDias = (Datetime.Now - fila (1)) / DateTime.TicksPerDay
[/CÓDIGO]
[/CITA]
Hola @Gabino A. de la Gala !!!
Gracias!!!
Asi fue como lo implemente en principio:
B4X:
nVence = DateTime.DateParse(DateTime.Date(row(1)))          'Obtengo SOLO la Fecha (DateParse) del Vencimient
nHoy   = DateTime.DateParse(DateTime.Date(DateTime.Now))    'Obtengo SOLO la Fecha actual
 nDias  = (nVence - nHoy) / DateTime.TicksPerDay             'Obtengo DIAS del vencimiento
[/CÓDIGO]
Pero me recomendaron hacerlo asi:
[CODE=b4x]Dim p As Period = DateUtils.PeriodBetweenInDays(DateTime.DateParse("8/12/2021"), DateTime.Now)
    Log(p.Days)
    Log(p.Hours)
    Log(p.Minutes)[code]

Creo que de las dos forma funciona, aunque esta ultima tiene mas opciones (Horas y minutos)

Nuevamente gracias!!!
 
Top