class %BI.MinerUtils
extends %BI.MinerParams
Hyperindex Utilities class
Parameters
|
Properties
|
Methods
|
Queries
|
Indices
|
ForeignKeys
|
Triggers
|
|
|
22
|
|
|
|
|
classmethod AddCond(Class, CondRow, Query)
as %Status
Add a new (Compound) condition to ^SpeedI.Hi
classmethod Boolean(Class, Prop, Params, Cat)
classmethod Date(Class, Prop, Params, Cat, nullidx, nullptr, complex, DateFormat, sclass, linkprop, addcond)
Hyperindex on date fields.
Params: none (yet)
classmethod DelCond(Class, CondRow)
as %Status
Add a new (Compound) condition to ^SpeedI.Hi
classmethod Delete(Class, Id)
as %Status
delete record Id
classmethod FastRebuild(class, SortSize=256)
as %Status
Fast rebuild of one class
classmethod HiRebuildAll(init=1, fast=1)
as %Status
Rebuild ^SpeedI.Hi for ALL classes.
This method will delete all existing conditions (total rebuild) if the
init parameter is set (default = 1).
Then it will call either the FastRebuild (if parameter fast = 1 (default))
or the normal Rebuild, for each class that has such a method.
classmethod Next(Class, Cond, Col)
as %Integer
Finds the next column number after Col in condition# Cond for Class.
Starts at null, returns null if no more
classmethod Number(Class, Prop, Params, Cat, nullidx, nullptr, complex)
Hyperindex on Number fields.
Params: none (yet)
classmethod Parse(ByRef def)
as %Status
Parse def into def(n)=$lb(type,category,params)
def is list of type specs, can have params and category
e.g. Values,Words[Text contains](3,0),Range[Age Range](-50,51-)
classmethod Print(Class)
classmethod Ranges(Class, Prop, Params, Cat, nullidx, nullptr, complex, iRange)
Hyperindex on a set of ranges.
Params: [from]-to,from-to,from-to,from-to,...,from-[to]
[ assumes non-overlapping, increasing ranges ]
[ negative numbers must be enclosed in paren, eg "(-100)-50" means -100 to 50]
classmethod Reference(Class, Prop, Params, Cat, nullidx, nullptr, complex, sclass, linkprop, addcond)
Hyperindex on a reference (do not index nulls).
Params:List of attribute name(s) to display in the condition description
Note this cannot be resolved at %OnAfterSave time because the values in the
referenced record may change, so I store the condition as (eg)
[oid]Name,DOB and the front-end tool must resolve at display time
classmethod RunFile(File)
Run the File, using whatever tool has been set up for the
extension (eg MsWord for .doc, TextPad for .txt, etc)
Called from List.frm in VB
The quotes are needed in case the filename contains spaces (etc)
classmethod SetCompoundConditionsOneRecord(Class, Id)
as %Status
set all compound conditions for record Id
classmethod StreamWords(Class, Prop, Params, Cat)
Hyperindex on each word in the (line-oriented) text-characterstream Prop.
Words are defined as strings delimited by or punctuation.
Purely numeric and/or punctuation are ignored.
The stream is expected to be line-oriented (contains CR/LF every < 32000 chars)
Params: minlength,punc
minlength = minimum number length to index
punc = strip punctuation (1=yes)
classmethod Time(Class, Prop, Params, Cat, nullidx, nullptr, complex)
Hyperindex on time fields.
Params: none (yet)
classmethod TimeRanges(Class, Prop, Params, Cat)
Split a time field into its various ranges.
Params: [from]-to,from-to,from-to,from-to,...,from-[to]
Each from/to must be valid time (accepted by $zth(x))
[ assumes non-overlapping, increasing ranges ]
classmethod ToString(bitstring, length)
Converts bitstring to string of zeroes and ones
classmethod UpdateCompoundConditions(Class)
as %Status
Loop through the compound (user-defined) conditions
and set the bits for them. Note this can be slow !
classmethod Values(Class, Prop, Params, Cat, nullidx, nullptr, complex, sclass, linkprop, addcond)
Hyperindex on each value. : Params: Startswith[(maxchars)]
classmethod Words(Class, Prop, Params, Cat, nullidx, nullptr, complex, sclass, linkprop, addcond)
Hyperindex on each word in the string.
Words are defined as strings delimited by or punctuation
Purely numeric and/or punctuation are ignored
Params: minlength,punc
minlength = minimum number length to index
punc = strip punctuation (1=yes)