deprecatedclass %ZEN.Report.group
extends reportNode
Defines a group within a ZEN Report.
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"
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)