Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Impresión (https://www.clubdelphi.com/foros/forumdisplay.php?f=4)
-   -   Fasteport- cambiar el group by (https://www.clubdelphi.com/foros/showthread.php?t=74947)

Galahad 20-07-2011 11:38:16

Fasteport- cambiar el group by
 
buenas...

Estoy intentando cambiar la expresión de grupo del fastreport así:

Código:

  if (  frx.findcomponent( ccomponente )  as tfrxGroupHeader  ) <> nil then
        (frx.findcomponent( ccomponente ) as tfrxGroupHeader).Condition :=     
          'frxdbdataset1.'+quotedstr(campo);

pero no funciona....
¿ alguién sabe como se puede hacer ?..

saludos....

DarKraZY 20-07-2011 11:45:26

¿Qué quiere decir "no funciona"?

Saludos!

Galahad 20-07-2011 12:08:05

mensaje de error
 
1 Archivos Adjunto(s)
Recibo el mensaje de error siguiente:


Cita:


Error en la expresión frxdbdataset1.'FECHA_SERVICIO'. Identifier expected.

http://www.clubdelphi.com/foros/atta...1&d=1311156297

Chogo 21-07-2011 21:20:54

Cita:

Empezado por Galahad (Mensaje 406900)
buenas...

Estoy intentando cambiar la expresión de grupo del fastreport así:

Código:

  if (  frx.findcomponent( ccomponente )  as tfrxGroupHeader  ) <> nil then
        (frx.findcomponent( ccomponente ) as tfrxGroupHeader).Condition :=     
          'frxdbdataset1.'+quotedstr(campo);

pero no funciona....
¿ alguién sabe como se puede hacer ?..

saludos....

Parece que estas haciendo referencia al nombre del objecto.

La propiedad username del objecto TfrxDBDataset se usa como referencia dentro del objecto de reporte.

creo que lo correcto seria asi:
Código Delphi [-]
 
if (  frx.findcomponent( ccomponente )   as tfrxGroupHeader  ) <> nil then
 (frx.findcomponent( ccomponente ) as tfrxGroupHeader).Condition := frxdbdataset1.username+'.'+quotedstr(campo);

Galahad 22-07-2011 18:29:22

Gracias por contestar, he probado lo que me comentas pero no funciona, me sigue devolviendo el mismo error 'Identifiquer expected'

Al final lo he solucionado con el siguiente código situado en el evento page1beforeprint del fastreport, <_grupo> es una report variable que
asigno desde el programa..

Código:

    if (<_grupo> = '0') then
        groupheader1.condition := '<frxdbdataset1."NUMERO">' else
    if (<_grupo> = '1') then
        groupheader1.condition := '<frxdbdataset1."CLIENTE">' else
    if (<_grupo> = '2') then
        groupheader1.condition := '<frxdbdataset1."FECHA">' else
    if (<_grupo> = '3') then
        groupheader1.condition := '<frxdbdataset1."FECHA_SERVICIO">';

En fin,, mas vale un fin horroroso que un horror sin fin... :D

Saludos...


La franja horaria es GMT +2. Ahora son las 21:33:29.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi