Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Impresión (https://www.clubdelphi.com/foros/forumdisplay.php?f=4)
-   -   Consulta en Quick Report (https://www.clubdelphi.com/foros/showthread.php?t=47226)

enecumene 22-08-2007 04:31:47

Consulta en Quick Report
 
Saludos, como hago esta consulta en quickreport?

Código SQL [-]
select no_ped, status, dpto, fecha_ent_exp, responsable1 from reg_pedidos where responsable1= 'Responsable' and status <> 'Tramite Aprobado' and status <> 'Comprado' and status <> 'Cumplido' and status <> 'Anulado' and status <> 'Devuelto' and status <> 'Firmado' and status <> 'Comprado' order by fecha_ent_exp

Responsable seria un DBLookUPComBOx de un form.

Gracias...

Caral 22-08-2007 04:56:37

Hola
Mañana te ayudo, hoy estoy cansado, ya es tarde.
Piensa que es facil, solo tienes que concatenar.
Saludos

enecumene 22-08-2007 05:04:44

Gracias Caral, he hecho de todas las maneras y la consulta no me sale...Saludos.

eduarcol 22-08-2007 14:27:04

ya has intentado hacerlo te ha dado algun error???

ContraVeneno 22-08-2007 16:18:45

Para empezar, la consulta no la vas a poder hacer en quickreport, porque este no es un manejador de bases de datos.

Primero tienes que hacer la consulta y los resultados los presentas en quickreports.

En lugar de tener tanto "and", podrías utilizar un "not in ()" o un "in()"

Ejemplo:
Código SQL [-]
Select Nombre
From Tabla
Where Nombre not in ('Pedro', 'Juan')

Esto me regresa todos los nombres, menos Pedro o Juan.

Y si es posible, te recomendaría manejar un estatus numérico, es mucho más rápido y fácil compara números que cadenas de texto.

enecumene 22-08-2007 23:13:19

Gracias contraVeneno por ese tip, lo que pasa es que la consulta la tengo en ADOQuery verdad? Responsable.text viene siendo un Combobox, entonces cuando corro la aplicacion selecciono algo en el combobox le doy al boton donde tiene este codigo:

Cita:

QuickReport.Preview;
pero no me presenta absolutamente nada...

algo debo estar haciendo mal no?.

Saludos.

eduarcol 22-08-2007 23:19:14

cuentanos en el quick report que componentes utilizas para el enlace de los datos, como estas manejando ese tema

enecumene 22-08-2007 23:27:43

Tengo en un form un TQuickRep, un ADOQuery y un Datasource, donde el string del ADOQuery tiene la consulta mencionada mas arriba, en el TQuickRep ya esta diseñado el reporte con sus respectivas bandas, title, Page Header y detail band y los TQRDBText correspondientes. en otro form esta el Combobox donde esta listado la lista de empleados y un button con el siguiente codigo:

Cita:

Form2.TQuickRep.Preview;
bueno selecciono un empleado y luego el boton. pero nada de nada..

Saludos.

ContraVeneno 22-08-2007 23:30:30

¿y a que hora activas el ADOQuery?

enecumene 22-08-2007 23:32:15

esta True todo el tiempo si a eso se refieres.

ContraVeneno 22-08-2007 23:47:22

Pues ese será el problema, porque al seleccionar un elemento del combobox, la consulta ya no es la misma y hay que actualizarla. La puedes actualizar haciendo su propiedad "Active" a Falso y luego a verdadero o lo más recomdable, utilizar los comandos "Close" y "Open".

Yo te recomendaría:

Código Delphi [-]
With AdoQuery do begin
 if active then close;
 SQL.Add('Select....');
 SQL.Add('Where Responsable = :vResponsable');
 SQL.Add('And Status not in (........ ');
 Parameters.ParamByname('vResponsable').AsString := Responsable.Text;
 Open;
 Form2.TQuickRep.Preview;
end; //with

enecumene 23-08-2007 00:04:13

Gracias ContraVeneno, sabes? ahora me ocurre otro tipo de problema al darle click al boton me este error:

Cita:

---------------------------
Debugger Exception Notification
---------------------------
Project Sigesped.exe raised exception class EAccessViolation with message 'Access violation at address 005E1A1C in module 'Sigesped.exe'. Read of address 000002F8'. Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------
:confused::confused::confused:

Caral 23-08-2007 00:09:45

Hola
Coloca los dos archivos zip en una carpeta para que lo veas.
En uno esta la base de datos, en otro un form y un qreport.
Es un ejemplo sencillo, revisalo y me dices.
Saludos

ContraVeneno 23-08-2007 00:11:59

Estas tratando de acceder a algo que no existe. Tal vez el form2 no esta creado todavía, tal vez el quickreport no esta creado... dependiendo de la línea que te marque el error, será el elemento inexistente que quiere accesar.

enecumene 23-08-2007 00:52:15

Muchas Gracias Caral y ContraVeneno y Eduarcol, ahora si me funciona, de nuevo muchas gracias...ahora me sucede lo siguiente solo me aparece un solo registro osea el primero y desaparece los titulos...

enecumene 23-08-2007 02:15:50

Problema Resuelto!!!. Gracias de Nuevo..


La franja horaria es GMT +2. Ahora son las 23:22:44.

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