Grrrr.... Alguem ae me ajuda

13/02/2003

0

Ae galera. to com um probleminha no Table1.setKey

Table1.setKey;
Table1.fieldByName(´descricao´).asString := edit1.text;
if table1.gotoKey then showmessage(´achou´);

Isso teria que dar certo, só que ele fala que o Table1 nao ta em Edit ou Insert mode...

Porque ??


Nildo

Nildo

Responder

Posts

13/02/2003

Navoid

cara tu tais tentado mudar o conteudo de um campo
por isso ele dá a mensagem
eu num sei o que faiz o setkey e o gottokey, só sei que pra alterar o valor de um campo vc tem que estar inserindo ou editando um registro.

até


Responder

13/02/2003

Mecq_clayton

Well não sei bem se ajuda mas tente subustituir a linha abaixo:

Table1.setKey;

por:

Table1.EditKey;

Por favor poste no forúm caso funcione.


Responder

13/02/2003

Nildo

o SetKey dubstitue o Edit ou Insert.

O SetKey abilita o modo pesquisa no TTable.
Conforme voce atribue o FieldByname como um valor, ele pesquisa de acordo com o valor que voce atribuiu no FieldByname.

o GotoKey retorna true se posiciona no registro correspondente ao da pesquisa.
o GotoNearest vai para o mais próximo do registro.

Concluindo, eu nao to tentando mudar o conteudo. Isto faz parte da pesquisa.

Da um F1 em cima da palavra setKey no delphi e veja no Exemplo!


Responder

13/02/2003

Nildo

mac_kleyiton...

deu o mesmo erro na hora da atribuicao de valores


Responder

13/02/2003

Mecq_clayton

Well BINGO tenta ai:

Table1.EditKey;
Table1.setKey;
Table1.fieldByName(´Name´).asString := edit1.text;
if table1.gotoKey then
begin
showmessage(´achou´);
end;

Poste no forúm os resultados.


Responder

14/02/2003

Mecq_clayton

Well ai funcionou?


Responder

14/02/2003

Nildo

Mesmo erro. Ele da o mesmo erro na hora da atribuição


Responder

14/02/2003

Rosset

Table1.IndexFieldNames:=´Codigo´; //indexa a table pelo campo codigo
Table1.SetKey; //coloca em modo de pesquisa
if FindKey([eCodigo.text]) then
begin
eCodigo.text:= Table1.FieldByName(´Codigo´).AsString;

e assim por diante !!!


Responder

14/02/2003

Nildo

Valew rosset. vou testar...

Mas e se eu quiser procurar o campo que o ´codigo´ for eCodigo.text e a ´descricao´ for eDescricao.text ?


Responder

14/02/2003

Anonymous

Table1.IndexFieldNames:=´Codigo´; //indexa a table pelo campo codigo
Table1.SetKey; //coloca em modo de pesquisa
if FindKey([eCodigo.text]) then
begin
eDescricao.text:= Table1.FieldByName(´Descricao´).AsString;

e assim por diante !!!

ISSO??


Responder

14/02/2003

Nildo

Queria procurar o registro que o campo DESCRICAO for ´Teste´ e que o campo NOME for ´Nome do produto´


Responder

14/02/2003

Anonymous

Table1.IndexFieldNames:=´NomeDoProduto´; //indexa a table pelo campo codigo
Table1.SetKey; //coloca em modo de pesquisa
if Table1.FindKey([eProduto.text]) then
if Table1.Locate(eDescricao.text,Table1.FieldByName´Descricao´).AsString;
begin
eDescricao.text:= Table1.FieldByName(´Descricao´).AsString;
//outras linhas
end;

SÓ NÃO SEI SE A LINHA DO LOCATE É BEM ASSIM MAS É +- ASIMM..


e assim por diante !!!

ISSO??


Responder

14/02/2003

Mecq_clayton

Ué eu fiz um exemplo aqui e funcionou com as linha que eu te mandei!!!!


Responder

14/02/2003

Nildo

meq_cleyiton, eu me lembrei agora que nao estou utilizando índice hehehe
to com problemas no meu locate. da uma olhada no tópico Problemas com Locate

valew


Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar