Visual Basic - Ayuda fechas Vbasic6

Life is soft - evento anual de software empresarial
   
Vista:

Ayuda fechas Vbasic6

Publicado por Salvador (1 intervención) el 01/09/2011 12:52:05
Hola, estoy realizando un pequeño programa para facturación de mi pequeña empresa, todo va ok menos:

Necesito hacer un filtrado de facturas entre dos fechas, y que me lo muestre en un grid a través de un data y a su vez en un informe de Crystalreport, he probado todo tipo de declaraciones y no consigo que vaya preciso, se salta registros o no presenta ninguno, etc, necesito saber tipo de datos en:

- Tipo de campo en BBDD, acces hecha con el Visdata que viene con Vbasic
- Tipo de variable a declarar en Vbasic
- Formula para sql en Vbasic
- Formula para sql en Crystalreport 4 de Vbasic6

En Vbasic tengo esto:

Dim Fecha1 As String
Dim Fecha2 As String
Dim Formula As String
Fecha1 = Str(DTPicker1.Value)
Fecha2 = Str(DTPicker2.Value)
Formula = "Select facturas.* From Facturas where Fecha between'" + Fecha1 + "' and '" + Fecha2 + "'order by fecha"
Data1.RecordSource = Formula
Data1.Refresh

Así cuando pido una sola fecha perfecto, pero cuando busco entre dos valores, se salta algunos registros, si declaro variables como Date y en la BBDD creo el campo como DateTime me dice que no coinciden los tipos.

Al reporte lo llamo así desde Vbasic:

Crpformula = "{Facturas.fecha}>='" + Str(DTPicker1.Value) + "' and {Facturas.fecha}<='" + Str(DTPicker2.Value) + "'"
CrystalReport1.ReportSource = crptReport
CrystalReport1.PrintFileType = crptCrystal
CrystalReport1.SelectionFormula = Crpformula
CrystalReport1.ReportFileName = "c:\facturacion\fechas.rpt"
CrystalReport1.Action = 1

Con estas sentencias todo va ok en ambos casos cuando pido una sola fecha, pero cuando pido entre dos fechas se salta algunos registros.
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

Ayuda fechas Vbasic6

Publicado por alfonso (66 intervenciones) el 05/09/2011 06:36:34
Formula = "SELECT * FROM facturas where FECHA >= #" & Format(DESDE.Value, "mm/dd/yyyy") & "# and FECHA <= #" & Format(HASTA.Value, "mm/dd/yyyy") & "#, order by fecha asc '"

prueba el ejemplo
aunque es para ado y sql pero veamos si puede servir
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