PDA

Ver la Versión Completa : Mi dolor de cabeza


!3d1@n
12-01-2005, 18:14:58
Hola a todos :
Trabajo con Delphi 6 y la base de datos es en Access. A la hora de hacer el reporte necesito mostrar los datos de todos los trabajadores, pero listando estos datos en hojas separadas segun la oficina donde trabajen.
Suponguemos que estos son los valores que tego en mi Base de Datos :
Oficina Nombre Edad Sexo
01 Jose 23 m
02 Ledian 23 m
03 Carlos 40 m
02 Yarmi 19 f
01 Lidia 42 f
01 Tere 63 f
Y lo que busco mostrar es esto :
Oficina : 01
Nombre Edad Sexo
Jose 23 m
Lidia 42 f
Tere 63 f
.
.
.
pag 1
Oficina : 02
Nombre Edad Sexo
Ledian 23 m
Yarmi 19 f
.
.
.
pag 2
Oficina : 03
Nombre Edad Sexo
Carlos 40 m
.
.
.
Pag 3
Lo último que se me a ocurrido es ...
Insertar un TQuickReport con las sgutes bandas :
TitleBand1
ColumnHeaderBand1
DetailBand1
PageFooterBand1Aquí está el código del formulario, tiene dos procedimientos:
procedure TForm1.DetailBand1BeforePrint(Sender: TQRCustomBand;
var PrintBand: Boolean);
begin
if oficina <> ADOQuery1CCOSTO.AsInteger then
begin
oficina := ADOQuery1Oficina.AsInteger;
QuickRep1.NewPage;
end;
end;
procedure TForm1.FormShow(Sender: TObject);
begin
try
ADOQuery1.Open;
ADOQuery1.First;
oficina := ADOQuery1Oficina.AsInteger;
QuickRep1.Preview;
finally
ADOQuery1.Close;
end;
end;
Pero no me salen las bandas TitleBand1 y ColumnHeaderBand1 .
:mad: Por lo que obtengo es esto :
Jose 23 m
Lidia 42 f
Tere 63 f
.
.
.
Pag 2
Ledian 23 m
Yarmi 19 f
.
.
.
Pag 2
Carlos 40 m
.
.
.
Pag 3
Grasias a todos ... y en espera de su respuesta un servidor.

quetzal
13-01-2005, 17:15:01
mmmm,
has tu consulta, y cuando tengas los resultados, lo enlazas a un quickreport
poner QRGroup1 y en expresion le pones por el campo que quieras agrupar en este caso por el de oficinas, y pones una banda de detalles en la cual pones los campos del empleados.

espero haberme dado a entender :)

!3d1@n
19-01-2005, 16:11:01
Hola quetzal :

Pues te cuento que así lo hice. Solo que ... ¿Como hacer que me cambie de página segun ese agrupado?

En espera de su ayuda un fiel servidor.

quetzal
20-01-2005, 21:21:11
puedes checar esto en al beforeprint del la banda donde estas agrupando

if Query1.RecNo>0 Then
QuickRep1.NewPage;