Puoi utilizzare il metodo Locate del componente ADOTable per localizzare un record in base al contenuto di un campo della tabella.
Il metodo accetta 3 parametri: il primo richiede il campo (o i campi) sui quali effettuare la ricerca, il secondo permette di specificare i valori da ricercare nel campo (o nei campi), il terzo consente di specificare opzioni aggiuntive per la ricerca.
Ad esempio, supponiamo di dover ricercare nella tabella il valore "Roma" nel campo CITTA, scriveremo:
codice:
ADOTable1.Locate('CITTA', 'Roma', [loCaseInsensitive]);
C'è da precisare una cosa: il metodo Locate sposta il cursore del DataSet (la ADOTable) sul record corrispondente al criterio di ricerca; siccome possiedi una DBGrid associata, anch'essa si adeguerà alla selezione spostando il puntatore della riga corrente sul record individuato. E' una precisione importante poichè se intendi svolgere più di una ricerca per elaborare i dati nei singoli record, la griglia rifletterà ogni spostamento mostrandone l'effetto a video (che potrebbe essere spiacevole) e rallentando le operazioni.
Come soluzione, potresti adottare una seconda ADOTable non legata ad una griglia oppure disabilitare l'aggiornamento dei DataControl usando i metodi appositi EnableControls e DisableControls:
codice:
ADOTable1.DisableControls;
try
ADOTable1.Locate('CITTA', 'Roma', [loCaseInsensitive]);
finally
ADOTable1.EnableControls;
end;
Buon lavoro!