Crear consulta de modificación access

Tengo una tabla con muchos campos, entre ellos fecha de alta y fecha de baja. Sirve para registrar las altas y bajas de los trabajadores de las diferentes empresas.
Yo quería generar una consulta que me mostrase las modificaciones que se vayan realizando diariamente. Es decir, si hoy es 18/06/2020 y yo registro una alta con fecha de ayer 17/06/2020, si realizo una consulta con fecha actual no me aparecería. Al igual pasaría con las bajas.
¿Cómo puedo hacerla entonces?

1 Respuesta

Respuesta
2

En la consulta, debajo del campo FechaAlta, en la casilla Criterios puedes poner

Date()-1

Es decir, te mostrará los registros con fecha de alta de un día antes de la fecha del sistema.

Pero cuando grabe la baja también quiero que me aparezca.

No sé si lo he entendido, así que voy a suponer. Supongamos que tengo la tabla Empleados

Si construyo una consulta como

Cuando la abro me muestra todos aquellos registros en que la fecha de alta o la fecha de baja son del día anterior a la del sistema

No sé si era eso a lo que te refieres. De todas formas he de reconocer que no me gustan las consultas, ya que opino que el lenguaje SQL es infinitamente menos versátil que el VB. Por eso, ya que en algún lugar tienes que poner los datos para "rellenar" la tabla, si tengo el formulario Empleados, aunque podría ser en cualquier otro, al que le añado un combinado Altas para elegir la fecha de alta y otro Bajas para lo correspondiente

Selecciono una fecha en Altas

Es correcto lo que dices. Pero el problema está en que no siempre va a ser el día antes a la fecha del sistema. Puede ser un día, el mismo día, dos, tres, cinco días o incluso una semana después, cuando se graben esos registros.

Perdón le he dado sin querer a enviar

y

Pobre Hanna, la contratas un día y la despides al siguiente. No tienes corazón

Por el contrario, si elijo una fecha de baja

Se me parte el corazón al ver a la pobre Hanna.

El código de los combinados es

Private Sub Altas_AfterUpdate()
Me.RecordSource = "select * from empleados where fechaalta=forms!empleados!altas"
End Sub
Private Sub Bajas_AfterUpdate()
Me.RecordSource = "select * from empleados where fechabaja=forms!empleados!bajas"
End Sub

Claro pero no todos van a tener la misma fecha de alta ni de baja. Entonces lo suyo sería según las modificaciones.

Ahora si que no entiendo nada. Los empleados tendrán una fecha de alta y otra de baja, una fecha de alta y hasta que no los despidas no tendrán fecha de baja, pero en el momento que eso suceda, tendrás que "rellenar" en algún lado la fecha de baja.

También podrías poner, por ejemplo, un botón de forma que al pulsarlo te pidiera un intervalo de fechas

me.recordsource="select * from empleados where fechaalta between [Escriba una fecha inicial] and [Escriba una fecha final]"

De forma que cuando lo pulsaras te pedirá esas dos fechas, las escribe y te muestra sólo aquellos registro con fecha de alta comprendida entre las que has escrito.

En fin, si pudieras concretar más, o poner alguna imagen me podría imaginar que es lo que quieres.

Lo que quiero es que cada vez que se escriba algo o se modifiquen las casillas FALTA y FBAJA cambie la FECHAREGISTRO a la actual.

Entonces basta con poner, en el evento Después de actualizar un procedimiento de evento y entre Private Sub y End Sub, del cuadro de texto FAlta

Fecharegistro=Date()

Lo mismo para FBaja

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas