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 29-03-2007
MikyVato MikyVato is offline
Miembro
 
Registrado: mar 2005
Posts: 39
Poder: 0
MikyVato Va por buen camino
Problemas con Qreport y Querry

Hola como estan todos tengo un pequeño problema, quiero imprimir un ticket el cual esta compuesto por registros que obtengo de un querry, la consulta es creada en tiempo de ejecucion, o sea, que si activo el querry en tiempo de diseño me aparece un mensaje algo asi "Missing SQL property".
Ahora el tema es el siguiente, he creado un qreport donde he colocado tres elementos TQRDBText (no se si esto es correcto) y al tratar de asignar un valor a la propiedad DataField obtengo el mismo mensaje de error ("Missing SQL property"). Como puedo solucionar esto?? .
No he podido encontrar mucha bibliografia o tutoriales sobre qreport en Castellano, la verdad estoy aprendiendo el uso de Delphi leyendo "La Cara Oculta de Delphi 4".


Bueno Gracias por todo espero me puedan ayudar, nos vemos.........
Responder Con Cita
  #2  
Antiguo 29-03-2007
[basti] basti is offline
Miembro Premium
 
Registrado: ago 2004
Posts: 388
Poder: 20
basti Va por buen camino
Aunque la consulta sea creada en tiempo de ejecución, puedes poner una consulta que devuelva los mismos campos dentro del query. De esa manera podrás asignar los campos a los controles.
Responder Con Cita
  #3  
Antiguo 29-03-2007
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.557
Poder: 25
egostar Va camino a la fama
Yo tuve alguna vez ese dilema y lo resolví de la siguiente forma. Aclaro que hay formas mas elegantes y que aqui te pueden dar una mejor opción.
  1. En tiempo de diseño mete un SELECT de todos los campos que deseas tenga tu query.
  2. Genera las ligas correspondientes a los campos TQRDBText.
  3. Si lo deseas borra la sentencia SELECT del query despues de crear las ligas o en tiempo de ejecución pon Query1.SQL.Clear antes de colocar la sentencia que deseas.
Espero te ayude.

Salud OS.
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #4  
Antiguo 31-03-2007
MikyVato MikyVato is offline
Miembro
 
Registrado: mar 2005
Posts: 39
Poder: 0
MikyVato Va por buen camino
bue quedamos asi

Gracias si Funciona, es decir puedo asignar los elementos del Querry al Qreport pero o caramba me sale un ERROR, no corre la aplicacion, me dice que no puede conventir un tipo NULL a un tipo STRING , la verdad me mato.....


Se Aceptan Sugerencias....................
Responder Con Cita
  #5  
Antiguo 10-04-2007
MikyVato MikyVato is offline
Miembro
 
Registrado: mar 2005
Posts: 39
Poder: 0
MikyVato Va por buen camino
Cool Avanzando

Hola que tal, queria agradecerles ya que si funciono su consejo, ademas de que ya pude solucionar mi problema con la diferencia de tipos . Pero he aqui que pasa lo siguiente....

Deseo imprimir un valesito o ticket (no se como llamarlo) por cada registro que obtengo en el Querry, he estado utilizando QRDBText, osea lo que hago es recorrer el Querry pidiendo que por cada registro realice una Impresion o un Preview........


Código Delphi [-]
while not QDetalle.Eof Do
          begin
             FImpresion.Previous;
             QDetalle.Next;
          end;




Bueno algo asi...... mi duda es: estoy usando el elemento adecuado??, me faltaría alguna otra herramienta??, una QRBand o una QRGroup. La verdad no tengo muy claro el uso de QReport, cualquier ayuda es bienvenida.......

Última edición por MikyVato fecha: 10-04-2007 a las 19:40:39.
Responder Con Cita
  #6  
Antiguo 10-04-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola MikyVato
No entiendo muy bien lo que te sucede, primero seria bueno ver la sentencia sql que envias al query, con esto veriamos que es lo que quieres mostrar.
En tal caso, por ejemplo, si quieres que muestre la informacion 1, haga un espacio y muestre la infoemacion 2, hay varias formas de hacerlo entre ellas el uso de qrband como mencionas.
Saludos
Responder Con Cita
  #7  
Antiguo 11-04-2007
MikyVato MikyVato is offline
Miembro
 
Registrado: mar 2005
Posts: 39
Poder: 0
MikyVato Va por buen camino
Haber voy a tratar de ser mas claro

OK voy a tratar de ser mas claro:

La Consulta SQL funciona a la perfección, no tengo problemas con ello, puedo visualizar la consulta en un DBGrid, el problema surge cuando deseo imprimir los resultados de la consulta. El Vale o ticket que deseo imprimir tendría 3 datos solamentes. Se veria algo asi

DNI
SubGrupo
NroPartida

Bueno la consulta SQL tiene la siguiente Forma:

Código SQL [-]
SELECT DNI, Proveedor, SubGrupo, NroPartida FROM Tabla WHERE NroPartida in ('+Edit.Text+')'





De todos los campos del Querry solo quiero imprimir 3 en una especie de Vale o Ticket....

Bueno espero haberme hecho entender mejor, si pueden ayudar desde ya Gracias..........................
Responder Con Cita
  #8  
Antiguo 11-04-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola MikyVato
El query puede contener los datos que se quiera e imprimir solo los que necesites sin nungun groblema.
Haz un ejemplo practico:
Se que haces la consulta via programa, pero, esto no impide que se coloque la sentencia en el query de qreport.
Vamos paso a paso:
1- En en query del qreport pones esto:
Código SQL [-]
SELECT DNI, Proveedor, SubGrupo, NroPartida FROM Tabla
Le das ok.
Le das doble click al query, te saldra una pantallita pequeña, con el raton derecho, le das add, aqui, pones si queres todos los campos no tiene importancia.
Una vez hecho esto, en el qreport:
Pones un qrband y dentro de este pones los tres drdbtex que vas a necesitar, colocalos como quieras.
Vale, una vez hecho esto tocas cada qrdbtex y vas a la propiedad dataset, escojes el query, y vas a la propiedad datafilename y escoges el campo que quieras, asi sucesivamente con todos.
Luego das un click al formulario del reporte y pones en su propiedad dataset el query.
Y bueno ya esta, es todo creo yo.
Saludos
Responder Con Cita
  #9  
Antiguo 11-04-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
A se me olvidava.
Una vez hecho todo esto, elimina la sentencia sql del query, puede duplicarse con la del codigo y te dara problemas, si la quitas no.
Saludos
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
Problemas con Qreport 3.0.3 y W XP serrusho Impresión 5 16-11-2004 22:58:11
Problemas con Qreport davidgaldo Impresión 1 30-04-2004 07:07:14
[B]Problemas con QREPORT[/B] josejuanm Impresión 0 03-11-2003 15:48:50
Problemas con Qreport !!! mateamargo Impresión 3 27-10-2003 14:02:43
Problemas Con el QReport UTECYBER OOP 2 20-09-2003 18:15:37


La franja horaria es GMT +2. Ahora son las 18:06:39.


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