Como limitar exibição no DBGrid?

Delphi

05/11/2007

Ola amigos do fórum, estou desenvolvendo um sistema para emissoras de rádio, onde faremos atendimento ao ouvinte, teremos muitos relatórios para consulta da programação da emissora, o que eu preciso agora é como limitar a exibição em um dbgrid que será enviado para um relatório?
Por exemplo, se eu pedir um relatório das músicas mais pedidas entre duas datas, ele irá mostrar em orderm decrescente, por isso quero limitar, no form eu tenho dois datetimer, um botao consultar e agora eu coloquei um edit, onde o usuario limitara pela quantidade que ele quer que exiba.
Estou usando esse código para consulta

query1.Close; 
   query1.SQL.Clear; 
   query1.sql.add(´select nome_maispedidas, count(valor)as rank from tbmusicas´); 
   query1.sql.add(´where data_maispedidas between :pdataini and :pdatafin´); 
   query1.Params[0].asdate:= datetimepicker1.Date; 
   query1.Params[1].asdate:= datetimepicker2.date; 
   query1.SQL.add(´group by nome_maispedidas´); 
   query1.sql.add(´order by rank desc´); 
   query1.Open;


Como incorporar o conteúdo do edit, quando por exemplo o usuario excolher 10 ou 20, na hora que clicar no botao consultar, ele só exiba a quantidade escolhida, eu sei que posso escolher diretamente pelo query, mas quero que o usuario escolha a quantidade.

Obrigado pela atenção.


Junior-programador

Junior-programador

Curtidas 0

Respostas

Alexandrej

Alexandrej

05/11/2007

[quote:3aa872a8df=´junior-programador´]Estou usando esse código para consulta

query1.Close; 
   query1.SQL.Clear; 
   query1.sql.add(´select nome_maispedidas, count(valor)as rank from tbmusicas´); 
   query1.sql.add(´where data_maispedidas between :pdataini and :pdatafin´); 
   query1.Params[0].asdate:= datetimepicker1.Date; 
   query1.Params[1].asdate:= datetimepicker2.date; 
   query1.SQL.add(´group by nome_maispedidas´); 
   query1.sql.add(´order by rank desc´); 
   query1.Open;
[/quote:3aa872a8df]

Qual o banco?

Firebird: SELECT FIRST 20 * FROM...
Postgres: SELECT blablabla... LIMIT 20
SQL Server: SELECT TOP 20 * FROM...


GOSTEI 0
Junior-programador

Junior-programador

05/11/2007

foi mal, esqueci de colocar estou usando mysql, pela dica do amigo adriano seria

limit x


mas como colocar esse limit x baseado no edit onde sera colocado o valor, fico no aguardo.

obrigado.


GOSTEI 0
Alexandrej

Alexandrej

05/11/2007

[quote:737cefeee9=´junior-programador´]foi mal, esqueci de colocar estou usando mysql, pela dica do amigo adriano seria

limit x


mas como colocar esse limit x baseado no edit onde sera colocado o valor, fico no aguardo.

obrigado.[/quote:737cefeee9]

Use parâmetros.

limit :pLimite


GOSTEI 0
POSTAR