FindNearest no IBTable
Alguém sabe se existe um comando similar ao FindNearest do componente Table? Estou usando Delphi 5 e Interbase. Utilizo IBTable.
Valeu a foça!!
JR.
Valeu a foça!!
JR.
Jrjoliv2003
Curtidas 0
Respostas
Reginaldo174
05/07/2004
para cria pesquisas utilize o componente IBquery com ele vc pode fazer
IBQuery1.locate(´nomedocampo´,edit1.text,[lopartialkey, locaseinsensitive]);
Espero ter ajudado.
IBQuery1.locate(´nomedocampo´,edit1.text,[lopartialkey, locaseinsensitive]);
Espero ter ajudado.
GOSTEI 0
Jrjoliv2003
05/07/2004
Fiz isso:
data.IBTRep.Locate(´nomealuno´,edit1.text,[lopartialkey, locaseinsensitive]);
Só que quando vou compilar da erro com a mensagem de não identificado em relação essas duas palavras :lopartialkey, locaseinsensitive.
Sabe o que devo fazer?
Valeu a força!!!
JR.
data.IBTRep.Locate(´nomealuno´,edit1.text,[lopartialkey, locaseinsensitive]);
Só que quando vou compilar da erro com a mensagem de não identificado em relação essas duas palavras :lopartialkey, locaseinsensitive.
Sabe o que devo fazer?
Valeu a força!!!
JR.
GOSTEI 0
Rômulo Barros
05/07/2004
Adicione a Unit [color=red:e25cbed491]DB[/color:e25cbed491] na Cláusula Uses de seu Formulário.
:(
:(
GOSTEI 0
Jrjoliv2003
05/07/2004
Que Unit DB é essa? Estou utlizando Delphi 5.
Valeu a força!!
JR. :roll:
Valeu a força!!
JR. :roll:
GOSTEI 0
Otto
05/07/2004
acrescente a palavra [color=blue:34650f7fba]DB[/color:34650f7fba] la em cima na seção [color=blue:34650f7fba]uses[/color:34650f7fba]
:wink:
:wink:
GOSTEI 0
Jrjoliv2003
05/07/2004
Valeu!!!
Funcionou!!!
JR.
Funcionou!!!
JR.
GOSTEI 0
Jrjoliv2003
05/07/2004
Beleza!!! A primeira parte funciona com o LOCATE.
Só que ele localiza apenas apontando e não filtrando.
E aponta o primeiro que encontra. Os dados estão em uma DbGrid.
Resumindo o que quero fazer em uma outra situação:
Tenho um combobox com alguns nomes (representam os campos da tabela).
Escolho o campo. No edit ao lado começo a digitar letras e a tabela
vai sendo filtrada conforme a digitação.
Se puder me ajudar...
Valeu a força!!!
JR.
Só que ele localiza apenas apontando e não filtrando.
E aponta o primeiro que encontra. Os dados estão em uma DbGrid.
Resumindo o que quero fazer em uma outra situação:
Tenho um combobox com alguns nomes (representam os campos da tabela).
Escolho o campo. No edit ao lado começo a digitar letras e a tabela
vai sendo filtrada conforme a digitação.
Se puder me ajudar...
Valeu a força!!!
JR.
GOSTEI 0
Rômulo Barros
05/07/2004
Evento OnKeyPressDoEdit Begin Query.Close; Query.Sql.Clear; Query.Sql.Add(´Select * From Tabela´); Query.Sql.Add(´Where ´ + ComboBox.Text + ´ = ´ + ´Like ¬´ + Edit.Text + ´¬´); Query.Open; End;
GOSTEI 0
Jrjoliv2003
05/07/2004
OK!!
Uma Dúvida!!
Essa Query eu coloco no DataModule, especifico o Banco de dados e deixo ela vazia, sem comandos SQL?
Valeu a força!!!
JR.
Uma Dúvida!!
Essa Query eu coloco no DataModule, especifico o Banco de dados e deixo ela vazia, sem comandos SQL?
Valeu a força!!!
JR.
GOSTEI 0
Rômulo Barros
05/07/2004
Aí amigo, é com você. Particularmente, trago em minhas consultas apenas um registro. Mas, no seu caso, alimentea com o seguinte SQL:
Select * From Tabela
Quando tudo tiver funcionando perfeitamente, tome as providências cabíveis. :roll:
Select * From Tabela
Quando tudo tiver funcionando perfeitamente, tome as providências cabíveis. :roll:
GOSTEI 0
Jrjoliv2003
05/07/2004
Beleza!!
Vou fazer à tarde e hoje a noite. Respondo assim q tiver um resultado!!
Muito Obrigado pela força.
JR.
Vou fazer à tarde e hoje a noite. Respondo assim q tiver um resultado!!
Muito Obrigado pela força.
JR.
GOSTEI 0
Jrjoliv2003
05/07/2004
O primeiro teste é com esse código. Na hora da execução, qunado digito uma letra ele dá erro por causa do (¬). Não sei o que está errado. Se puder ajudar..
Código é um pocuo grande:
data.ibqrep.Close;
data.ibqrep.Sql.Clear;
data.ibqrep.Sql.Add(´select REP_NUMERO, MAT_NOME, REP_DT,´); data.ibqrep.Sql.Add(´REP_HINI, REP_HFIM, MOD_NOME, REP_TIPO, REP_SALNUMERO,´);
data.ibqrep.Sql.Add(´Fun1.FUN_NOME, REP_OBS, Fun2.FUN_NOME, REP_DTCAD, REP_VALOR´);
data.ibqrep.Sql.Add(´from REPOSICAO, Matricula, Modulos, Funcionarios Fun1,´);
data.ibqrep.Sql.Add(´Funcionarios Fun2 where (MAT_MATRI= REP_MATALUNO) and´);
data.ibqrep.Sql.Add(´(MOD_NUMERO=REP_MODULO) and (Fun1.FUN_MATRI = REP_PROFESSOR)´);
data.ibqrep.Sql.Add(´and (REP_FUNMATRI = Fun2.FUN_MATRI)´);
data.ibqrep.Sql.Add(´and ´ + ComboBox1.Text + ´ LIKE ´ + Edit1.Text + ´¬´);
data.ibqrep.Open;
Valeu a força!!
JR.
Código é um pocuo grande:
data.ibqrep.Close;
data.ibqrep.Sql.Clear;
data.ibqrep.Sql.Add(´select REP_NUMERO, MAT_NOME, REP_DT,´); data.ibqrep.Sql.Add(´REP_HINI, REP_HFIM, MOD_NOME, REP_TIPO, REP_SALNUMERO,´);
data.ibqrep.Sql.Add(´Fun1.FUN_NOME, REP_OBS, Fun2.FUN_NOME, REP_DTCAD, REP_VALOR´);
data.ibqrep.Sql.Add(´from REPOSICAO, Matricula, Modulos, Funcionarios Fun1,´);
data.ibqrep.Sql.Add(´Funcionarios Fun2 where (MAT_MATRI= REP_MATALUNO) and´);
data.ibqrep.Sql.Add(´(MOD_NUMERO=REP_MODULO) and (Fun1.FUN_MATRI = REP_PROFESSOR)´);
data.ibqrep.Sql.Add(´and (REP_FUNMATRI = Fun2.FUN_MATRI)´);
data.ibqrep.Sql.Add(´and ´ + ComboBox1.Text + ´ LIKE ´ + Edit1.Text + ´¬´);
data.ibqrep.Open;
Valeu a força!!
JR.
GOSTEI 0
Jrjoliv2003
05/07/2004
Mudei de :
data.ibqrep.Sql.Add(´and ´ + ComboBox1.Text + ´ LIKE ´ + Edit1.Text
+ ´¬´);
Para:
data.ibqrep.Sql.Add(´and ´ + ComboBox1.Text + ´ LIKE ´´¬´ + Edit1.Text
+ ´¬´´´);
(Repare nas aspas)
Beleza!! Começou a funcionar.
Só que a filtragem não está coerente!!
Por exemplo:
Tenho os nomes:
Amarildo
Cecília
Camila
Se digito c (minúsculo) não a acontece nada;
Se digito ca (mínúsculo) ele filtra aparecendo somente Cecília e não Camila;
Se dígito ama (mínúsculo) ele filtra aparecendo o nome Camila e não Amarildo;
O nome Amarildo aparece se digitar 3 letras e a primeria em minúscula;
Se digito alguma letra maiúscula não parece nada;
Gostaria que ao digitar a primeira ele já filtrasse.
O que devo fazer?
Valeu a força!!!
JR.
data.ibqrep.Sql.Add(´and ´ + ComboBox1.Text + ´ LIKE ´ + Edit1.Text
+ ´¬´);
Para:
data.ibqrep.Sql.Add(´and ´ + ComboBox1.Text + ´ LIKE ´´¬´ + Edit1.Text
+ ´¬´´´);
(Repare nas aspas)
Beleza!! Começou a funcionar.
Só que a filtragem não está coerente!!
Por exemplo:
Tenho os nomes:
Amarildo
Cecília
Camila
Se digito c (minúsculo) não a acontece nada;
Se digito ca (mínúsculo) ele filtra aparecendo somente Cecília e não Camila;
Se dígito ama (mínúsculo) ele filtra aparecendo o nome Camila e não Amarildo;
O nome Amarildo aparece se digitar 3 letras e a primeria em minúscula;
Se digito alguma letra maiúscula não parece nada;
Gostaria que ao digitar a primeira ele já filtrasse.
O que devo fazer?
Valeu a força!!!
JR.
GOSTEI 0
Jrjoliv2003
05/07/2004
Ninguém tem uma idéia?
Tá funcionando só que a filtragm não está adequada!!
Valeu!!
JR. :?
Tá funcionando só que a filtragm não está adequada!!
Valeu!!
JR. :?
GOSTEI 0
Rômulo Barros
05/07/2004
Mude para:
:wink: Upper e UpperCase // Convertem para maiúsculo
data.ibqrep.Sql.Add(´and Upper(´ + ComboBox1.Text +´) LIKE ´´¬´ + UpperCase(Edit1.Text) + ´¬´´´);
:wink: Upper e UpperCase // Convertem para maiúsculo
GOSTEI 0
Jrjoliv2003
05/07/2004
Nesse caso eu teria que gravar no banco de dados em maiúsculas, certo?
Como posso fazer isso?
Uso Interbase..
Valeu Força!!!
JR.
Como posso fazer isso?
Uso Interbase..
Valeu Força!!!
JR.
GOSTEI 0
Rômulo Barros
05/07/2004
[quote:832525d6e5=´Meu amigo´]Nesse caso eu teria que gravar no banco de dados em maiúsculas, certo? [/quote:832525d6e5]
Não. Perceba que o commando UPPER já seleciona(select) os dados transformando-os para maiúsculos. Já o commando UpperCase converte o conteúdo do Edit para Maiúsculo. Por isso, do jeito que tiver no banco(Camila,CaMiLA,CAMIla,camiLA) os dados serão selecionados.
Não. Perceba que o commando UPPER já seleciona(select) os dados transformando-os para maiúsculos. Já o commando UpperCase converte o conteúdo do Edit para Maiúsculo. Por isso, do jeito que tiver no banco(Camila,CaMiLA,CAMIla,camiLA) os dados serão selecionados.
GOSTEI 0
Jrjoliv2003
05/07/2004
Beleza!!! Vou testar e te envio resposta!!!
Valeu!!
JR.
Valeu!!
JR.
GOSTEI 0
Jrjoliv2003
05/07/2004
Resolvidoooooooooooo:
A última linha ficou assim:
data.ibqrep.Sql.Add(´and Upper(´+ ComboBox1.Text + ´) LIKE ´ + ´´´´ + UpperCase(Edit1.Text) + ´¬´+ ´´´´);
Assim ele já converte para maiúsculas tanto os dados do BD quanto os digitados no edit.
Também está fazendo a filtragem conforme digitação.
Valeu!!!
JR.
A última linha ficou assim:
data.ibqrep.Sql.Add(´and Upper(´+ ComboBox1.Text + ´) LIKE ´ + ´´´´ + UpperCase(Edit1.Text) + ´¬´+ ´´´´);
Assim ele já converte para maiúsculas tanto os dados do BD quanto os digitados no edit.
Também está fazendo a filtragem conforme digitação.
Valeu!!!
JR.
GOSTEI 0