Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Impresión (https://www.clubdelphi.com/foros/forumdisplay.php?f=4)
-   -   Ocultar o mostar un DataText en Rave Report... (https://www.clubdelphi.com/foros/showthread.php?t=75115)

Jose Roman 29-07-2011 14:29:14

Ocultar o mostar un DataText en Rave Report...
 
Hola a todos,

Tengo Rave Reports 7.5 BE, tengo un informe que se muestra de la siguiente manera:

JUAN 2533
JUAN 2677
JUAN 2888
JOSE 2599

pero mi cliente desea que aparezca asi:

JUAN 2533
.....2677
.....2888
JOSE 2599

Alguien sabe como realizar esto??? Gracias de antemano.

Nota: Los puntos que aparecen en el listado que desea el cliente no van, solo los puse para que se mostrara alineado, no sabia como hacerlo de otra manera.

Loviedo 29-07-2011 16:19:13

Una solución puede ser con un TClientDataSet, que lo utilizaremos como tabla temporal.
Nos traemos a un Query la consulta que deseamos mostrar en el report, lo recorremos mediante un bucle y vamos agregando los registros al TClientDataSet, evitando repetir los campos iguales. Luego unimos el TClientdataset al Rave y listo.
Saludos.

Jose Roman 01-08-2011 23:46:11

ok, gracias por ayudarme pero te comento que por fin se me ilumino el cerebro, aquí les dejo la solución para alguien en el futuro:
  1. Colocar un Text Component con su propiedad visible en FALSE y su propiedad TEXT vacia
  2. En el evento DataBand seleccionar OnBeforePrint y escribir:
    Código Delphi [-]
    if (DataText1.Text = VarText.Text) then DataText1.Visible := False; 
    else DataText1.Visible := True;
    end if; 
    VarText.Text := DataText1.Text;

Listo ahora no mostrara los registros repetidos.

Loviedo 02-08-2011 14:57:05

No se si será problema de versión, pero lo he probado y no me funciona.
Saludos.

Jose Roman 02-08-2011 15:00:04

mm, cuentame que estas haciendo??

Loviedo 02-08-2011 18:05:32

El tema lo he resuelto de la siguiente manera:
He colocado un DataText1 en la cabecera del Report. He creado un Parametro 'Var1'. En su DataField he puesto

Param.Var1.
En el evento OnBeforePrint del Datatext2:
Código Delphi [-]
    if (DataText2.Text = RaveProject.GetParam ('Var1')) then DataText2.Visible := False; 
    else DataText2.Visible := True;
    end if;
En el evento OnAfterPrint del Datatext2:
Código Delphi [-]
    RaveProject.SetParam ('Var1',DataText2.Text);
.
Me sigue gustando más, imprimir con la tabla ya creada.
Saludos.


La franja horaria es GMT +2. Ahora son las 04:57:33.

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