Access - Actualizar fechas en informe

 
Vista:

Actualizar fechas en informe

Publicado por Adrián (2 intervenciones) el 18/07/2017 17:34:05
Hola, muy buenas a todos. Tengo un pequeño problema y espero que alguien pueda echarme un cable.

Tengo una base de datos en Access 2007 para gestionar unos contratos de mantenimiento. Para saber cuando vencen los contratos, tengo creado un informe que me muestra los contratos a los que les quedan 15 días o menos para vencer. Hasta aquí bien.

El problema viene cuando intento hacer que el informe me muestre los vencimientos desde fechas diferentes. Es decir, en vez desde la fecha actual hasta quince días, poner las fechas que yo quiera y que el informe me muestre los contratos que vencen entre esas dos fechas. Para ello, tengo dos etiquetas que me muestran las fechas, y a lado un botón. Al pulsar el botón, pide las dos fechas entre las cuales me debería mostrar los contratos que se acaban entre esas fechas y actualiza las fechas en las etiquetas, pero NO ACTUALIZA LOS DATOS EN EL INFORME.

No sé si hago bien usando Report.Requery o si lo estoy usando correctamente.

Aquí abajo tenéis el código asociado al botón. Si alguien me puede ayudar sería de mucho agradecer, es lo último que me queda para tener terminada la base de datos.

Saludos.


Option Compare Database

Private Sub Cmd_ActualizarFecha_Click()

'Pedimos la fecha de inicio

Dim FechaInicio As String
Dim FechaFin As String

FechaInicio = InputBox("Introduce la fecha de inicio de la consulta", "Filtro por fecha", lblFechaInicio.Caption)
FechaFin = InputBox("Introduce la fecha de finalización de la consulta", "Filtro por fecha", lblFechaInicio.Caption)

'Cargamos la consulta a ejecutar

Ejecutar_Consulta FechaInicio, FechaFin

End Sub

Private Sub Report_Open(Cancel As Integer)

'Cargamos la consulta a ejecutar

Ejecutar_Consulta

End Sub

Private Sub Ejecutar_Consulta(Optional FechaInicio As String, Optional FechaFin As String)

If FechaInicio = "" Then

lblFechaInicio.Caption = Date

FechaInicio = Format(Date, "m/d/yyyy")

Else

lblFechaInicio.Caption = FechaInicio

FechaInicio = Format(CDate(FechaInicio), "m/d/yyyy")

End If

If FechaFin = "" Then

lblFechaFin.Caption = DateAdd("d", 15, Date)

FechaFin = Format(DateAdd("d", 15, Date), "m/d/yyyy")

Else

lblFechaFin.Caption = FechaFin

FechaFin = Format(CDate(FechaFin), "m/d/yyyy")

End If

Report.RecordSource = "SELECT * " & _
"FROM CONTRATOS_MANTENIMIENTO " & _
"WHERE FECHA_FIN_CONTRATO >= #" & FechaInicio & "# And FECHA_FIN_CONTRATO <= #" & FechaFin & "# " & _
"ORDER BY NOMBRE_CLIENTE, FECHA_FIN_CONTRATO;"


Report.Requery


End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Actualizar fechas en informe

Publicado por Adrián (2 intervenciones) el 18/07/2017 18:23:03
Así es, desde el inputbox introduzco las dos fechas entre las cuales el informe debería mostrarme los contratos que vencen.
Gracias, miraré tu archivo y mañana te digo si me ha servido.
Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar