Finds and returns a record in the current recordset using a filter expression.
This method returns the next record in the current recordset matching the filter. Searching starts with the record following the current record. If the current record is before the first record in the recordset, searching starts with the first record.
If there are no more records in the recordset, or no records that match the filter expression, this method throws an exception: "Caught VHI Exception in GetItem(); ElementDoesNotExist". (This does not happen in Java.)
Using Filter Expressions
Some of the methods in the .NET connector allow you to use filter expressions when fetching records from a recordset. The syntax you can use to build filter expressions is:
condition_statement=condition_expression
You can use expressions on both the left and right sides of the condition statement. Be sure to enclose data in quotation marks.
Condition Expressions
AND | condition_expression AND condition_expression |
OR | condition_expression OR condition_expression |
NOT | NOT condition_expression |
Equal to | value_expression = value_expression |
Equal to (case insensitive) | value_expression =* value_expression |
Not equal to | value_expression <> value_expression |
Less than | value_expression < value_expression |
Greater than | value_expression > value_expression |
Less than or equal to | value_expression <= value_expression |
Greater than or equal to | value_expression >= value_expression ( ) (multiple condition_expressions) |
Value Expressions
A value expression can take any of the following:
Filter Expression Examples
This example returns all records in the patients recordset that are not "Smith":
patients.lastname <> "Smith"
This example returns the exact same set of records as the preceding example:
NOT (patients.lastname = "Smith")
This example returns all records in the SearchResults recordset with the last name "Smith" and first name "Steven":
(SearchResults.LastName = "Smith") and (SearchResults.FirstName =* "Steven")
This example returns all fields in the AccountNumbers recordset greater than or equal to 10000 and less than or equal to 20000:
(AccountNumbers.Accounts >= 10000) and (AccountNumbers.Accounts <= 20000)
Exception Type | Condition |
---|---|
HostIntegratorModelDefException | Thrown if the filter expression is not valid |
HostIntegratorModelDefException | Thrown if there is no current recordset |
HostIntegratorConnectorException | Thrown if there are no more records |
HostIntegratorConnectorException | Thrown if there are no records matching the filter expression |
HostIntegratorConnectorException | Thrown if client is not connected |
HostIntegratorException | Thrown if the connection is for metadata only |
HostIntegratorSession Class | WRQ.Verastream.HostIntegrator Namespace | HostIntegratorSession.NextRecord Overload List