Fórum Erro de Gravação #299029

10/10/2005

0

Olá amigos, blz?

Estou com um probelma sério. Tenho uma aplicação que contem uma tabela de MOVIMENTAÇÃO, nela existem duas operações: ENTRADA e SAÍDA de cartuchos, usando radiobutton. Ao clicar no entrada, coloco alguns dados e clico no gravar. É gerado um código de movimentaçao, e o status fica como pendente, ou seja, ainda nao enviei o cartucho solicitado para troca. Até aí está funcionando muito bem. Ah, qdo é fornecedor, o estoque é atualizado, e tem um campo origem que diferencia ele do cliente. Qdo tem uma operação de saída, ao clicar no componente, é aberta uma tela de cartuchos pendentes. Escolho um item que será enviado para o usuário, a tabela de movimentaçao entra em modo de ediçao, faço as modificaçoes (data e hora de saída, qtde e quem realizou esta operação). Coloquei um botão atualizar. No primeiro momento, usei o seguinte codigo:

with dmMovimentacao.cdsMovimentacao do
begin
applyupdates;
end;

Aí, deu erro de KEY VIOLATION. Fiz uma modificação...

with dmMovimentacao.cdsMovimentacao do
begin
close;
open;
edit;
applyupdates;
showmessage(´atualizado com sucesso´);
end;

Neste caso, não grava e nem dá mensagem de erro, simplesmente vai para o primeiro registro da tabela.

Gostaria de saber se alguem já viu este tipo de erro, e qual a solução aplicada...

Fico no aguardo, e agradeço desde já pela velha atenção de sempre...

[]´s

Rogério


[quote:9ba868413a=´Roger1976, em outro tópico´]Só uma correção, eu usei APPLYUPDATES(0) no código.[/quote:9ba868413a]


Roger1976

Roger1976

Responder

Posts

11/10/2005

Roger1976

Corrigindo, é APPLYUPDATES(0)....


Responder

Gostei + 0

11/10/2005

Roger1976

Galera, eu descobri o pq estava dando mensagem de KEY VIOLATION. Tinha uma linha de codigo duplicada, que eu havia esquecido de apagar, que estava fazendo a duplicaçao do codigo. Porem, tem um outro problema, qdo eu seleciono um registro do grid que tem os cartuchos pendentes, eu consigo fazer as alterações, visualmente mostra que eu estou alterando o registro que eu selecionei que esta exibido na tela, qdo vejo a tabela no banco, as modificaçoes foram feitas no primeiro registro, independetemente de qual eu escolher. Alguem ja viu um erro deste tipo?

[]´s


Responder

Gostei + 0

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

Aceitar