Lectura de fechas en Access

Tengo este inconveniente y no me doy cuenta como resolverlo

Tengo una actividad que desde que se genera el vencimiento de la misma son 72hs hábiles, pero a su vez debe ir cambiando el estado a 48hs y 24 hs

Por ejemplo.

Hoy 16/2 comienza la actividad y vence 72 hs hábiles

Mañana si es día hábil debe cambiar al estado 48hs

Pasado mañana si es día hábil 24hs

Y el 19/2 si es día hábil pasar a actividad en curso.

No me doy cuenta de como hacer la rutina.

Un abrazo

1

1 respuesta

Respuesta

Vamos a suponer que la tabla, y por tanto el formulario tiene un campo llamado Fecha y otro Estado. En el formulario comprueba que el cuadro de texto, en sus Propiedades-Otras-Nombre se llama Fecha.

En las propiedades del cuadro Fecha, en eventos-Después de actualizar, crea un procedimiento de evento y escribe

Private Sub Fecha_AfterUpdate()
Select Case Format([Fecha], "dddd")
Case Is = "sábado", "domingo"
DoCmd.CancelEvent
Case Else
Estado = "72 horas"
End Select
End Sub

Y en las propiedades del formulario, en eventos-al activar el registro crea otro procedimiento de evento y escribe

Private Sub Form_Current()
Select Case Date
Case Is = ([Fecha] + 1) And Format([Fecha] + 1, "dddd") <> "sábado", "domingo"
Estado = "48 horas"
Case Is = ([Fecha] + 1) And Format([Fecha] + 1, "dddd") = "sábado", "domingo"
Estado = "72 horas"
Case Is = ([Fecha] + 2) And Format([Fecha] + 2, "dddd") <> "sábado", "domingo"
Estado = "24 horas"
Case Is = ([Fecha] + 2) And Format([Fecha] + 2, "dddd") = "sábado", "domingo"
Estado = "48 horas"
Case Is = ([Fecha] + 3) And Format([Fecha] + 3, "dddd") <> "sábado", "domingo"
Estado = "actividad en curso"
Case Is = ([Fecha] + 3) And Format([Fecha] + 3, "dddd") = "sábado", "domingo"
Estado = "24 horas"
Case Is = ([Fecha]) + 4 And Format([Fecha] + 4, "dddd") = "domingo"
Estado = "24 horas"
Case Else
Estado = "Actividad en curso"
End Select
End Sub

Me ha costado comprobarlo porque cada vez que le cambiaba la fecha al sistema para probarlo, como el puñetero ordenador se conecta al satélite y este le decía que esa fecha no era correcta, me la cambiaba.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas