[firebase-br] RES: where com lista de valores

Carlos Wilson cwfsa1 em gmail.com
Sáb Jun 5 12:07:14 -03 2010


Obrigado pelo seu comentário mas eu realmente não entendi o que voce 
quis dizer, ou acho que voce não entendeu o que quero.
exemplo:
em um dataset depois do usuário ter feitos todas as opções de filtragem 
possivel, resultou em:
QryCliente
Codcliente          Nome
===============================
1                        Carlos
2                        Manoel
3                        Júlia

Aí eu completo a sql do segundo dataset com um laço que vai pegando os 
codigos do 1º dataset:
o que me resulta em ...where codcliente IN (1,2,3);

Funciona que é uma beleza mas para poucos registros se o primeiro 
dataset me retornar 3000 clientes dá pau.

Pergunto: O firebird possui outro comando para comparação de valores que 
aceite MUITOS valores???

Obrigado.

Carlos Wilson

Zottis escreveu:
> Faz um list com os parametros da primeira tela, ele te retornará o que vc
> quer,
> Ou ainda faz um while not na primeira tela e joga em uma variável, antes de
> chamar a segunda tela
> E passa o parâmetro da variavel 
>
> -----Mensagem original-----
> De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
> nome de Carlos Wilson
> Enviada em: sábado, 5 de junho de 2010 09:25
> Para: FireBase
> Assunto: Re: [firebase-br] where com lista de valores
>
> É tipo assim quero fazer um relatório de venda dos clientes que foram 
> selecionados numa outra tela.
> QryRelatorio.Close;
> QryRelatorio.Sql.Clear;
> QryRelatorio.Sql.Add(SQL);
> QryRelatorio.SQL.ADD( 'where codcliente in (' );
> Qryclientes.first;
> while not QryClientes.EOF do
> begin
>    QryRelatorio.SQL.ADD( QryClientesCODCLIENTE.AsString + ',' );
>    QryClientes.Next;
> end;
> QryRelatorio.Open;
>
> para poucos clientes funciona muito bem, mas quando é muitos clientes, 
> aparece uma mensagem "Dinamic SQL Error" devido a limitação do comando IN
> existe uma alternativa pra isso?
>
> Garto.
>
> Carlos Wilson.
>
> Alysson Azevedo escreveu:
>   
>> exite o comando "exists"
>> mas posta aew mais ou menos oque vc precisa...
>> alguem vai saber te ajudar...
>> --
>>
>> Alysson Gonçalves de Azevedo
>> (11) 8491-7730
>>
>> (\(''^_^ )/)
>>
>> "Pobre vive dizendo que não tem nada, mas quando vem a enchente, ele sai
>> gritando: -Perdi tudo!!!"
>>
>>
>>
>>
>> Em 4 de junho de 2010 22:15, Carlos Wilson <cwfsa1 em gmail.com> escreveu:
>>
>>   
>>     
>>> Boa noite,
>>>
>>> Estou fazendo um select com base nos valores de outro Dataset. Fiz um
>>>       
> while
>   
>>> para buscar os valores do dataset e acrescentar uma lista de valores para
>>> ser usada em conjunto com "where in". porém o comando "in"  possui um
>>>       
> limite
>   
>>> de valores que pode ser passado. existe uma alternativa ao comando in?
>>>
>>> Obrigado,
>>>
>>> Carlos Wilson
>>> Delphi+MDO+Firebird 2.1
>>>
>>> ______________________________________________
>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>> http://www.firebase.com.br/fb/artigo.php?id=1107
>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>
>>>     
>>>       
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>     
> http://www.firebase.com.br/fb/artigo.php?id=1107
>   
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>
>>   
>>     
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> Nenhum vírus encontrado nessa mensagem recebida.
> Verificado por AVG - www.avgbrasil.com.br 
> Versão: 9.0.829 / Banco de dados de vírus: 271.1.1/2919 - Data de
> Lançamento: 06/05/10 03:25:00
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use: http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>   





Mais detalhes sobre a lista de discussão lista