Delphi - CONTROL DE ERRORES

 
Vista:

CONTROL DE ERRORES

Publicado por Marina (64 intervenciones) el 17/01/2001 00:00:00
En una estructura try ... except estoy capturando errores.
Tengo lo siguiente:

try
// sentencias
except on E:Exception do
begin
if (E is EDBEngineError) then
Muestro un mensaje
else
Muestro otro mensaje


Se me produce un error de clave repetida (por lo tanto es de tipo EDBEngineError), pero en el programa no muestra el mensaje de EDBEngineError, sino que pasa por el else.
En el código fuente del proyecto creé una instancia de HookExceptions, para ver el mensaje con detalles, esto también me confirma que el error detectado es 9729 - key violation, pero el programa no responde como debería.
Si en el else muestro el mensaje con E:Message, me devuelve "Operation aborted".

Ya probé todo lo que se me ocurrió y no se que más hacer.
Cuál puede ser el problema?

Agradecería mucho a quien pueda ayudarme

Marina
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:CONTROL DE ERRORES

Publicado por Amilcar Tirado (23 intervenciones) el 22/01/2001 00:00:00
prueba con esto, colócalo en el evento OnPostError de la tabla:
begin
if (E is EDBEngineError) then
if (E as EDBEngineError).Errors[0].ErrorCode = 9729 then
begin
Application.MessageBox(´Código duplicado´,
´Atención´,MB_OK);
Abort;
end;
end;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar