Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Problemas con Filtros??????? (https://www.clubdelphi.com/foros/showthread.php?t=30266)

blackz 01-04-2006 23:46:59

Problemas con Filtros???????
 
Hola!!!!,:confused:
quisiera que me ayudaran tengo un pequeño problema y la neta no se como resolverlo, tengo una consulta sql la cual me despliega todos los registros en un dbgrid todo bien hasta ahi, pero el problema es que solo quiero q me muestre los 10 primeros registros simplemente y los demas que no me los muestre creen q si se pueda hacer esto???

espero haberme explicado lo suficiente.

Bicho 02-04-2006 00:06:29

Hola, prueba a usar TOP 10 en tu consulta. Ejemplo

Código SQL [-]
  select top 10 campo1 from tabla

Espero te sirva.

Saludos

vtdeleon 02-04-2006 01:49:33

Saludos

blackz, Bienvenido al Club. Aunque la seccion de Guia de estilo esta temporalmente en costruccion, te recomiendo que pases por alli cuando todo este bien. Tambien aconsejarte del uso de las Etiquetas vB o TAG para los codigos.

Y por ultimo, decirte que debes de dar mas detalles, no solo del incoveniente sino de las herramientas que usas, como: QUe dataset usas?, Base de datos, version de Delphi,....

Agregando algo mas a lo dicho por Bicho, en algunas bases de datos no reconocen TOP, por lo que se usa First

HAsta luego y bienvenido.;)

blackz 03-04-2006 20:44:50

Graxias
 
Sale deja intento hacer eso y haber que pasa, muchas gracias

blackz 04-04-2006 20:27:29

Hola!!!
Gracias por las sugerencias que me dieron, pero al parecer sigue igual, intente hacer la sugerencia de Bicho y no funciono me marco un error, respecto a lo que dice Vtdelon la verdad soy nuevo en Delphi y en consultas, actualmente uso Delphi 3 con tablas Paradox. aqui esta el codigo de la consulta: y solo quiero que me muestre como ya habia dicho anteriormente los 10 primeros registros. Gracias.

Código:

Query1.close;
Query1.SQL.Clear;
Query1.SQL.Add('Select *  From bdencuesta  where profesor like:param1 and materia like:param2 and gradoygrupo like:param3 and turno like:param4');
Query1.ParamByName('Param1').AsString:=Edit1.Text+'%';
Query1.ParamByName('Param2').AsString:=Edit2.Text+'%';
Query1.ParamByName('Param3').AsString:=Edit3.Text+'%';
Query1.ParamByName('Param4').AsString:=Edit4.Text+'%';
Query1.Prepare;
Query1.Active:=true;


marcoszorrilla 04-04-2006 21:29:37

El problema es que Paradox no soporta ni Top ni First, por lo que tendrás que buscar algún tipo de filtro que te permita hacer lo que quieres.

Un Saludo.

Ruben_Cu 08-04-2006 19:15:57

Hola blackz, en tu caso conozco dos posibilidades de hacerlo dado que el motor de SQL de paradox no soporta el TOP pudieras, si te es imprescindible:
1.- Utilizar un Grid en lugar del DBGrid y mediante cualquiera de las funciones de bucles; While, For, Repeat y el uso de la propiedad RecordCount contar los registros que te intersan y presentarlos en el Grid.
2.-La otra posibilidad para usar el DBGrid es crearte una tabla en la que coloques de forma temporal los registros que te interesan del resultado del query que puede ser tambien con el uso de bucle y conectarla a traves de un DataSource a tu DBGrid, el 'inconveniente' de esta forma es que tienes que limpiar la tabla cada vez que vayas a introducir los nuevos 10 registros, pero de seguro te funciona.
Espero haberme explicado.
Saludos


La franja horaria es GMT +2. Ahora son las 18:58:51.

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