Cita:
Empezado por kman
Comprendí tu ejemplo, e inclusive lo puedo aplicar para algunos casos en mi proyecto
|
En tu caso, creo que lo mejor es lanzar una consulta contra la base de datos para deteriminar si un código está duplicado o no:
supongamos que qDup es un TQuery (o equivalente) tiene el siguiente SQL
Código SQL
[-]
Select count(*) contador from tabla where codigo = :codigo;
en el evento on validate podríamos hacer algo como:
Código Delphi
[-]
if TablaCodigo.IsNull then
else begin
qDup.ParamByName('codigo').AsInteger := tablaCodigo.AsInteger;
qDup.Open;
try
if qDupCONTADOR.AsInteger > 0 then
raise Exception.CreateFmt('Error: el código %d ya existe y no puede '
+ 'ser duplicado. Verifique!', [tablaCodigo.AsInteger]);
finally
qDup.Close;
end;
end;
Hasta luego.