PDA

Ver la Versión Completa : CompositeReport y muuuuuchos TQuickRep


fonx
03-12-2007, 18:42:02
A ver, no se si podré hacerlo o como, con estos informes de delphi ando muy perdido.

Quiero componer varios informes (quiero...bueno no se me ocurre otra forma) lo que pasa es que los informes son del mismo tipo. ¿Se pueden hacer listas dinámicas de informes y luego componerlas en el composite?

Me refiero a ir nodo tras node de la lista, y cada nodo con un informe, todos del mismo tipo de informe ¿Me explico?

De hecho no es un mismo tipo de informe, son dos que se van intercalando. El primer tipo de informe es basicamente un texto largo con una explicación de operaciones realizadas y el segundo tipo son varias columnas de valores numéricos. Estos dos tipos de informes se tienen que intercalar, formando parejas.

Voy a ser un poco más gráfico. Tengo unos instrumentos, y hay que hacerles unos mantenimientos. Despues de los mantenimientos se miden los valores que dan. Esa es la pareja de informes que os digo, primero el texto de los mantenimientos y después los valores numéricos. Y esto tantas veces como instrumentos haya, que es un valor variable, por eso pregunto lo de la lista.

Ando bastante perdido con esto de los Reports de delphi....no hallé todavía ningún hilo que me encienda la bombilla...:(. A ver si alguien puede echarme una mano...gracias por adelantado.

Lepe
03-12-2007, 18:59:31
¿Ya miraste los ejemplos en Delphi\Demos\qr2 y qr3?
No mires el código, céntrate en los quickreports que tiene y cómo están estructurados (bandas, querys, etc).

Lo que pides es un sencillo Maestro-detalle (o al menos eso intuyo).

Dinos las tablas que están involucradas y los campos (sobre todo los campos que relacionen ambas tablas). La cardinalidad de la relación es importante, por ejemplo:

Un instrumento podrá tener varios mantenimientos,
Cada mantenimiento, tendrá cero/un registro de "valores obtenidos".

Saludos

fonx
04-12-2007, 09:01:59
Estoy echándo un ojo a estos ejemplos y son muy interesantes Lepe. Para tu pregunta sobre las tablas te diré:

Hay una tabla q contiene los mantenimientos (campos Memo) de los instrumentos, un mantenimiento por registro y luego n tablas con las mediciones. Quiero poner el/los mantenimientos realizados en el intrumento (puede haber más de uno: cambiar varios componentes, limpiar) y luego poner las mediciones también una medición por registro pero uno o varios registros. Entonces esto se hace para todos los instrumentos uno detras de otro que se hayan tocado en la fecha actual.

Bueno sigo echando un ojo a estos ejemplos :)

Lepe
04-12-2007, 12:24:11
Hay una tabla q contiene los mantenimientos (campos Memo) de los instrumentos, un mantenimiento por registro y luego n tablas con las mediciones. Quiero poner el/los mantenimientos realizados en el intrumento (puede haber más de uno: cambiar varios componentes, limpiar) y luego poner las mediciones también una medición por registro pero uno o varios registros. Entonces esto se hace para todos los instrumentos uno detras de otro que se hayan tocado en la fecha actual.


Si se trata de ponerme a prueba.... me rindo, has ganado tú :D
(primero dices que hay un mantenimiento por instrumento y después que puede haber más de uno:confused:)

Puedes usar varias consultas (Querys) en Maestro-Detalle, por ejemplo:
1 consulta para instrumentos (qryInstrumentos)
1 consulta para mantenimientos (con el qryMantenimientos.DataSource apuntando a qryInstrumentos)
1 consulta para Mediciones (qryMediciones.Datasource apuntando a qryMantenimientos)

Y ahora todos qrDBText de cada consulta en una banda distinta:
- banda pageHeader (todos los qrDBText de Instrumentos)
- banda Detail (todos los qrDBText de Mantenimientos)
- banda SubDetail (todos los qrDBText de Mediciones)

Saludos

fonx
04-12-2007, 14:59:20
Si se trata de ponerme a prueba.... me rindo, has ganado tú :D
(primero dices que hay un mantenimiento por instrumento y después que puede haber más de uno:confused:)



Ya, puede que me explicase regular...pero es q el asunto es un poco complejo. De hecho los informes llevan más cosas q las que he comentado, unas cuantas más q no comenté para no liar más el asunto.

Bueno, te cuento lo que voy a hacer, es la solución que se me ha ocurrido y no se me ocurre otra....listas dinámicas de informes!!! :D. Seguro q se puede hacer más profesionalmente pero no tengo mucho tiempo para meterme un curso de QuickReport....:(

Como tengo varios tipos de informes que además se intercalan unos entre otros mientras haya información lo que hago es según necesite tal tipo de informe lo creo y lo meto en una lista. Cuando acabe solo tengo q recorrer la lista y hacer el composite de los informes q contiene. TatatachaaaaAAAAANNNN!!! :D ¿Os parece tan absurdo como a mi?

NOTA: sea o no sea absurdo es el camino por el que voy...

fonx
11-12-2007, 17:32:43
Bueno, puede que haya cambio de planes así que igual necesito una tormenta de ideas.

En estos momentos tengo un compositereport compuesto por varios tipos diferentes de informes y funciona bien. El problema es que tengo q exportar a PDF el informe completo y parece que el compositereport no soporta los filters para exportar a otros formatos ¿Ideas? No me sirve una impresora virtual de pdf's, mi aplicación no puede necesitar software de terceros para funcionar por muy gratuito que sea...

Googleando por ahí encontré esto en el FAQ del quickreport:

Q. I have an application that saves a series of reports to the QRP format. I would like to print them all at once as a single print job, is that posible?
A. In the QR3RNGD4.ZIP project on our download page, we have a function named CombineQRP() in the qrqrp.pas unit. The function takes a stringlist of QRP filenames and combines them into a single QRP file. You can then load that file into a preview or the TQRPHandler class for viewing or printing. This can be used as an alternative to the CompositeReport.


No se, podría funcionar...es un poco liante, tengo q encontrar esa función y mirarla un poco.

Lepe
12-12-2007, 15:45:31
Si no me equivoco, El quickReport versión professional si tiene la capacidad de exportar a pdf. Podrías actualizar, de todas formas vas a usar QR.

Saludos

fonx
12-12-2007, 15:53:08
Ya, pero tendría q pagarlo, y aquí de momento nadie se va a rascar el bolsillo para tener un qreport pro legal...y la aplicación que estoy haciendo no puede tener cosas "pirata" así q la via qreport pro está un poco complicada.