Crystal Report - selectionformula entre dos fecha

 
Vista:

selectionformula entre dos fecha

Publicado por denisin (6 intervenciones) el 27/09/2005 22:45:20
hola que tal
necesito una ayudita en lo siguiente
necesito hacer un reporte sobre las personas que deben presentarse a determinado lugar en un rango de fecha es decir por ejmplo del 1/09/2005 al 30/09/2005
para esto hice mi reporte en crystal report y hice una forma en vb donde coloque un txbox para la fecha inicial y un txtbox para la fecha final.
en el boton d ver repore puso el siguiente codigo
Private Sub Cmdvreporte_Click()
Dim fechainic As Date
Dim fechafinal As Date
fechainic = MaskEdBox1.Text
fechafinal = MaskEdBox2.Text
CrystalReport2.ReportFileName = App.Path & "\reporte2.rpt"
'CrystalReport2.DataFiles(0) = App.Path & "\CONTROL DE TARJETA CELESTE.mdb"
CrystalReport2.DiscardSavedData = True
CrystalReport2.SelectionFormula = "{T_Generales.FechaPresentacion}> date (" & Year(fechainic) & "," & Month(fechainic) & "," & Day(fechainic) & ") And {T_Generales.FechaPresentacion}< Date(" & Year(fechafinal) & "," & Month(fechafinal) & "," & Day(fechafinal) & ")"
CrystalReport2.Action = 1
End Sub
pero me mada un error en formula alguien podria decirme si esta bien escrita la formula y como deberia se si no est abien please 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

RE:selectionformula entre dos fecha

Publicado por Luis Hansel (109 intervenciones) el 08/02/2006 23:30:35
Saludos:

Como decimos en Nicaragua: "Te metistes en camisas de once varas". Estás complicando un problema que es un poco más fácil de resolver.

Para comenzar, yo no usaría al Mask Edit Box para recibir la fecha, es mejor un DTPicker. ¿Qué sucede si escriben la fecha en un formato no esperado por tu programa?

Luego mandaste a Visual Basic que hiciera el trabajo de Crystal Reports. Yo hubiera hecho dos parámetros de tipo Fecha en Crystal y desde ahi usar el Select Expert para delimitar el rango de fechas de los registros en base a los parámetros que hice. De ese modo sólo tendrías que pasar el valor de las fechas desde Visual Basic hacia Crystal Reports.

Ahora bien, suponiendo que lo anterior funciona correctamente, el comando recomendado para hacer fecha una cadena de caracteres es el CDate.

De modo que si decides cambiar de Mask Edit a DTPicker. la solución del paso de parámetros se reduce a:

CrystalReport2.ParameterFields.GetItemByName("<nombre del parámetro de Crystal>").AddCurrentValue CDate(<Nombre del control DTPicker>)

De modo análogo para el segundo parámetro.
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