GARANTIR DESCONTO

Fórum Como tratar erro de Registro duplicado ??? #187130

08/10/2003

0

E aí galera, blz ?
Fiz um form para cadastro de produtos, porém no meu botão ´salvar´ tenho que verificar se os dados já existe na tabela antes de postar os dados na tabela... tentei o seguinte:

begin
if not dm.tb_mainclass.Locate(´descricao´,DBEdit2.Text,[locaseinsensitive,lopartialkey])then
begin
DM.TB_mainclass.Post;
Stb_1.Panels[1].Text :=´Registro Salvo´;
end
else
begin
showmessage (´Item já cadastrado´);
end
end;

Mais o delphi manda sempre ´Item já cadastrado´ , mesmo que o iten ainda não esteja cadastrado!
Como faço isso ^?^
Se alguém puder ajudar ...
obrigado


Ederbond

Ederbond

Responder

Posts

08/10/2003

Cristiane.spl

olá ,
tente tirar o lopartialkey para ver se da certo


Responder

Gostei + 0

08/10/2003

Leanribas

o que acontece no seu caso é o seguinte , antes de vc executar o locate a sua tabela esta em inserção certo, quando vc executa o locate e gravado altomaticamente o seu registro, pq vc estava em inserção e pediu para o dataset executar um locate, é por isso que aparece sempre a mensgem item já cadastrado, pq na verdade vc acabou de cadastrar ele sem querer.

Para vc resolver isso vc pode criar uma Qry temporaria apenas para vc fazer a consulta ao banco de dados sem mexer no DataSet tb_mainclass


Falou.
Leandro


Responder

Gostei + 0

08/10/2003

Ederbond

Valeu galera... agora só não sei como criar uma Qry temporária... só sei fazer clicando lá na paleta e iserindo ela no meu data module.


Responder

Gostei + 0

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

Aceitar