Excepciones en delphi

Por fi, lo necesito con urgencia.
Es que tengo que controlar el hecho de que se deje un campo requerido sin rellenasr, el hecho de que se dupliquen datos, el hecho de que un valor numérico no esté comprendido entre dos valores. Alguien me ha dicho que se hace con condicionales, pero se me presenta el siguiente problema. Por ejemplo, para el campo requerido, yo compruebo que ese dato se haya introducido con una simple condición campo.text<>'' pero el problema es que como a continuación tengo echo un post, en el caso de que esté vacío no rompe la ejecución y a continuación hace el post, cuando no tendría que hacerlo, si no que tendría que darme un error, el error me lo da, que es el mensaje que yo le mando escribir, pero sigue con la ejecución del programa. Estoy haciéndolo bien, o habría que utilizar las excepciones, no se exactamente como se usan, si alguien me pudiera poner un ejemplo lo agradecería enomrmemente. Gracias por vuestro tiempo.

1 respuesta

Respuesta
1
Usar las excepciones de Delphi es muy fácil.
Try
//Aqui el codigo que puede petar
Except
//Aquí pones el código que se ejecutara en el caso que pete. En mi caso he optado por mostrar el mensaje de error.
On e:exception do
showmessage(e.message);
End;
Vale, pero no sè que significar e.message, por favor, me puedes poner un ejemplo sencillo. Es que así no me queda muy clara cada una de las partes y que significan. Gracias por adelantado.
En este caso concreto mostraba uno de los métodos del objeto e de tipo exception que te muestran el mensaje de error generado.
Esto es lo más común, pero puedes poner el código que más te convenga.
En este ejemplo añado el error a la base de datos:
var
q:tquery;
begin
try
table1.post;
except
on e:exception do begin
q := tquery.create(nil);
q.databasename := ...;
q.sql.add('insert into error (nombreerror) values (:perror)');
q.parambyname('perror').AsString := e.message;
q.execsql;
end;
end;

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas