FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Informe de QuickReport en Ejecucion
Estoy creando un informe de QuickReport 3.0.9 en Ejecucion en el cual voy introduciendo los campos que me convienen en cada momento con TQRDBText en un TQRBand-Detail y el titulo del campo con un TQRLabel en un TQRBand-Column Header . El problema es que solo veo el titulo del informe pero no aparecen ni los titulos de los campos ni el contenido.
El codigo seria algo asi: begin columnas := Grid.Columns.Count; SetLength(Etiquetas, columnas); SetLength(Campos, columnas); For ite := 0 to columnas - 1 do begin Etiquetas[ite] := TQRLabel.Create(Q2Cap); Campos[ite] := TQRDBText.Create(Q2Detalle); //Etiquetas Etiquetas[ite] := QRLabel1; Etiquetas[ite].Caption := Grid.Columns[ite].Title.Caption; Etiquetas[ite].Width := Grid.Columns[ite].Field.DataSize; //Etiquetas[ite].Top := QRLabel1.Top; Etiquetas[ite].Transparent := false; //Etiquetas[ite].Enabled := True; //Etiquetas[ite].Frame := QRLabel1.Frame; //Etiquetas[ite].Height := QRLabel1.Height; //Etiquetas[ite].Font := QRLabel1.Font; //Etiquetas[ite].Size := QRLabel1.Size; If ite > 0 then Etiquetas[ite].Left := Etiquetas[ite-1].Left + Etiquetas[ite-1].Width + 20 else Etiquetas[ite].Left := 0; //Campos Campos[ite] := QRDBText1; Campos[ite].DataSet := DM.QInforme; Campos[ite].DataField := DM.QInforme.FieldList.Fields[ite].FieldName; Campos[ite].Width := Etiquetas[ite].Width; //Campos[ite].Top := 0; Campos[ite].Left := Etiquetas[ite].Left; Campos[ite].Visible := true; Campos[ite].Transparent := False; end; DM.QInforme.Active:=True; end; ¿Sabeis que falta o donde esta el error? Gracias |
#2
|
||||
|
||||
¿Esta Abierto el dataset?? Si es un query, ¿Devuelve algo? Lo que te sale es debido a que el dataset no contiene nada..
__________________
AKA "El animalito" ||Cordobés a mucha honra|| Última edición por AzidRain fecha: 05-01-2007 a las 06:39:41. |
#3
|
||||
|
||||
Veo 2 errores:
O sea, primero en etiquetas[ite] creas un qrlabel, y después dices etiquetas[ite]:= qrlabel1... pues te acabas de cargar la etiqueta que creaste antes. Bueno en realidad no, la etiqueta que creaste al principio, se quedará en memoria, pero no podrás acceder a ella para asignarle las propiedades. cuando a continuación haces: realmente estas cambiando las propiedades al QRLabel1 no al que creaste anteriormente!!!. Por otra parte no veo que asignes el Parent de los controles que creas en ejecución, así que no aparecen jamás en la banda detalle. Busca por el foro, hay mucho código sobre eso. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#4
|
|||
|
|||
Gracias por las rapidas respuestas. Aunque os comento:
El dataset esta abierto y contiene varios registros. Lo visualizo antes en un DBGrid.
Tienes razon, pero fue la ultima prueba que hice, realmente el codigo era sin la ultima linea, pero probe eso simplemente para comprobar que al menos visualizaba algo en ese QRLabel ya creado en vista diseño. En cuanto al parent, ¿No se lo estoy asignando en el create? TQRLabel.Create(Q2Cap)Mirare en los foros aunque la verdad es que no encontre nada que me ayudara. Gracias de nuevo. |
#5
|
||||
|
||||
No. Lo que asignas es el AOwner (quien destruirá el componente), pero no dices donde se ha de situar ese qrLabel (sobre el Quickreport, sobre la banda cabecera, sobre la banda detalle....).
Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#6
|
|||
|
|||
Jojo, ahora si. Que burro. Convencido que era el parent lo que le asignaba en el creador. Perfecto, millones de gracias a todos.
Seguimos por aqui. |
#7
|
||||
|
||||
Te paso un código que escribí con inestimable colaboración del foro.
Genera cualquier reporte con la llamada a la función generarlistado. El origen de los datos es una query , cualquiera. Para utilizarlo, descomprime los archivos y añadelos a tu proyecto. Desde donde quieras imprimir llama a la función con los parametros requeridos. Espero que te sea de ayuda. Un saludo
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino - |
#8
|
|||
|
|||
Ok, probare tu solucion aunque ya me funciona. Gracias.
|
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
problemas en un informe con QuickReport | Goyo | SQL | 3 | 29-09-2006 17:52:48 |
No imprimir informe | vicvil | Impresión | 1 | 30-07-2005 01:02:18 |
Totales en informe | Asshole | Impresión | 1 | 16-06-2005 15:33:05 |
Enviar parametros a un informe (QuickReport) | Lionel | Impresión | 1 | 08-06-2004 15:25:45 |
Ayuda con informe en QR | mosorio | Varios | 2 | 23-07-2003 19:47:09 |
|