Ver la Versión Completa : Reporte Master/Detail
panuweb
17-08-2007, 01:11:54
Hola
He realizado un reporte de tipo master / detail como lo esplica en uno de los tutoriales de la página de quick report.
El problema es que, el ejemplo, utiliza el componente Ttable, y no puedo modificar la consulta para restingir los registros devueltos.
La idea es hacerlo con un Query pero no se cómo. Ya probé de varias formas pero no funciona el master/detail.
Si alguien me puede ayudar.
Saludos a todos.
BlueSteel
17-08-2007, 02:09:08
Hola panuweb
primero que nada, podrias indicar en que version de delphi y con que motor de base de datos estan trabajando...
segundo.. dices que tienes algo listo.. podrias indicar como lo hicistes...
yo he realizado unos cuantos master - detail.. y para eso he necesitado usar 2 Query...
1 Query - > Maestro -> Clientes
1 Query -> Detalle -> Pedidos
el QReport debe tener a lo menos 2 bandas
1 banda -> Detail
1 banda -> SubDetail
el Reporte debera estar enlazado al Query 1 -> Clientes
en el evento onActivate de tu informe deberas poner la sentencia de filtrado de tu query...
Query1.Close;
Query1.Sql.Clear;
Query1.Sql.Add('Select * From Clientes');
Query1.Open
en el evento BeforePrint de la banda SubDetail deberas poner algo así
Query2.Close;
Query2.Sql.Clear;
Query2.Sql.Add('Select * From Pedidos');
Query2.Sql.Add('Where Codigo_Cliente=: Variable_Paso ');
Query2.Params[0].AsString := Query1['Codigo_Cliente'];
Query2.Open;
y con eso deberias tener.. puede que algo no funcione.. pero lo hice de memoria... y tambien depende del motor de base de datos.. (puede que varie un poquito la sentencia sql)
Gracias por el dato BlueSteel!!!
Yo a las finales me cansé e hice las consultas con los TIBTable en vez de con los TQuery, ya que no supe como realizar el master-detail...
De todas formas, me gustan más las querys, asi que en cuanto tenga tiempo las cambio...
panuweb
19-08-2007, 23:31:46
Gracias BlueSteel
Utilizo delphi 7 y un motor de datos la contrií en acceses pero en este momento no recuerdo el nombre del motor (creo que es algo con ...Jet 4)
y uso componentes de la paleta ADO.
el ejemplo lo saqué de este tutorial
http://www.qusoft.com/getfile.asp?level=0&Filename=QR3TUT.PDF
en el ejemplo utiliza TTable en vez de TQuery
pruebo lo que dices y te cuento.
Saludos
santi33a
20-08-2007, 15:45:54
Hace un tiempo intenté usar Master/Detail pero con Rave, el cual me funcionó, pero un par de detalles que no le encontré solución por lo cual se los planteo a ver que me dicen:
1- ¿ Cómo hacer que la banda Master no me aparezca cuando esta no trae detalles ?
2- Yo uso MS SQL 2000, me fije por el profile de SQL Server que cuando habria el reporte Rave me traia toda la tabla de Detalle al cliente, lo cual no me gusta.
vBulletin v3.6.8, Derechos ©2000-2024, Jelsoft Enterprises Ltd.