luizdspinola
-
Posts
7 -
Joined
-
Last visited
Content Type
Profiles
Forums
Events
Posts posted by luizdspinola
-
-
Olá a todos.
Estou com uma dificuldade ao desenvolver uma inserção no banco de dados.
Tenho um campo auto inc personalizado que é gerenciado pela aplicação, utiliso try/except combinado com EDatabaseError para administrar erro caso aconteça tentativa de inserção duplicada mas a execução interrompe sem passar pelo except
Vejam o codigo abaixo:
procedure insere_dados(NUMERO: INTEGER):
begin
try
TABELA.FieldByName('INC').AsString:= NUMERO; //CHAVE PRIMARIA
TABELA.FieldByName('DATA').AsString:= DateToStr(now);
TABELA.FieldByName('USUARIO').AsString:= ID_Usuario;
TABELA.Post;
TABELA.ApplyUpdates; //ATUALIZA BASE DE DADOS
MessageDlg('Informações inseridas com sucesso.', mtInformation, [mbOK]);
except
on E: Exception do
begin
TABELA.Cancel;
TABELA.CancelUpdates; //CANCELA ATUALIZACAO
NUMERO:= NUMERO+1; //INCREMENTA NUMERO
insere(NUMERO); //CHAMA A PROC NOVAMENTE
end;end;
-
Estou com umprojeto unigui e ultimamente começões a trava a página e fecha a placação.
No log grava a mensagem abaixo:
[TUniGUIServerModule.HandleException]:EAccessViolation : Access violation at address 00A802EB in module 'WebSete.exe'. Read of address 00000000 : Addr: $00A802EB
Alguem pode me ajudar
-
Ok
thanks
-
-
-
Ola pessoal.
Estou trabalhando com unigui a pouco tempo, desenvolvendo aplicação para controle de estoque.
O aplicativo começou a encerrar sozinho, sem mensagem de erro, sem registro de log, e isso não acontece no pc de desenvolvimento, somente no PC do cliente.
alguem já passou por essa situação?
Try/Except eDataBaseError in Unigui
in Deployment
Posted
Hello everybody. I'm having a hard time developing a database insert. I have a custom auto inc field that is managed by the application, I use try/except combined with EDatabaseError to handle error if duplicate insertion attempt happens but execution interrupts without going through except See the code:
procedure insere_dados(NUMERO: INTEGER):
begin
try
TABELA.FieldByName('INC').AsString:= NUMERO; //CHAVE PRIMARIA
TABELA.FieldByName('DATA').AsString:= DateToStr(now);
TABELA.FieldByName('USUARIO').AsString:= ID_Usuario;
TABELA.Post;
TABELA.ApplyUpdates; //ATUALIZA BASE DE DADOS
MessageDlg('Informações inseridas com sucesso.', mtInformation, [mbOK]);
except
on eDataBaseError do //or EFDDBEngineException
begin
TABELA.Cancel;
TABELA.CancelUpdates; //CANCELA ATUALIZACAO
NUMERO:= NUMERO+1; //INCREMENTA NUMERO
insere(NUMERO); //CHAMA A PROC NOVAMENTE
end;
end;