Wenn der von dir gesuchte Datensatz bereits in der offenen
Query enthalten ist, dann würde sich Lösung 3 anbieten:
Query.Locate('Nachname;Vorname', VarArrayOf(['Schmidt', 'G']), [loCaseInsensitive, loPartialKey]);
Der gefundene Datensatz wird zum aktuellen Datensatz - ohne dein Zutun.
marabu