Como deixar um formulário em modo de inserção e edição ???

Delphi

11/02/2004

Saudações a todos... como faço para que um formulário que é o cadastro de Entrada de um controle de estoque que quando for inserida uma nota fiscal já cadastrada o formulário passe do modo de Inserção para o modo de edição.

Para inserir um novo registro estou usando : dtm.tblEntrada.Insert;

Mas dai quando é cadastrada uma NF que já foi cadastrada é mostrada uma mensagem de violação de chave primária.

Obrigado a todos ate +


Jeancainelli

Jeancainelli

Curtidas 0

Respostas

Vinicius2k

Vinicius2k

11/02/2004

Colega,

Vc pode checar no OnExit do Edit com o número, com uma query , por exemplo, se o número da N.F já existe... se existir vc aborta a inserção, localiza o registro na tabela e entra em modo de edição...

Essa é só a idéia geral... se quiser posta outra vez q a gente te ajuda com o código...

Espero ter ajudado...

T+


GOSTEI 0
Aroldo Zanela

Aroldo Zanela

11/02/2004

Colega,

Faça uma pesquisa antes, a seguir utilize o método apropriado, por exemplo:

If dtm.tblEntrada.Locate(´cnpj;numero´, VarArrayOf([cCNPJ, cNumero]), []) then
 dtm.tblEntrada.Edit
else
 dtm.tblEntrada.Append;



GOSTEI 0
Jeancainelli

Jeancainelli

11/02/2004

Amigos...

Não entendi o funcionamento desta :
If dtm.tblEntrada.Locate(´cnpj;numero´, VarArrayOf([cCNPJ, cNumero]), []) then
dtm.tblEntrada.Edit
else
dtm.tblEntrada.Append;


Também não consegui realizar a pesquiza para saber se ja foi digitado a NF,

Tenho como principais campos da pesquisa :

NumNota : integer; //Numero da NF
CodFor : integer //Codigo do Fornecedor
Serie : string; // Serie da NF


GOSTEI 0
POSTAR