Home > Class Reference > ENSLIB namespace > %ZEN.Auxiliary.QueryInfo


class %ZEN.Auxiliary.QueryInfo extends %Library.RegisteredObject

This is a server-class used to pass information specifying how to build a result set object.
This is used by classes that inherit from the querySource class. Some of these properties are only relevant for tables.

Property Inventory

Method Inventory


property columnExpression as %ZEN.Datatype.string [ MultiDimensional ];
Optional SQL expression to use for a column, subcripted by column name:
..columnExpression(colname) = expr
This will be provided for tables that use *auto sql* mode.
Property methods: columnExpressionDisplayToLogical(), columnExpressionGet(), columnExpressionIsValid(), columnExpressionLogicalToDisplay(), columnExpressionLogicalToOdbc(), columnExpressionNormalize(), columnExpressionSet()
property columnName as %ZEN.Datatype.string;
Name of column used to provide data. This is used for tables that are auto-generated when no other column information is available.
Property methods: columnNameDisplayToLogical(), columnNameGet(), columnNameIsValid(), columnNameLogicalToDisplay(), columnNameLogicalToOdbc(), columnNameNormalize(), columnNameSet()
property columns as %ZEN.Datatype.string [ MultiDimensional ];
Names of columns within the query, subcripted by column number:
..columns(n) = colName
This will be provided for tables that use *auto sql* mode.
Property methods: columnsDisplayToLogical(), columnsGet(), columnsIsValid(), columnsLogicalToDisplay(), columnsLogicalToOdbc(), columnsNormalize(), columnsSet()
property filterOps as %ZEN.Datatype.string [ MultiDimensional ];
Set of column filter operations subscripted by column name:
..filterOps(colName) = op
Where op is an SQL operation: %STARTSWITH, =, etc.
Property methods: filterOpsDisplayToLogical(), filterOpsGet(), filterOpsIsValid(), filterOpsLogicalToDisplay(), filterOpsLogicalToOdbc(), filterOpsNormalize(), filterOpsSet()
property filterTypes as %ZEN.Datatype.string [ MultiDimensional ];
Set of column filter types subscripted by column name:
..filterTypes(colName) = type
Property methods: filterTypesDisplayToLogical(), filterTypesGet(), filterTypesIsValid(), filterTypesLogicalToDisplay(), filterTypesLogicalToOdbc(), filterTypesNormalize(), filterTypesSet()
property filters as %ZEN.Datatype.string [ MultiDimensional ];
Set of column filter values subscripted by column name:
..filters(colName) = filterValue
Property methods: filtersDisplayToLogical(), filtersGet(), filtersIsValid(), filtersLogicalToDisplay(), filtersLogicalToOdbc(), filtersNormalize(), filtersSet()
property groupByClause as %ZEN.Datatype.string;
Optional GROUP BY clause for tables in *auto sql* mode.
Property methods: groupByClauseDisplayToLogical(), groupByClauseGet(), groupByClauseIsValid(), groupByClauseLogicalToDisplay(), groupByClauseLogicalToOdbc(), groupByClauseNormalize(), groupByClauseSet()
property orderByClause as %ZEN.Datatype.string;
Optional ORDER BY clause for tables in *auto sql* mode.
Property methods: orderByClauseDisplayToLogical(), orderByClauseGet(), orderByClauseIsValid(), orderByClauseLogicalToDisplay(), orderByClauseLogicalToOdbc(), orderByClauseNormalize(), orderByClauseSet()
property parms as %ZEN.Datatype.string [ MultiDimensional ];
Set of query parameter values subscripted by parameter number:
..parms(n) = value
Property methods: parmsDisplayToLogical(), parmsGet(), parmsIsValid(), parmsLogicalToDisplay(), parmsLogicalToOdbc(), parmsNormalize(), parmsSet()
property queryExecuted as %ZEN.Datatype.boolean [ InitialExpression = 0 ];
Output property.
Set this property to true in OnCreateResultSet method to indicate that the newly created ResultSet has already been executed.
Property methods: queryExecutedDisplayToLogical(), queryExecutedGet(), queryExecutedIsValid(), queryExecutedLogicalToDisplay(), queryExecutedLogicalToOdbc(), queryExecutedNormalize(), queryExecutedSet()
property queryText as %ZEN.Datatype.string;
Output property.
This is also used for the output of the %CreateQuery() method.
When a query is executed, the text of the query (either sql or query name) is placed here (for diagnostic purposes).
Property methods: queryTextDisplayToLogical(), queryTextGet(), queryTextIsValid(), queryTextLogicalToDisplay(), queryTextLogicalToOdbc(), queryTextNormalize(), queryTextSet()
property rowCount as %ZEN.Datatype.string;
Output property.
Query will place number of rows in query here if it wants to report this value to the client.
Property methods: rowCountDisplayToLogical(), rowCountGet(), rowCountIsValid(), rowCountLogicalToDisplay(), rowCountLogicalToOdbc(), rowCountNormalize(), rowCountSet()
property rows as %ZEN.Datatype.integer;
The number of rows that the component will display. For a "snapshot" query this will be the size of the snapshot.
Property methods: rowsDisplayToLogical(), rowsGet(), rowsIsValid(), rowsLogicalToDisplay(), rowsLogicalToOdbc(), rowsNormalize(), rowsSet()
property sortColumn as %ZEN.Datatype.string;
Optional name of column to sort results by. If the table is in *auto sql* mode, then this is used as the first part of the generated ORDER BY clause.
Property methods: sortColumnDisplayToLogical(), sortColumnGet(), sortColumnIsValid(), sortColumnLogicalToDisplay(), sortColumnLogicalToOdbc(), sortColumnNormalize(), sortColumnSet()
property sortOrder as %ZEN.Datatype.string (VALUELIST = ",asc,desc");
Specifies direction of sorting, if any. This applies to the column specified by sortColumn.
Property methods: sortOrderDisplayToLogical(), sortOrderGet(), sortOrderIsValid(), sortOrderLogicalToDisplay(), sortOrderLogicalToOdbc(), sortOrderNormalize(), sortOrderSet()
property tableName as %ZEN.Datatype.string;
Name of table used to provide data. This will be provided for tables that use *auto sql* mode.
Property methods: tableNameDisplayToLogical(), tableNameGet(), tableNameIsValid(), tableNameLogicalToDisplay(), tableNameLogicalToOdbc(), tableNameNormalize(), tableNameSet()
property whereClause as %ZEN.Datatype.string;
Optional WHERE clause for tables in *auto sql* mode.
Property methods: whereClauseDisplayToLogical(), whereClauseGet(), whereClauseIsValid(), whereClauseLogicalToDisplay(), whereClauseLogicalToOdbc(), whereClauseNormalize(), whereClauseSet()


method %CreateSQL(pComputeRowCount As %Boolean = 1, pInfo As %ZEN.Auxiliary.QueryInfo) as %Status [ Language = objectscript ]
Utility method: construct a (very simple) SQL statement based on the specifications contains within this object's properties. The resulting query is placed within the queryText property.
classmethod %IsValidSQLName(pName As %String) as %Boolean [ Language = objectscript ]
Test if pName is a valid SQL name.
classmethod QuoteSQL(pVal As %String, pType As %String = "") [ Language = objectscript ]
Take a value and return an SQL literal (with quotes and escaped quotes as needed).
pType is the "filter" type: if "date" quote as ODBC literal.

Inherited Members

Inherited Methods