Class Reference
Cache for UNIX 2018.1.2
InterSystems: The power behind what matters   
Documentation  Search
Private  Storage  

class %iKnow.Filters.GroupFilter extends %iKnow.Filters.Filter

A generic filter to logically combine any number of %iKnow.Filters.Filter subfilter objects using a boolean AND or OR, optionally inverting the result (NOT) if negated is true.

After initially creating a GroupFilter instance, add subfilters to it using AddSubFilter or AddSubFilterString.

Filter parameters:

  1. domainId As %Integer
  2. groupLogic As %Integer - either $$$GROUPFILTERAND or $$$GROUPFILTEROR.
  3. negated As %Boolean - indicates whether or not invert (NOT) the combined filter.


Parameters Properties Methods Queries Indices ForeignKeys Triggers
3 12


DomainId FilteredSourceCount GroupLogic IsCached
Negated Selectivity

%AddToSaveSet %ClassIsLatestVersion %ClassName
%ConstructClone %DispatchClassMethod %DispatchGetModified
%DispatchGetProperty %DispatchMethod %DispatchSetModified
%DispatchSetMultidimProperty %DispatchSetProperty %Extends
%GetParameter %IsA %IsModified
%New %NormalizeObject %ObjectModified
%OriginalNamespace %PackageName %RemoveFromSaveSet
%SerializeObject %SetModified %ValidateObject
AddSubFilter AddSubFilterString CheckResultCache
CheckResultCacheSingle ClearCachedFilter ClearCachedFilters
CreateAsString CreateFromBitstring CreateGroupAsString
FromString GetCRCOccurrenceFilter GetCRCUniqueFilter
GetCcUniqueFilter GetEntityOccurrenceFilter GetEntityUniqueFilter
GetFilteredCcFrequency GetFilteredCcSpread GetFilteredCrcFrequency
GetFilteredCrcSpread GetFilteredEntityFrequency GetFilteredEntitySpread
GetFilteredEntityUniqueCount GetFilteredStemFrequency GetFilteredStemSpread
GetFirstFilteredSource GetNextCRCOccurrenceFilterOffset GetNextCRCUniqueFilterOffset
GetNextCcUniqueFilterOffset GetNextEntityOccurrenceFilterOffset GetNextEntityUniqueFilterOffset
GetNextPathFilterOffset GetNextSourceFilterOffset GetNextSrcId
GetPathFilter GetSourceFilter GetSubFilterAt
GetSubFilterCount Initialize Invalidate
IsFiltered IsValid RestoreFilterFromId
RestoreFilterFromString RestoreFilterFromStringInternal StoreResultCache
StoreResultCacheSingle ToString


• property GroupLogic as %Integer [ Final,InitialExpression = $$$GROUPFILTERAND ];
• property Negated as %Boolean [ Final,InitialExpression = 0 ];


• final method AddSubFilter(SubFilter As %iKnow.Filters.Filter) as %Status

Adds a %iKnow.Filters.Filter object to this instance as a subfilter, which will be ANDed or ORed according to this instances groupLogic property.

• final method AddSubFilterString(SubFilterString As %String) as %Status

Adds a %iKnow.Filters.Filter object in its %String format (see ToString) to this instance as a subfilter, which will be ANDed or ORed according to this instances groupLogic property.

• final method GetSubFilterAt(index As %Integer) as %iKnow.Filters.Filter
Returns the subfilter at the specified index, if any
• final method GetSubFilterCount() as %Integer
Returns the number of subfilters currently registered in this GroupFilter instance.
• classmethod RestoreFilterFromStringInternal(filterSpec As %String) as %iKnow.Filters.Filter

Default implementation, with the filterParams corresponding to all %New arguments. See also RestoreFilterFromString.

• method ToString() as %String

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.

Copyright © 1997-2019, InterSystems Corporation