Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Impresión
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 15-05-2007
mez mez is offline
Miembro
 
Registrado: feb 2006
Posts: 11
Poder: 0
mez Va por buen camino
algo como maestro-detalle, pero diferente

Que tal,
he buscado en el foro y no he pillado algo parecido a mi problema, aquii va:

tengo un QReport (delphi 5) donde debo desplegar los datos de una persona (tabla persona) y para cada persona listar todos sus hijos, los hijos tambien estan en la tabla persona, pero tienen un campo donde indica quien es su padre, por lo tanto pongamos que los hijos estan en una query SQLHijos.

pues bien, al hacerlo con detail, subdetail, me aparece solo el ultimo hijo, como si la banda subdetail se estuviera escribiendo siempre encima. estoy usando beforeprint para manejarlo con printband cuando quiero terminar de recorrer el sqlhijos.

alguna idea?

gracias
Responder Con Cita
  #2  
Antiguo 15-05-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola mez
Tal vez indicandonos los nombres de los campos de esa tabla y como mas o menos esta conformada.
Ademas indicar como muestras la consulta, es sql o directa a tabla, me parece entender? pero no estoy totalmente claro.
Saludos
Responder Con Cita
  #3  
Antiguo 15-05-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Código Delphi [-]
Query1.close;
Query1.sql.text:= 'Selecte * from persona where persona.padre= campo';
query1.open;
Una sentencia sql sencilla, no?
Saludos
Responder Con Cita
  #4  
Antiguo 16-05-2007
mez mez is offline
Miembro
 
Registrado: feb 2006
Posts: 11
Poder: 0
mez Va por buen camino
En la banda QRSubDetail estan los datos del padre:


Código Delphi [-]procedure TqrReportePersonal.QRSubDetailNeedData(Sender: TObject; var MoreData: Boolean);
begin
MoreData:=(not qPersona.Eof);
if MoreData then
begin
qrLabel1.Caption:=qPersona.FieldByName('PERSONA_NOMBRE').AsString;
.
.
.
end;
if qPersona.FieldByName('PERSONA_TIPO').AsString='P' then //ES "PADRE"
begin
qHijos.ParamByName('padre').asstring :=qPersona.FieldByName('PERSONA_CLAVE').AsString;
qHijos.Open;
end;
end;




En la banda ChildBand (hija de la anterior) estaria el detalle, es decir, los hijos:


Código Delphi [-]
procedure TqrReportePersonal.ChildBandBeforePrint(Sender: TQRCustomBand; var PrintBand: Boolean);
begin
while not qHijos.eof do
begin
qrLabel1.Caption:=qHijos.FieldByName('PERSONA_NOMBRE').AsString;
.
.
.
qHijos.Next;
PrintBand:=true;
end;
PrintBand:=true;
qPersona.Next;
inc(cont);
qHijos.Close;
end;





El tema es que, los datos del padre me aparecen bien, pero los datos de hijo, siempre me aparece sólo el último de ellos, como si en la Banda Child se estuviera escribiendo sobre la misma linea. Al hacer seguimiento recorre todos los hijos, pero solo despliega el último.

alguna idea?
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como hacere cambios maestro detalle jandres Varios 7 16-01-2007 19:40:59
Un buscador algo diferente gluglu La Taberna 7 07-11-2006 03:01:57
como se manajen las transacciones en maestro/detalle mysql. Arturo MySQL 3 08-04-2006 00:08:42
Algo como LENG pero en SQL... ELINK SQL 4 27-07-2005 17:49:39
ClientDataSet Maestro Detalle como los relaciono ASAPLTDA Conexión con bases de datos 1 29-01-2005 23:07:48


La franja horaria es GMT +2. Ahora son las 08:31:02.


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
Copyright 1996-2007 Club Delphi