RE:Tomar día y mes en la fecha
Hola.
Te paso algo de la que uso para trabajar con fechas. Espero te sirva.
Desde Venado Tuerto, un abrazo.
Marcelo Madelon
! Tomar el dia
LOC:DiaActual = DAY(TODAY())
! Tomar el mes
LOC:MesActual = MONTH(Today())
! Tomar el Año
LOC:AnioActual = YEAR(Today())
! En caso de que quieras tomar el valor del mes de una fecha
LOC:MesFecha = MONTH(PAS:FechaNacimiento)
! Forzar dia primero del mes
LOC:FechaDesde = DATE(MONTH(TODAY()),1,YEAR(TODAY()))
! Tomar la decha de la maquina
LOC:FechaHasta = TODAY()
! Controlo Fecha Que no sea mayor a Today() y Muestro en el Message el Valor de Today()
IF LOC:FechaHasta > Today()
Message('Fecha Hasta No Puede Ser Mayor a Fecha Actual......'&format(Today(),@d06b),'Mensaje del Sistema',ICON:Exclamation)
Select(?LOC:FechaHasta)
CYCLE
End
! Calculo Nombre del Día
EXECUTE (LOC:FECHA % 7) + 1
LOC:Dia = 'Domingo'
LOC:Dia = 'Lunes'
LOC:Dia = 'Martes'
LOC:Dia = 'Miércoles'
LOC:Dia = 'Jueves'
LOC:Dia = 'Viernes'
LOC:Dia = 'Sábado'
END
! Otra forma
LOC:DiaSemana = choose((today() %7)+1,'Domingo','Lunes','Martes','Miércoles','Jueves','Viernes','Sábado')
! Si quisieras pasar el vencimiento al lunes en caso de que cayera sabado o domingo, seria:
Case LOC:Dia
OF 'Sábado'
LOC:Fecha += 2
LOC:Dia = 'Lunes'
OF 'Domingo'
LOC:Fecha += 1
LOC:Dia = 'Lunes'
End
! cantidad de dias entre dos fechas. Simplemente restas
LOC:CanDias = Today() - PAS:FechaNacimiento