This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.

For information on migrating to InterSystems IRIS, see Why Migrate to InterSystems IRIS?

%iKnow.Filters.SqlFilter

class %iKnow.Filters.SqlFilter extends %iKnow.Filters.Filter

Sample filter implementation restricting sources based on a SQL query result. This SQL query can select from any regular SQL table or view accessible from the namespace the filter is instantiated from. The query should select sources through returning either of the following as result columns (case sensitive!):

Filter parameters:

  1. domainId As %Integer
  2. sqlQuery As %String - query to filter by

WARNING: these filters are not invalidated automatically if the values in the tables accessed by the supplied SQL query change. It is up to the user to decide, based on the specifics of the environment, whether filter instances of this class can be cached meaningfully (see the useCache parameter of Initialize()) and/or should be invalidated explicitly (see Invalidate() or ClearCachedFilter()).

Property Inventory

Method Inventory

Properties

property SqlQuery as %String;
Property methods: SqlQueryDisplayToLogical(), SqlQueryGet(), SqlQueryIsValid(), SqlQueryLogicalToDisplay(), SqlQueryLogicalToOdbc(), SqlQueryNormalize(), SqlQuerySet()

Methods

method ToString() as %String
Inherited description:

Subclasses should implement this method to build a string representation of the filter instance. It should start with the filter class name, followed by a pipe (|) character and then a string representation that can be interpreted by its RestoreFilterFromStringInternal() implementation.

Inherited Members

Inherited Properties

Inherited Methods

Feedback