title: How to use a RecordSet.Find with TADOQuery?
body: <p>In this question:</p>
  
  <p><a href="https://stackoverflow.com/questions/28231727/delphi-ado-locate-with-dataset-filter-on-bug">Delphi ADO : Locate with dataset filter on bug</a></p>
  
  <p>an ADO bug was described where the Filter string is ignored during .Locates.</p>
  
  <p>This is causing problems for us migrating from the BDE because we have a lot of code that changes the filter according to user input.</p>
  
  <p>We had expected TADOQuery to provide a working migration path. We were wrong.</p>
  
  <p>We can of course change our current filters to WHERE statements, but that's a lot of work and risk concatenating the filter strings to filter-less WHERE statements, etc.</p>
  
  <p>The accepted answer to the question linked to above suggests the possibility of using <a href="https://msdn.microsoft.com/en-us/library/ee275542(v=bts.10).aspx" rel="nofollow noreferrer">TCustomADODataSet.Recordset.Find</a>  </p>
  
  <p>Can we safely use RecordSet.Find in a TADOQuery just to implement .Locates? i.e. Does RecordSet.Find update whatever wrapper TADOQuery puts around TADOQuery?</p>
  
  <p>If so, can someone show a sample call from Delphi XE5 to RecordSet find? I'm having trouble figuring out the arguments.</p>