Galera....não aguento mais esses erros de violação de acesso....
eu nunca sei qual o erro, onde está, o que fazer....
é o seguinte...
num cadastro, faço o incremento de um campo via código...
está assim..
procedure Tdm.tblCadProBeforePost(DataSet: TDataSet);
begin
if not tblCadPro.FieldByName('PROCOD').IsNull then
Exit;
dm.Query1.DatabaseName := tblCadPro.DatabaseName;
dm.Query1 := dm.Query1.Create(nil);
try
dm.Query1.SQL.Add('SELECT MAX (PROCOD) FROM ESTAPRO.dbf');
dm.Query1.Open;
try
tblCadPro.FieldByName('PROCOD').AsString := FloatToStr(StrToFloat(dm.Query1.Fields[0].AsString)+1);
finally
dm.Query1.Close;
end;
finally
dm.Query1.Free;
end;
end;
aí vou testar o programa.....clico em novo, preencho os campos, e gravo...
ok...tudo certo....o programa gera o código desse produto somando um ao max...
mas se vou cadastrar outro logo em seguida, clico em novo, preencho os campos e aí quando clico em gravar, dá o seguinte erro:
Project winsuperm.exe raised exception class EAccessViolation with message 'Access violation at address 00499E41 in module 'winsuperm.exe'. Read of address 0000001C'.
Pergunta
Gabriel Cabral
Galera....não aguento mais esses erros de violação de acesso....
eu nunca sei qual o erro, onde está, o que fazer....
é o seguinte...
num cadastro, faço o incremento de um campo via código...
está assim..
aí vou testar o programa.....clico em novo, preencho os campos, e gravo...
ok...tudo certo....o programa gera o código desse produto somando um ao max...
mas se vou cadastrar outro logo em seguida, clico em novo, preencho os campos e aí quando clico em gravar, dá o seguinte erro:
Project winsuperm.exe raised exception class EAccessViolation with message 'Access violation at address 00499E41 in module 'winsuperm.exe'. Read of address 0000001C'.
e acusa essas linhas
dm.Query1 := dm.Query1.Create(nil);
e
dm.Query1.Free;
alguém consegue me ajudar ae???
Muito obrigado
Editado por Gabriel CabralLink para o comentário
Compartilhar em outros sites
11 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.