RecordSelectionFormula en crystal c#

07/07/2004 - 15:46 por Laura | Informe spam
Hola, tengo el siguiente problema: quiero pasarle entre
los criterios del RecordSelectionFormula una condicion
para una fecha y no me la toma.
Lo que le paso es lo siguiente:
selectFormula = "{Movimientos.Naturaleza} = 'S' and
{Movimientos.Firma} = 'Si' and Movimientos.FechaImpresion}

= " + "'" + dFechaDesde + "'";


rd.RecordSelectionFormula = selectFormula;

el campo dFechaDesde esta definido como:
private DateTime dFechaDesde = Convert.ToDateTime
(DateTime.Today.Date.ToShortDateString ()) ;

y tiene como valor:
dFechaDesde = Convert.ToDateTime (this.txtDesde.Text) ;

El error que me da es:
"Aqui se requiere una fecha-hora"
y si le saco las "'" me dice:
"que el resto no parece ser parte de la formula"

Si a alguien se le ocurre algo estare muy agradecida,
desde ya muchas gracias.
Saludos.
 

Leer las respuestas

#1 Octavio Hernandez
07/07/2004 - 18:53 | Informe spam
Laura,

a) Primero, te falta una lllave de apertura delante del nombre de campo
Movimientos.FechaImpresion.
b) Segundo, las fechas en el lenguaje de fórmulas de Crystal hay que
escribirlas como Date(a, m, d)
c) Tercero, el campoFechaImpresión es DateTime y por eso Crystal te pide un
DateTime en lugar de Date. El constructor sería DateTime(a, m, d, h, n, s).

En resumen, yo pondría la fórmula así:

selectFormula = "{Movimientos.Naturaleza} = 'S' AND " +
"{Movimientos.Firma} = 'Si' AND " +
"{Movimientos.FechaImpresion} >= " +
"DateTime(" + Today.Year.ToString() + "," + Today.Month.ToString() +
"," + Today.Day.ToString() + ",0, 0, 0)";

De manera que la última condición te quede:

{Movimientos.FechaImpresion} >= DateTime(2004,7,7,0,0,0)

Salu2,

Octavio

"Laura" escribió en el mensaje
news:28c9501c46428$bfd47da0$
Hola, tengo el siguiente problema: quiero pasarle entre
los criterios del RecordSelectionFormula una condicion
para una fecha y no me la toma.
Lo que le paso es lo siguiente:
selectFormula = "{Movimientos.Naturaleza} = 'S' and
{Movimientos.Firma} = 'Si' and Movimientos.FechaImpresion}
>= " + "'" + dFechaDesde + "'";
rd.RecordSelectionFormula = selectFormula;

el campo dFechaDesde esta definido como:
private DateTime dFechaDesde = Convert.ToDateTime
(DateTime.Today.Date.ToShortDateString ()) ;

y tiene como valor:
dFechaDesde = Convert.ToDateTime (this.txtDesde.Text) ;

El error que me da es:
"Aqui se requiere una fecha-hora"
y si le saco las "'" me dice:
"que el resto no parece ser parte de la formula"

Si a alguien se le ocurre algo estare muy agradecida,
desde ya muchas gracias.
Saludos.

Preguntas similares