Indicates a filter for data in a Recordset.
Sets or returns a Variant value, which can contain one of the following:
· Criteria string ¾ a string made up of one or more individual clauses concatenated with AND.
· Array of bookmarks ¾ an array of unique bookmark values that point to records in the Recordset object.
· One of the following FilterGroupEnum values:
Constant |
Value |
Description |
adFilterNone |
0 |
Removes the current filter and restores all records to view. |
adFilterPendingRecords |
1 |
Allows you to view only records that have changed but have not yet been sent to the server. Only applicable for batch update mode. |
adFilterAffectedRecords |
2 |
Allows you to view only records affected by the last Delete, Resync, UpdateBatch, or CancelBatch call. |
adFilterFetchedRecords |
3 |
Allows you to view records in the current cache, that is, the results of the last fetch from the database. |
Use the Filter property to selectively screen out records in a Recordset object. The filtered Recordset becomes the current cursor. This affects other properties such as AbsolutePosition, AbsolutePage, RecordCount, and PageCount that return values based on the current cursor, since setting the Filter property to a specific value will move the current record to the first record that satisfies the new value.
The criteria string is made up of clauses in the form FieldName-Operator-Value (for example, "LastName = 'Smith'"). You can create compound clauses by concatenating individual clauses with AND (for example, "LastName = 'Smith' AND FirstName = 'John'"). Use the following guidelines for criteria strings:
· FieldName must be a valid field name from the Recordset. If the field name contains spaces, you must enclose the name in square brackets.
· Operator must be one of the following: <, >, <=, >=, <>, =, LIKE.
· Value is the value with which you will compare the field values (for example, 'Smith', #8/24/95#, 12.345 or $50.00). Use single quotes with strings and pound signs (#) with dates. For numbers, you can use decimal points, dollar signs, and scientific notation. If Operator is LIKE, Value can use wildcards. Only the asterisk (*) and percent sign (%) wild cards are allowed, and they must be the last character in the string. Value may not be Null.
The filter constants make it easier to resolve individual record conflicts during batch update mode by allowing you to view, for example, only those records that were affected during the last UpdateBatch method call.
Setting the Filter property itself may fail because of a conflict with the underlying data (for example, a record has already been deleted by another user); in such a case, the provider returns warnings to the Errors collection but does not halt program execution. A run-time error occurs only if there are conflicts on all the requested records. Use the Status property to locate records with conflicts.
Setting the Filter property to a zero-length string ("") has the same effect as using the adFilterNone constant; in either case, the current record does not change.
See the Bookmark property for an explanation of bookmark values from which you can build an array to use with the Filter property.