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

%ZEN.Report.group


class %ZEN.Report.group extends reportNode

Defines a group within a ZEN Report.

Inventory


Parameters Properties Methods Queries Indices ForeignKeys Triggers
24 18


Summary


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

Methods
%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

Subclasses
%ZEN.Report.report

Properties


• 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
• property children as list of reportNode(XMLELEMENTREF=1,XMLPROJECTION="ELEMENT",XMLTYPECONSTRAINT="CHOICE");
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"

Methods


• 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)