Fórum FindKey em MySQL????? #235973

03/06/2004

0

Olá pessoal,

Estou precisando fazer um código simples, mas em MySQL não está dando certo. Vejam o código:

[color=red:2707f587e9]If Not DMDados.TBProfessores.FindKey([DMDados.TBDetProfCodigoDoProfessor.Value]) Then[/color:2707f587e9] Begin ShowMessage(´Professor não cadastrado.´); DBEdit2.SetFocus; Exit; End;


O erro acontece já na primeira linha (em vermelho). Vejam o erro:

[Error] UFrmCadDetProfessor.pas(273): Undeclared identifier:´FindKey´


Como posso corrigir isso?

Grato,

Ilano.


Ilanocf

Ilanocf

Responder

Posts

03/06/2004

Poeta Noturno

Como vai Ilano?

Olha, por que você não tenta começar a trabalhar com o locate? É uma das funções de busca mais utilizada pelos programadores (assim li em uma edição da clubedelphi).

Tenta alterar para este código:

If Not DMDados.TBProfessores.Locate(´campo´, DMDados.TBDetProfCodigoDoProfessor.Value, []) Then
Begin
ShowMessage(´Professor não cadastrado.´);
DBEdit2.SetFocus;
Exit;
End;

Espero ter ajudado nesta!

Um abraço

Poeta Noturno


Responder

Gostei + 0

03/06/2004

Roy

Olá Colegas!
O código que nosso amigo Poeta Noturno enviou teria que dar certo, não uso o Zeos, portanto não sei qual o problema, mas vc deve estar fazendo algo errado. O único lugar onde achei que poderia haver dúvida seria onde nosso amigo colocou:

If Not DMDados.TBProfessores.Locate(´campo´, DMDados.TBDetProfCodigoDoProfessor.Value, []) Then

´campo´ se refere ao nome do campo em sua tabela por exemplo:
CODIGO


Responder

Gostei + 0

04/06/2004

Sandra

Ilano,

Não estaria faltando declarar as units DB, DBTables ou ambas na Uses? De repente...


Responder

Gostei + 0

04/06/2004

Ilanocf

Olha só pessoal,

Eu já coloquei DB, DBTables, alterei o código para [b:77ab4b69f4]Locate[/b:77ab4b69f4]:

If Not DMDados.TBProfessores.Locate([DMDados.TBDetProfCodigoDoProfessor.Value]) Then Begin ShowMessage(´Professor não cadastrado.´); DBEdit2.SetFocus; Exit; End;


Mas nada! Então diz:

[Error] UFrmCadDetProfessor.pas(289): Ordinal type required



Responder

Gostei + 0

04/06/2004

Roy

Dá uma olhada no seu código, pois o mesmo está errado:

If Not DMDados.TBProfessores.Locate([DMDados.TBDetProfCodigoDoProfessor.Value]) Then
Begin
ShowMessage(´Professor não cadastrado.´);
DBEdit2.SetFocus;
Exit;
End;


o certo é:

If Not DMDados.TBProfessores.Locate(´CODIGO´, DMDados.TBDetProfCodigoDoProfessor.Value,[]) Then
Begin
ShowMessage(´Professor não cadastrado.´);
DBEdit2.SetFocus;
Exit;
End;

Onde ´CODIGO´ é o nome do campo na tabela.


Responder

Gostei + 0

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

Aceitar