Checks whether the dataset is unidirectional, and if so, raises an EDatabaseError exception.
Returns False, indicating that a matching record was not found and the active record was not changed.
Descendant classes that are not unidirectional override this method so that it locates the record where the fields identified by the semicolon-separated list of fields in KeyFields have the values specified by the Variant or Variant array KeyValues. Options indicates whether the search is case insensitive and whether partial matches are supported. Locate returns True if a record is found that matches the specified criteria and that record is now active.