Learning
Documentation
Community
Open Exchange
Global Masters
Home / Class Reference / ENSLIB namespace / %ZEN.FinderUtils
Private  Storage   

%ZEN.FinderUtils


class %ZEN.FinderUtils extends
%RegisteredObject

This class contains methods that can be used to provide contents for the %ZEN.ComponentEx.finderPane component.

Inventory


Parameters Properties Methods Queries Indices ForeignKeys Triggers
1 9


Summary


Methods
%AddToSaveSet %ClassIsLatestVersion %ClassName %ConstructClone
%DispatchClassMethod %DispatchGetModified %DispatchGetProperty %DispatchMethod
%DispatchSetModified %DispatchSetMultidimProperty %DispatchSetProperty %Extends
%GetArrayForNamespaces %GetArrayForQuery %GetClassListArray %GetParameter
%GetQueryListArray %GetViewListArray %IsA %IsModified
%New %NormalizeObject %ObjectModified %OriginalNamespace
%PackageName %RemoveFromSaveSet %SerializeObject %SetModified
%ValidateObject evaluateExpression mactime sortData


Parameters


• parameter DOMAIN = "%ZEN";

Methods


• classmethod %GetArrayForNamespaces(ByRef pParameters, Output pMetaData, Output pData) as %Status
This method returns array of namespaces for finderDialog
• classmethod %GetArrayForQuery(pQueryClass As %String, pQueryName As %String, pColumns As %List, pDelim As %String = ".", ByRef pParameters, Output pMetaData, Output pData) as %Status
Execute the given class query and return the results in an array that can be used by the finder.
The query must return the following data:
"name" - name of the item.
"value" - id of the item.
"type" - type (extension) of the item.
"date" - last modified date of the item.
pColumns is a $List containing the names of the columns that supply the above data: $LB(name,value,type,date).
pDelim is the delimiter used to separate the name into groups.
The search criteria are passed in the array pParameters. These include:
pParameters("sort") -- this can be "name" or "date", default is "name"
(refer to the %GetClassListArray for details on "sort").
• classmethod %GetClassListArray(ByRef pParameters, Output pMetaData, Output pData) as %Status
Search for classes that match the input criteria and return them in an array that can be used by the finder.
The search criteria are passed in the array pParameters. These include:
pParameters("sub") -- include all subclasses of this class, but not the class itself
pParameters("super") -- include this class and all subclasses
pParameters("search") -- only return items that include this as (any) part of the name
-- the search is case-insensitive
pParameters("system") -- 1 : only find classes whose System flag is set
-- 0 : only find classes whose System flag is off
-- otherwise : no filter on system flag
pParameters("percent") -- 1 : only find classes whose name starts with %
-- 0 : only find classes whose name does not start with %
-- otherwise : no filter on percent flag
pParameters("product") -- 1 : only find classes that are mapped to a product database, e.g. ENSLIB
-- 0 : only find classes that are not mapped to a product database
-- otherwise : no filter on product flag
pParameters("generated") -- 1 : only find classes that are generated
-- 0 : only find classes that are not generated
-- otherwise : no filter on generated flag
pParameters("context") -- 1 : only find classes that are either persistent, serial, or datatype, no other classtypes
-- 0 : only find classes that are not persistent, serial, or datatype
-- otherwise : no filter on generated flag. note: the value of "context" overrides "persistent" and/or "datatype"
pParameters("abstract") -- 1 : include abstract classes
-- 0 : skip abstract classes
-- otherwise : no filter on abstract flag
pParameters("persistent") -- 1 : only find classes whose classtype is persistent
-- 0 : only find classes whose classtype is not persistent
-- otherwise : no filter on classtype being persistent
pParameters("datatype") -- 1 : only find classes whose classtype is datatype
-- 0 : only find classes whose classtype is not datatype
-- otherwise : no filter on classtype being datatype
pParameters("production") -- 1 : only find Ensemble Production classes
-- otherwise : no filter on class being a Production
pParameters("sort") -- this can be "name" or "date" or "namecasesensitive", default is "name"
  • "name":
    Return the array organized by names (case-insensitive sort!).
    This list should be hierarchical by package.
  • "date":
    Return items by last modified date (and do not split by package).
    Organize dates into the following buckets:
    • "Today"
    • "Yesterday" (option)
    • "Earlier this week" (option)
    • "Last Week" (the closest Sunday to Saturday period that does not contain Today)
    • "Older than last week"
    Within each bucket have one level (with complete class name) ordered by modified date.
  • "namecasesensitive":
    Return the array organized by names allowing for case-sensitivity.
    This list should be hierarchical by name.
• classmethod %GetQueryListArray(ByRef pParameters, Output pMetaData, Output pData) as %Status
Search stored procedures for routine that return result sets and can be used as data source for automated queries and return them in an array that can be used by the finder.
• classmethod %GetViewListArray(ByRef pParameters, Output pMetaData, Output pData) as %Status
Search stored views for routine that return result sets and can be used as data source for automated queries and return them in an array that can be used by the finder.
• classmethod evaluateExpression(pExpression, %pOneRow)
• classmethod mactime(pDateTime As %String = "") as %String
• classmethod sortData(pInputData, %pOutputData, pSort, pDelim)