Home > Class Reference > ENSLIB namespace > %ZEN.Report.group
Private  Storage   


class %ZEN.Report.group extends reportNode

Defines a group within a ZEN Report.


Parameters Properties Methods Queries Indices ForeignKeys Triggers
24 18


%hasquery OnCreateResultSet breakOnExpression breakOnField
call callArgument callClass children
excelSheetName fields filter ifexpression
name orderby parameters queryClass
queryName removeEmpty runonce runtimeMode
sql sqlexpression suppressExcelHeaders top

%AddToSaveSet %AncestorHasRightSibling %ClassIsLatestVersion %ClassName
%ConstructClone %DispatchClassMethod %DispatchGetModified %DispatchGetProperty
%DispatchMethod %DispatchSetModified %DispatchSetMultidimProperty %DispatchSetProperty
%Extends %GetParameter %IsA %IsModified
%MakeLabel %New %NormalizeObject %ObjectModified
%OriginalNamespace %PackageName %QuoteValue %QuoteValueL10N
%RemoveFromSaveSet %SerializeObject %SetModified %ValidateObject
%hasBreakDefined %hasQueryDefined DumpCallElements DumpCalls
DumpGets DumpIncludes GetXML GetXMLFromCall
HorlogToExcelDateTime IncludeXdata Qualify TimeToExcelTime
XMLDTD XMLExport XMLExportToStream XMLExportToString
XMLNew XMLSchema XMLSchemaNamespace XMLSchemaType
dumpElementStore getClassName



• property %hasquery as %ZEN.Datatype.boolean(XMLPROJECTION="none") [ InitialExpression = 0 ];
• property OnCreateResultSet as %ZEN.Datatype.delegator(FORMALSPEC="*tSC:%Status,*pParameters:%String",RETURNTYPE="%ResultSet");
Name of callback method to call to create a %ResultSet object. This must be the name of an instance method within the report class.
An example callback would look something like this:
ClassMethod RS1(ByRef pSC As %Status, ByRef pParms) As %ResultSet
	 Set pSC = $$$OK
	 Set tRS = ##class(%ResultSet.SQL).%Prepare("SELECT Name FROM Sample.Person WHERE Home_City = ? ORDER BY Name",.tError,"",pParms(1))
	 If ($IsObject(tError)) {
	 	Set pSC = tError.Status
	 Quit tRS
• property breakOnExpression as %ZEN.Datatype.expression;
Optional ObjectScript expression that can either be applied to the grouping value of this group (as %val), or to provide an arbitrary value.
• property breakOnField as %ZEN.Datatype.classMember(MEMBERTYPE="SQLCOLUMN");
Name of field (column) in the base query for this report that supply the value for collecting members of this group.
• property call as %ZEN.Datatype.string;
call that will supply XML
• property callArgument as %ZEN.Datatype.string;
If non-null will provide an argument passed to call
• property callClass as %ZEN.Datatype.string;
class for call that will supply XML, can be blank in which case current class used if set to 0, call is called as instance method
Set of nodes contained within this group.
• property excelSheetName as %ZEN.Datatype.string;
name of worksheet when group represents an Excel worksheet
• property fields as %ZEN.Datatype.string(MAXLEN=500);
Name of fields (columns) in the base query for this report that will supply the values for this item.
• property filter as %ZEN.Datatype.integer;
When a query is present and expression filter is 0, row is skipped
• property ifexpression as %ZEN.Datatype.string [ InitialExpression = 1 ];
• property name as %ZEN.Datatype.string [ InitialExpression = ..%ClassName(0),Required ];
XML element name used for this group.
If not provided a default will be supplied.
• property orderby as %ZEN.Datatype.string;
comma separated list of fields by which the group will be sorted
• property parameters as list of %ZEN.Report.parameter(XMLNAME="parameter",XMLPROJECTION="ELEMENT");
User-defined list of query parameters. These are used to supply parameter values for the query associated with this group.
• property queryClass as %ZEN.Datatype.className;
(optional) Name of the class containing the class query that will be used to create a %ResultSet object.
This property is only used if queryName is defined. If this property is not defined, then it is assumed that the current report class contains the specified query.
• property queryName as %ZEN.Datatype.classMember(MEMBERTYPE="QUERY");
(optional) Name of the class query that will be used to create a %ResultSet object.
• property removeEmpty as %ZEN.Datatype.boolean [ InitialExpression = -1 ];
Remove empty XML elments If not provided a default of -1 (inherit from parent) will be supplied.
• property runonce as %ZEN.Datatype.boolean [ InitialExpression = 0 ];
Execute elements with report or group once, causes sql, query and resultset to be ignored
• property runtimeMode as %ZEN.Datatype.integer(VALUELIST=",0,1,2") [ InitialExpression = 2 ];
(optional) Runtime mode applied to the %ResultSet object used to fetch results for this report.
• property sql as %ZEN.Datatype.sql;
(optional) SQL statement that, if present, will be used to create a %ResultSet object.
If defined, this takes precedence over queryClass and queryName and sqlexpression.
• property sqlexpression as %ZEN.Datatype.string(MAXLEN="");
(optional) SQL statement in expression form that, if present, will be used to create a %ResultSet object.
• property suppressExcelHeaders as %ZEN.Datatype.boolean;
True if ExcelHeaders are to be suppressed on group or report
• property top as %ZEN.Datatype.integer;
When a query is present this induces effect of "SELECT TOP ..top Query"


• method %AncestorHasRightSibling()
• method %MakeLabel(pLevel As %Integer)
• classmethod %QuoteValue(pValue As %String)
Take a value string and return a quoted string.
• classmethod %QuoteValueL10N(pValue As %String, pDomain As %String)
Take a value string and return a quoted string wrapped within a $$$Text macro.
If value starts and ends with #( )#, then return an expression
• method %hasBreakDefined() as %Boolean
Test if this group has a break defined
• method %hasQueryDefined() as %Boolean
Test if this group has a query defined.
• method DumpCallElements(pCode As %CharacterStream, ByRef pCalls As %ZEN.Report.call, pLevel As %Integer) as %Status
• method DumpCalls(pReport As %ZEN.Report.reportNode, pCode As %CharacterStream, ByRef pCalls As %ZEN.Report.call, pLevel As %Integer) as %Status
• classmethod DumpGets(pCode As %CharacterStream, ByRef pGets As %ZEN.Report.include) as %Status
• classmethod DumpIncludes(pCode As %CharacterStream, ByRef pIncludes As %ZEN.Report.include) as %Status
• classmethod GetXML(pCode As %CharacterStream, host As %String, port As %String, url As %String) as %Status
• classmethod GetXMLFromCall(pCode As %CharacterStream, method As %String, parmName As %String, hasStatus As %Boolean) as %Status
• method HorlogToExcelDateTime(pReport, pCode, pNode, pNodeExpr, pLevel)
• classmethod IncludeXdata(pCode As %CharacterStream, ClassName As %String, XdataName As %String) as %Status
• classmethod Qualify(xpath As %String, prefix As %String)
• method TimeToExcelTime(pReport, pCode, pNode, pNodeExpr, pLevel)
• method dumpElementStore(pReport As %ZEN.Report.reportNode, pCode As %CharacterStream, pLevel As %Integer)
• classmethod getClassName(tNode)