Cita:
Empezado por ecfisa
Hola nefore.
No, no has roto ninguna regla, es un recordatorio que siempre se les hace a los que publican su primer mensaje.
El que los parámetros estén declarados como constantes es a fines de optimización, funcionara del mismo modo quitando el calificador. Y el sentido de enviar como argumento el nombre del campo es para evitar la evaluación del índice (opción) dentro de la función.
Para ese caso es mas simple usar el método Locate:
Código Delphi [-]
begin
if ADOTable1.Locate('DNI', Edit1.Text,[]) then
begin
MessageBox(Handle,'Ya existe un propietario con ese DNI', '', MB_ICONERROR + MB_OK);
Exit;
end;
Ignoro que tipos estás enviando como argumentos a la función, sería bueno si pusieras la declaración de las variables y la parte del código en que realizas la llamada.
Fijate que los parámetros los declaré de tipo string, partiendo del supuesto que campos tales como APELLIDO_NOMBRES no seran de tipo Integer.
Saludos. 
|
Oh, vaya! muchas gracias el ADOTable.Locate ha funcionado! Lo malo es que he tenido que pasar el dni como string para que lo tome, dado que lo tenia como campo numerico en la BD, y aca paso un string del edit (segun tengo entendio).
Pues bien, me ha servido de mucho para la validacion, pero el problema es que aun asi necesito un metodo para buscar con ADOTable con un filtro o algo asi, porque por ejemplo cuando realize la consulta y pedir buscar por nombre y apellido (o por parte de este), utilizaria el Filtro y mostraria los resultados en un db grid.
Igualmente desde ya muchas gracias, te agradezco por la ayuda (ya me estaba volviendo loco). Un paso menos.
