Visual Basic - Error raro con una consulta entre fechas

Life is soft - evento anual de software empresarial
   
Vista:

Error raro con una consulta entre fechas

Publicado por Dani (18 intervenciones) el 22/10/2015 12:58:18
Buenas a todos, estoy programando en Visual con una base de datos Access... pues bien, cuando ejecuto una consulta entre fechas con esta sentencia:

1
"SELECT es.idES as idRegistro, es.fecha as fecha, es.numEntrada as numEntrada, t.descripcion as tipo, es.procedencia as procedencia, es.remitente as remitente, es.asunto as asunto FROM entradas_salidas es INNER JOIN tipo_documento_es t ON es.idTipoDoc = t.idTipo WHERE (es.tipo = 'ENTRADA') AND (es.fecha >= #12/10/2015# AND es.fecha <= #21/10/2015#) ORDER BY idES ASC"

Me dice que no hay registros, pero si el rango de fechas es por ejemplo del 14/10/2015 a 21/10/2015 si aparecen.... y los registros que deben aparecer son del dia 19 :-(

¿algo se me escapa?

gracias!!
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
Imágen de perfil de Wilfredo Patricio Castillo

Error raro con una consulta entre fechas

Prueba quitando los paréntesis en la sentencia select y en la parte del order by que sea es.IdEs

Saludos cordiales
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

Error raro con una consulta entre fechas

Publicado por Dani (18 intervenciones) el 22/10/2015 21:42:38
Gracias por la respuesta, probé pero sigue haciendo lo mismo. Es muy raro ya que hay fechas que no lo hace, y otras que si.
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
Imágen de perfil de Wilfredo Patricio Castillo

Error raro con una consulta entre fechas

Estás seguro que los campos fechas son de tipo fecha o de tipo varchar?, ya que no debería haber problema para filtrarlo.

Caso contrario envíame un mail para echarle una mirada que debe ser algo simple de solucionar.

Saludos cordiales
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

Error raro con una consulta entre fechas

Publicado por Dani (18 intervenciones) el 23/10/2015 00:30:47
es tipo fecha... es mas, en visual el textbox que captura la fecha, lo converto a date:

1
2
Dim fecha1 As Date = Convert.ToDateTime(txtFiltroFecha1.Text)
Dim fecha2 As Date = Convert.ToDateTime(txtFiltroFecha2.Text)
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

Error raro con una consulta entre fechas

Publicado por El Sin Nombre nthaxor@hotmail.com (225 intervenciones) el 24/10/2015 00:22:08
Dos Sugerencias:
Haz intentado ejecutar la consulta directamente en Access?

Reemplaza:
AND (es.fecha >= #12/10/2015# AND es.fecha <= #21/10/2015#) ORDER BY idES ASC"

Por:
AND (es.fecha BETWEEN #12/10/2015# AND #21/10/2015#) ORDER BY idES ASC
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

Error raro con una consulta entre fechas

Publicado por Dani (18 intervenciones) el 25/10/2015 15:06:38
que va, el mismo efecto.. que desesperación
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

Error raro con una consulta entre fechas

Publicado por Marcelo nthaxor@hotmail.com (225 intervenciones) el 26/10/2015 19:17:48
Como esta definida la columna Fecha en la tabla ES?
Que tipo es y que formato tiene?
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

Error raro con una consulta entre fechas

Publicado por Dani (18 intervenciones) el 27/10/2015 13:40:28
es de tipo fecha, en concreto formato fecha corta
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

Error raro con una consulta entre fechas

Publicado por Dani (18 intervenciones) el 29/10/2015 10:54:11
lo que si he podido llegar a la conclusion que por ejemplo, cualquier fecha que sea el dia 12 del mes, no devuelve nada, pero si por ejemplo es el 14 si, y hay elementos que mostrar (los mismos si eliges 12 o 14)
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

Error raro con una consulta entre fechas

Publicado por Marcelo nthaxor@hotmail.com (225 intervenciones) el 29/10/2015 17:23:28
Si en tu SELECT quitases el primer condicional (es.Tipo = 'ENTRADA') y dejases solo el de las fechas. Aun recibes el mismo resultado?
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
Imágen de perfil de Mauricio

Error raro con una consulta entre fechas

Publicado por Mauricio (1 intervención) el 29/10/2015 17:32:33
Tambièn toma en cuenta los parentesis porque si no no te va a saltar de ninguna forma.
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

Error raro con una consulta entre fechas

Publicado por Dani (18 intervenciones) el 30/10/2015 13:13:59
El tema del condicional no influye, porque usando otra condicion con un solo condicional me vuelve a pasar, si la fecha es del 15/11/2015 si devuelve, pero si le indico el 12/11/2015 nada, habiendo cosas que devolver.

1
"SELECT a.idEvento as idEvento, a.fecha as fecha, a.hora as hora, a.tituloEvento as titulo, t.descripcion as tipo, a.caracter as caracter FROM entrada_agenda a INNER JOIN tipo_entrada_agenda t ON a.idTipo = t.idTipo WHERE a.fecha = #12/11/2015#"
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

Error raro con una consulta entre fechas

Publicado por Dani (18 intervenciones) el 03/11/2015 11:24:11
Hola, encontre el problema, para quien le pase tambien, es el lio de siempre del formato de fecha americano (mm/dd/yyyy). Resulta que Access "visualmente" te lo muestra en dd/mm/yyyy pero las consultas SQL lo reconoce como mm/dd/yyyy, así que me trataba el mes como dia y el dia como mes.

Me parece una chapuza por parte de Access.

Así que cada vez que hago una condicional con fechas, añado esto Format(#3/11/2015#,"mm/dd/yyyy")
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar