FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#21
|
||||
|
||||
Saludos a todos
Aparentemente el problema se debe a que el qreport contiene datos de dos tablas enlazadas en que una es la Mastersource, por ello había colocado en la banda Title el campo correspondiente al nombre de las personas, que a su vez es el índice y en la banda detail los datos de cada uno de ellos, pudiendo ser que por ello no me funcionan sus sugerencias. ¿Debiera hacer algún procedimiento especial para esta situación? Salu2 y gracias de antemano |
#22
|
||||
|
||||
Saludos nuevamente:
Retomo el hilo por si alguien me puede aportar alguna solución. En mi aplicación desarrollada en Delphi7 y ADO existen dos tablas enlazadas cuyos datos se ingresan y visualizan en el form principal de la aplicación. Necesito imprimir los datos que tengo visibles en la pantalla, habiéndo accedido a ellos a través de dbnavigators para cada tabla. Tengo un qrReport con datos sólo de la tabla esclava y al ejecutar el print o preview se despliegan todos los registros de esta tabla y no los que estoy viendo y que son los que deseo imprimir. He leído completo el manual de QuickReport y he probado distintas estructuras de qrReport siguiendo las sugerencias y aportes de este y otros hilos y no logro dar con la solución. ¿Puede alguien por favor ayudarme con el código necesario para filtrar el registro en pantalla para que aparezca en la impresión? Saludos a todos y muchas gracias |
#23
|
|||
|
|||
¿Que quieres imprimir solo el registro esclavo que estas posicionado, o todos los registros esclavos del registro maestro seleccionado?
|
#24
|
||||
|
||||
Sólo el registro esclavo posicionado en pantalla.
Gracias toni.vi |
#25
|
|||
|
|||
Por tanto, en el dataset del quickreport no pongas nada.
Solo en la banda detalle pon el dataset y los campos que quieras. |
#26
|
||||
|
||||
Eso ya lo he hecho toni.vi y al imprimir me aparece una hoja en blanco. Si dejo activado el dataset se imprime una hoja por cada uno de los registros de la tabla y no sólo el que tengo en pantalla.
Saludos |
#28
|
||||
|
||||
Muchas gracias toni.vi:
Esta tarde pruebo y te cuento. ¿Qué bandas me recomiendas para construir el qreport? He utilizado Título, Detalle y Subdetalle con resultados diferentes, pero siempre sin mostrar lo que yo quiero. Saludos y muchas gracias |
#29
|
|||
|
|||
Lo normal en programación, si es que hay algo normal sería.
Cabecera (PageHeader) Listado de bla.bla. Fecha __/__/__ pagina Codigo descripcion cantidad ............. ------ ------------- ----------- Detalle (detailBand) Aqui van los registros que contiene el dataset del informe quickreport Subdetalle (subdetailband) Aqui van los registros subdetalle ( 1 o mas por cada registro detalle) Son los registros del dataset de la tabla o query detalle. Totales (summary band) Pie de pagina (PageHeader). Para tu problema, en este caso como solo quieres un registro, debes de utilizar solo banda detalle que sea de una consulta que solo contenga un registro, tal como te he explicado en el post anterior. |
#30
|
||||
|
||||
Estimado toni.vi:
He seguido al pie de la letra tus recomendaciones. El qreport tiene sólo una banda de detalle conectada al Query y los campos también. Se imprimen los campos que seleccioné, utilizando el Query, sin embargo siempre me arroja el primer registro (persona) de la tabla y no el que tengo en pantalla. ¿Es posible que el registro que selecciono y que aparece en la pantalla de la aplicación no sea el activo del dataset? Para seleccionar un registro (personas) hago click en una dbgrid que contiene los datos de la tabla maestra y eso activa datos de la tabla esclava (eventos de esa persona) en los distintos campos de texto, memos e imágenes que posee la aplicación. Ahora si esa persona tiene eventos de distintas fechas, navego a través de ellas utilizando un dbnavigator. Con esto no tengo problema para moverme entre los datos, incorporar datos nuevos o eliminarlos, sin embargo no logro imprimir los eventos que veo en pantalla. ¿En qué me estoy equivocando? Agradezco mucho tu dedicación toni.vi. No entiendo por qué es tan complicado. Todas los programas que conozco al darles imprimir, hacen justo eso, imprimen lo que estás viendo. Un gran saludo y gracias, porque creo que algo más he avanzado. Ojalá no se te hayan acabado los trucos. |
#31
|
|||
|
|||
Entiendo que tienes una tabla maestro de personas y una tabla detalle de eventos de cada persona.
Por tanto. 1.- Si quieres imprimir un solo evento de una persona debes poner: Solo banda detalle y no conectar el dataset al quickreport, o bien crear una consulta que solo nos vea este registro. 2.- Si quieres imprimir todos los eventos de una persona. Solo banda detalle conectando el dataset del quickreport al dataset de la consulta del detalle eventos. Si necesitas más ayuda puedes enviarme a traves del foro o privadamente el .pas o .dfm del quickreport e intentare ayudarte. |
#32
|
||||
|
||||
Quiero imprimir los eventos de una persona en una fecha dada, ya que se agrupan por fecha.
Si no conecto el qreport al dataset no me muestra nada. Hice la prueba cambiando la base de datos a mysql, ya que he desarrollado la aplicación para este sistema también y el efecto es el mismo. Creo que mi problema debe estar en cómo selecciono los datos, que es como te indiqué en el post anterior. Este es el código del archivo .pas unit Solicitud; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, QRCtrls, QuickRpt, DB, ExtCtrls, QRPrntr, OleCtrls; type TFormSolicitud = class(TForm) QuickRep2: TQuickRep; DetailBand1: TQRBand; QRLabel1: TQRLabel; QRDBText1: TQRDBText; QRLabel2: TQRLabel; QRDBText2: TQRDBText; QRLabel4: TQRLabel; QRDBText3: TQRDBText; QRDBText4: TQRDBText; private { Private declarations } public { Public declarations } end; var FormSolicitud: TFormSolicitud; implementation uses Registros; {$R *.dfm} end. El Query lo tengo en el form principal (Registros) Muchas gracias y por favor sigue iluminándome. |
#33
|
|||
|
|||
Descargate este ejemplo y ya me diras.
|
#34
|
||||
|
||||
Estimado toni.vi :
Muchas gracias por tus aportes, por fin después de más de 2 años logré lo que quería. Tus ejemplos me iluminaron ya que la solución era sumamente sencilla. Por alguna razón que no logro entender el qreport al estar en un form propio y llamarlo desde la aplicación siempre mostraba el primer registro de la tabla. Como tu ejemplo incluye el qreport dentro de la aplicación probé incorporándolo en ella y funcionó perfecto, simplemente desconectando el dataset. Ahora como tener el formulario del qreport a la vista no es aceptable, le ajusté el zoom a 20% y lo oculté detrás de un dbmemo. Probablemente no es la mejor solución pero quién tiene idea de lo que se esconde en las aplicaciones de los programas. Nuevamente te agradezco tu paciencia y espero que no sea la última vez que nos comunicamos. Gente como tú hacen grande a este foro y renuevan la fe en las personas. Saludos. |
#35
|
|||
|
|||
Si el problema era trabajar desde otro formulario, debes poner en el form2 un uses unit1 tal como te indico en el nuevo ejemplo.
Miratelo y veras que funciona tambien. |
#36
|
||||
|
||||
Hice la prueba con tu nuevo ejemplo, que era muy similar a cómo tenía originalmente estructurada mi aplicación y no funcionó. Vuelve a seleccionar sólo el primer registro de la base de datos. En todo caso estoy satisfecho con el resultado anterior y te agradezco nuevamente toda tu dedicación.
Un saludo toni.vi y muchas gracias |
#37
|
|||
|
|||
yo tengo el mismo problema que el,podrian ayudarme,primero no se como podre mandarle un cliente especifico para que se imprima en el reporte y tengo mas dudas
|
#38
|
||||
|
||||
Cita:
Salu2 |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Imprimir Pantalla | guille85 | Impresión | 2 | 23-07-2008 16:00:12 |
imprimir pantalla | martita | Impresión | 2 | 14-05-2008 14:51:45 |
Imprimir información de una tabla | Angelica Lizeth | Impresión | 3 | 21-12-2006 23:59:08 |
imprimir en pantalla en tiempo de ejecucion | RJF | Varios | 1 | 21-04-2005 09:22:16 |
Imprimir Pantalla, como ? | Pascual Montes | Gráficos | 3 | 30-12-2004 09:04:43 |
|