Re: Res: [delphi-br] Como montar uma pesquisa por aproximação
Ja usou o 'Locate' ? veja no help do delphi a sitaxe. Celio. Auriston Lopes <[EMAIL PROTECTED]> escreveu: use o evento onchange do seu edit. sds Angelo Louzada <[EMAIL PROTECTED]> escreveu: Opa, já tentei com o operador like porém o que eu estava querendo era o seguinte: A medida que o usuário fosse digitando fosse mostrando no grid o resultado palavra o palavra ou seja, tenho no grid no campo nome os seguintes registros: Ana Cecília Ana Maria Angela Silva Anderson Vieira A medida que o usuário fosse digitando em um Edit os caracteres Ang o cursor do grid já iria se posicionando, através do seu exemplo o usuário digita o nome ou parte do nome e manda fazer a pesquisa e eu queria que isso acontecesse a medida que o usuário fosse digitando caractér por caractér parecido com o comportamento do DBLookupComboBox. - Mensagem original De: Claudiney Cogo <[EMAIL PROTECTED]> Para: delphi-br@yahoogrupos.com.br Enviadas: Sexta-feira, 8 de Fevereiro de 2008 9:25:52 Assunto: Re: [delphi-br] Como montar uma pesquisa por aproximação Olá Angelo. É tranquilo... Já que você tá usando o IBQuery é melhor trabalhar direto com o SQL que passa pra ele. Na entrada do form você, se preferir, carrega tudo.. (cuidado com tabelas muito grandes).. usando um comando como esse: IBQryTabela. SQL.Clear; IBQryTabela. Sql.Add(' Select * from SuaTabela'); IBQryTabela. Active := True; Depois no evento CHANGE do edit você altera o comando incluindo a opção like: IBQryTabela. SQL.Clear; IBQryTabela. Sql.Add(' Select * from SuaTabela where CampoTabela like ' + QuotedStr(Edit1. Text + '%') + ' order by CampoTabela' ); IBQryTabela. Active := True; Isso supondo que você esteja fazendo a pesquisa por um campo string, como nome ou descrição. Aqui o comando procura o que você digita no início do campo. Caso queira procurar em qualquer posição coloque um % antes do Edit1.Text também IBQryTabela. SQL.Clear; IBQryTabela. Sql.Add(' Select * from SuaTabela where CampoTabela like ' + QuotedStr('% ' + Edit1.Text + '%') + ' order by CampoTabela' ); IBQryTabela. Active := True; Porém, tome um certo cuidado com bases muito grandes. Esse tipo de consulta pode causar um pouco de perda de performance. Nesse caso é melhor não abrir a tabela toda na entrada e digitar tudo o que deseja buscar primeiro, para depois fazer a busca e selecionar só o que interessa. Isso reduz muito o tamanho do dataset que será retornado. Espero que seja isso. Abraço. _ _ ___ Claudiney Cogo N2 Sistemas e Soluções em Informática Av. São Paulo, 172 - 15º Andar - Sala 1505 Maringá - Paraná www.n2solutions. com.br www.studion2. com.br - Original Message - From: Angelo Louzada To: [EMAIL PROTECTED] os.com.br Sent: Friday, February 08, 2008 7:30 AM Subject: [delphi-br] Como montar uma pesquisa por aproximação Amigos, estou utilizando um IBQuery trazendo os dados da tabela de clientes e mostrando em um DBGrid gostaria que meu usuário digitasse em um Edit o nome do cliente e a medida que ele fosse digitando o nome do cliente o DBGrid fosse realizando o filtro palavra por palavra, alguém sabe como posso implementar isso? Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail. yahoo.com/ [As partes desta mensagem que não continham texto foram removidas] __ NOD32 2857 (20080207) Information __ This message was checked by NOD32 antivirus system. http://www.eset. com [As partes desta mensagem que não continham texto foram removidas] Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ [As partes desta mensagem que não continham texto foram removidas] - Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! [As partes desta mensagem que não continham texto foram removidas] - Célio Bernardo de Lima Diretor de Projetos e Novas Tecnologias siatech.com.br - - Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! [As partes desta mensagem que não continham texto foram removidas]
Re: Res: [delphi-br] Como montar uma pesquisa por aproximação
use o evento onchange do seu edit. sds Angelo Louzada <[EMAIL PROTECTED]> escreveu: Opa, já tentei com o operador like porém o que eu estava querendo era o seguinte: A medida que o usuário fosse digitando fosse mostrando no grid o resultado palavra o palavra ou seja, tenho no grid no campo nome os seguintes registros: Ana Cecília Ana Maria Angela Silva Anderson Vieira A medida que o usuário fosse digitando em um Edit os caracteres Ang o cursor do grid já iria se posicionando, através do seu exemplo o usuário digita o nome ou parte do nome e manda fazer a pesquisa e eu queria que isso acontecesse a medida que o usuário fosse digitando caractér por caractér parecido com o comportamento do DBLookupComboBox. - Mensagem original De: Claudiney Cogo <[EMAIL PROTECTED]> Para: delphi-br@yahoogrupos.com.br Enviadas: Sexta-feira, 8 de Fevereiro de 2008 9:25:52 Assunto: Re: [delphi-br] Como montar uma pesquisa por aproximação Olá Angelo. É tranquilo... Já que você tá usando o IBQuery é melhor trabalhar direto com o SQL que passa pra ele. Na entrada do form você, se preferir, carrega tudo.. (cuidado com tabelas muito grandes).. usando um comando como esse: IBQryTabela. SQL.Clear; IBQryTabela. Sql.Add(' Select * from SuaTabela'); IBQryTabela. Active := True; Depois no evento CHANGE do edit você altera o comando incluindo a opção like: IBQryTabela. SQL.Clear; IBQryTabela. Sql.Add(' Select * from SuaTabela where CampoTabela like ' + QuotedStr(Edit1. Text + '%') + ' order by CampoTabela' ); IBQryTabela. Active := True; Isso supondo que você esteja fazendo a pesquisa por um campo string, como nome ou descrição. Aqui o comando procura o que você digita no início do campo. Caso queira procurar em qualquer posição coloque um % antes do Edit1.Text também IBQryTabela. SQL.Clear; IBQryTabela. Sql.Add(' Select * from SuaTabela where CampoTabela like ' + QuotedStr('% ' + Edit1.Text + '%') + ' order by CampoTabela' ); IBQryTabela. Active := True; Porém, tome um certo cuidado com bases muito grandes. Esse tipo de consulta pode causar um pouco de perda de performance. Nesse caso é melhor não abrir a tabela toda na entrada e digitar tudo o que deseja buscar primeiro, para depois fazer a busca e selecionar só o que interessa. Isso reduz muito o tamanho do dataset que será retornado. Espero que seja isso. Abraço. _ _ ___ Claudiney Cogo N2 Sistemas e Soluções em Informática Av. São Paulo, 172 - 15º Andar - Sala 1505 Maringá - Paraná www.n2solutions. com.br www.studion2. com.br - Original Message - From: Angelo Louzada To: [EMAIL PROTECTED] os.com.br Sent: Friday, February 08, 2008 7:30 AM Subject: [delphi-br] Como montar uma pesquisa por aproximação Amigos, estou utilizando um IBQuery trazendo os dados da tabela de clientes e mostrando em um DBGrid gostaria que meu usuário digitasse em um Edit o nome do cliente e a medida que ele fosse digitando o nome do cliente o DBGrid fosse realizando o filtro palavra por palavra, alguém sabe como posso implementar isso? Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail. yahoo.com/ [As partes desta mensagem que não continham texto foram removidas] __ NOD32 2857 (20080207) Information __ This message was checked by NOD32 antivirus system. http://www.eset. com [As partes desta mensagem que não continham texto foram removidas] Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ [As partes desta mensagem que não continham texto foram removidas] - Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! [As partes desta mensagem que não continham texto foram removidas]
Re: Res: [delphi-br] Como montar uma pesquisa por aproximação
use o like e no edit, dbedit onde que vc digita, coloque o código no de busca no onkeypress do botão Angelo Louzada <[EMAIL PROTECTED]> escreveu: Opa, já tentei com o operador like porém o que eu estava querendo era o seguinte: A medida que o usuário fosse digitando fosse mostrando no grid o resultado palavra o palavra ou seja, tenho no grid no campo nome os seguintes registros: Ana Cecília Ana Maria Angela Silva Anderson Vieira A medida que o usuário fosse digitando em um Edit os caracteres Ang o cursor do grid já iria se posicionando, através do seu exemplo o usuário digita o nome ou parte do nome e manda fazer a pesquisa e eu queria que isso acontecesse a medida que o usuário fosse digitando caractér por caractér parecido com o comportamento do DBLookupComboBox. - Mensagem original De: Claudiney Cogo <[EMAIL PROTECTED]> Para: delphi-br@yahoogrupos.com.br Enviadas: Sexta-feira, 8 de Fevereiro de 2008 9:25:52 Assunto: Re: [delphi-br] Como montar uma pesquisa por aproximação Olá Angelo. É tranquilo... Já que você tá usando o IBQuery é melhor trabalhar direto com o SQL que passa pra ele. Na entrada do form você, se preferir, carrega tudo.. (cuidado com tabelas muito grandes).. usando um comando como esse: IBQryTabela. SQL.Clear; IBQryTabela. Sql.Add(' Select * from SuaTabela'); IBQryTabela. Active := True; Depois no evento CHANGE do edit você altera o comando incluindo a opção like: IBQryTabela. SQL.Clear; IBQryTabela. Sql.Add(' Select * from SuaTabela where CampoTabela like ' + QuotedStr(Edit1. Text + '%') + ' order by CampoTabela' ); IBQryTabela. Active := True; Isso supondo que você esteja fazendo a pesquisa por um campo string, como nome ou descrição. Aqui o comando procura o que você digita no início do campo. Caso queira procurar em qualquer posição coloque um % antes do Edit1.Text também IBQryTabela. SQL.Clear; IBQryTabela. Sql.Add(' Select * from SuaTabela where CampoTabela like ' + QuotedStr('% ' + Edit1.Text + '%') + ' order by CampoTabela' ); IBQryTabela. Active := True; Porém, tome um certo cuidado com bases muito grandes. Esse tipo de consulta pode causar um pouco de perda de performance. Nesse caso é melhor não abrir a tabela toda na entrada e digitar tudo o que deseja buscar primeiro, para depois fazer a busca e selecionar só o que interessa. Isso reduz muito o tamanho do dataset que será retornado. Espero que seja isso. Abraço. _ _ ___ Claudiney Cogo N2 Sistemas e Soluções em Informática Av. São Paulo, 172 - 15º Andar - Sala 1505 Maringá - Paraná www.n2solutions. com.br www.studion2. com.br - Original Message - From: Angelo Louzada To: [EMAIL PROTECTED] os.com.br Sent: Friday, February 08, 2008 7:30 AM Subject: [delphi-br] Como montar uma pesquisa por aproximação Amigos, estou utilizando um IBQuery trazendo os dados da tabela de clientes e mostrando em um DBGrid gostaria que meu usuário digitasse em um Edit o nome do cliente e a medida que ele fosse digitando o nome do cliente o DBGrid fosse realizando o filtro palavra por palavra, alguém sabe como posso implementar isso? Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail. yahoo.com/ [As partes desta mensagem que não continham texto foram removidas] __ NOD32 2857 (20080207) Information __ This message was checked by NOD32 antivirus system. http://www.eset. com [As partes desta mensagem que não continham texto foram removidas] Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ [As partes desta mensagem que não continham texto foram removidas] Uberdam Cavaletti Formado em Tecnologia da Informação Pós-graduando em desenvolvimento Java. - http://www.curricular.com.br/berdam Visite http://passandoveneno.blogspot.com - Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! [As partes desta mensagem que não continham texto foram removidas]