Access - Problema con filtrado de reporte con fechas

 
Vista:

Problema con filtrado de reporte con fechas

Publicado por Angela Soto (87 intervenciones) el 08/03/2007 15:33:50
Hola a todos:
Tengo un pequeño formulario con el cual selecciono unas fechas para filtrar un informe. El problema es que no me esta filtrando nada y siempre me saca que no hay fechas para rango seleccionado y en realidad las hay. He revisado mi codigo y no encuentro nada, hago el seguimiento por instrucciones y se vé cuando se pasa de un if inmediatamente al else. El campo por el que estoy filtrando es un campo tipo texto ya que con ella estoy calculando unas fechas y por eso las tengo asi:

Private Sub cmdInforme_Click()

Dim strWHERE As String

strWHERE = "[FechaActual] BETWEEN #" & Format(Me.txtFechaComienzo, "dd/mm/yy") & "# AND #" & Format(Me.txtfechafin, "dd/mm/yy") & "#"

If DCount("FechaActual", "CASO", strWHERE) Then
DoCmd.OpenReport "Reporte_ por_ Fechas", acViewPreview, , strWHERE

Else
MsgBox "No hay datos para el periodo " & vbCrLf & vbCrLf & Space(7) & Me.txtFechaComienzo & " - " & Me.txtfechafin & vbCrLf & vbCrLf & "Por favor verifica las fechas", vbInformation + vbOKOnly, "Sin Datos"
End If


End Sub

Como podré solucionar este problemilla??? Muchas Gracias de antemano.
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

RE:Problema con filtrado de reporte con fechas

Publicado por Chea (1015 intervenciones) el 08/03/2007 15:56:05
El formato de las fechas para las consultas debe ser: mm/dd/yy

Me choca que digas que estás filtrando por un campo tipo texto. Primero porque se trata de fechas y, segundo, porque usas delimitadores de fecha.

Saludos
José Bengoechea Ibaceta
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

RE:Problema con filtrado de reporte con fechas

Publicado por Angela Soto (87 intervenciones) el 08/03/2007 16:27:12
Hola José: Yo ya habia probado cambiando el formato de la fecha y no me funcionó. Y el asunto del campo de fecha sea tipo texto, es por que yo estoy calculando apartir de la fecha que sale del sistema unas fechas limites que me varian apartir de unos plazos que varian dependiendo de los seleccionado en otro campo, los plazo seria de 12 - 24 - 72 para que me solucionen unos problemas y esto lo tengo que calcular con la fecha y dar el calculo en fecha igualmente. Entonces así le dé el mismo formato que maneja la fecha que me coje del sistema no me esta filtrando.
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

RE:Problema con filtrado de reporte con fechas

Publicado por Chea (1015 intervenciones) el 08/03/2007 17:37:18
Sigo sin entender, aunque creo que tienes un lío de concepto con los campos de fecha y los de texto, pero no acabas de explicar qué es lo que haces y no sé decirte dónde está concretamente el errror.

Si tienes un campo delimitado por #, será un campo fecha y si es un campo fecha no lo puedes comparar con un campo de texto, si es que realmente el primero es campo de texto.

Si el primera campo fuera realmente de texto, sobraría delimitarel segundo entre #, pero el resultado nunca sería bueno pues un texto con formato dd/mm/yy se ordenaría de forma alfanumérica y, por ejemplo, el "01/01/2007" estaría antes del "02/01/99". Para ordenar texto el único formato válido sería yyyy/mm/dd, y, sin ordenar correctamente, Between no funciona correctamente.

Conclusión, o usamos dos fechas en formato mm/dd/yy o yyyy/mm/dd, y para eso tenemos que convertir a fecha lo que no lo sea, o usamos dos campos de texto en formato yyyy/mm/dd y para eso debemos convertir a texto lo que no sea.

Si usamos fechas debemos usar # como delimitador, y si usamos texto tendremos que usar " como delimitador.

Saludos
José Bengeochea Ibaceta
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

RE:Problema con filtrado de reporte con fechas

Publicado por Angela Soto (87 intervenciones) el 08/03/2007 20:49:57
Chea: En el codigo que presente este campo FechaActual en la tabla es tipo texto, por que necesitaba descomponer la fecha y asi calcular otra fecha. Y necesito hacer un reporte filtrado por fechas a partir de este campo y haciendolo de la manera como lo expuse de primera no medio. Ya probé quitando el delimitador que me dijiste que lo tenia # y como no es un campo tiempo fecha por eso lo quite según te entendí e igual no me filtra. Me puedes ayudar a solucionar este problemilla??? Muchisimas gracias.
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

RE:Problema con filtrado de reporte con fechas

Publicado por Chea (1015 intervenciones) el 08/03/2007 22:18:29
Podrías convertir el campo fecha así:

strWHERE = dateserial (Right ([FechaActual],2), Mid([FechaActual],4,2),Left([FechaActual],2)) BETWEEN #" & Format(Me.txtFechaComienzo, "mm/dd/yy") & ...

Saludos
José Bengoechea Ibaceta
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

Graciassssssssssssssssssssssssssssssssssssssssssss

Publicado por asgustin (1 intervención) el 06/08/2007 10:21:23
gracias estuve alrededor de 8 horas si poder saber porque no funcionaba el between y gracias a leer tu post me di cuenta que trabaja solo de la siguiente forma yyyy/mm/dd
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