This is documentation for Caché & Ensemble.

For information on converting to InterSystems IRISOpens in a new window, see the InterSystems IRIS Migration Guide and Migrating to InterSystems IRIS, both available on the WRC Distributions pageOpens in a new window (login required).


abstract class %ZEN.Report.Display.COSChart.abstractController extends %ZEN.Report.Display.node

Property Inventory (Including Private)

Method Inventory (Including Private)


parameter DEFAULTVISIBLE = 0;
This component is not visible.

Properties (Including Private)

property defaultSeries as %ZEN.Datatype.integer (MINVAL = 1) [ Final , InitialExpression = 1 ];
Optional. If a DataModel has multiple dataSeries, then this specifies which DataSeries (1-based) should be used to provide values to DataViews that can only display values from one data series (such as a form).
Property methods: defaultSeriesDisplayToLogical(), defaultSeriesGet(), defaultSeriesIsValid(), defaultSeriesLogicalToDisplay(), defaultSeriesLogicalToOdbc(), defaultSeriesNormalize(), defaultSeriesSet()
property modelError as %ZEN.Datatype.string (XMLPROJECTION = "none") [ Final ];
Most recent error message reported by the DataModel object this dataController is connected to. This is set to a non-empty string after a save, load, or delete operation encounters an error.
Property methods: modelErrorDisplayToLogical(), modelErrorGet(), modelErrorIsValid(), modelErrorLogicalToDisplay(), modelErrorLogicalToOdbc(), modelErrorNormalize(), modelErrorSet()
property modelId as %ZEN.Datatype.string (ZENEXPRESSION = 1) [ Final ];
ID value passed to the DataModel class.
You can change this value using the client-side setModelId() method. This will cause a new object to be loaded into the controller.
Property methods: modelIdDisplayToLogical(), modelIdGet(), modelIdIsValid(), modelIdLogicalToDisplay(), modelIdLogicalToOdbc(), modelIdNormalize(), modelIdSet()
property readOnly as %ZEN.Datatype.boolean [ Final , InitialExpression = 0 ];
If true, this data controller is read only regardless of whether its corresponding data model is read only or not.
Property methods: readOnlyDisplayToLogical(), readOnlyGet(), readOnlyIsValid(), readOnlyLogicalToDisplay(), readOnlyLogicalToOdbc(), readOnlyLogicalToXSD(), readOnlyNormalize(), readOnlySet(), readOnlyXSDToLogical()

Methods (Including Private)

classmethod %DeleteModelInstance(pClass As %String, pID As %String) as %Status
Delete an instance of a DataModel object.
method %GetDataByName(pProperty As %String)
Get a data value, by property name, from this dataController.
method %GetModelPropertyList(Output pSC As %Status) as %String
Return a comma-delimited list of the properties contained in the current DataModel class.
A property in the list may include type and label information in the form:
method %GetTypeByName(pProperty As %String)
Get a data type, by property name, from this dataController.
private method %OnNew(initvalue As %CacheString) as %Status
Inherited description: This callback method is invoked by the %New() method to provide notification that a new instance of an object is being created.

If this method returns an error then the object will not be created.

It is passed the arguments provided in the %New call. When customizing this method, override the arguments with whatever variables and types you expect to receive from %New(). For example, if you're going to call %New, passing 2 arguments, %OnNew's signature could be:

Method %OnNew(dob as %Date = "", name as %Name = "") as %Status If instead of returning a %Status code this returns an oref and this oref is a subclass of the current class then this oref will be the one returned to the caller of %New method.

method %SetDataByName(pProperty As %String, pValue As %String)
Set a data value, by property name, into this dataController.
clientmethod createNewObject() [ Language = javascript ]
Ask our associated dataModel to create a new (unsaved) instance.
clientmethod deleteId(id) [ Language = javascript ]
Ask our associated dataModel to delete the item with the given id. Returns true if the delete was successful. If the dataModel is readOnly, then the delete will not happen.
method execValidationCode(property, value)
Internal method.
Execute client side validation code for this controller.
method getData(d1, d2, d3)
dataSet API Return the data contained in the specified location. Location is 0-based;
method getDataAsArrays(ByRef values)
This is a specialized variant of getData() that return the data in this controller as an array of arrays (used by charts).
clientmethod getDataAsObject(series) [ Language = javascript ]
TBD - 08/29/2012 JSL This is a specialized variant of getData() that returns the data in this controller as a zenProxy object (associative array).
The return value of this object is a zenProxy object with properties that correspond to the properties of the current Data Model object. The value of each property in the returned object corresponds to the value in the Data Model object.
If the Data Model supports more than one data series, then the series parameter (0-based) specifies which series to use (the default is series 0).
Refer to the %ZEN.proxyObject for more details.
method getDataByName(property, series)
dataBag API Get a data value, by property name, from this dataController.
method getDimSize(dim)
dataSet API Return the number of items in the specified dimension (dim is 1,2, or 3).
method getDimensions()
dataSet API Return number of dimensions within the dataModel. There are 2 dimensions: The first is the set of properties, the second has a typical size of 1.
The second dimension may be larger than 1 in cases where the model serves multiple series for a given model instance. (Such as when providing mulitple data series for charts).
method getError()
Return the latest error message encountered by this data controller. Call this after a save, load, or delete operation to test if an error occurred.
This will return '' if there is no current error.
method getLabel(n, dim)
dataSet API Get the label at position n (0-based) in the given dimension (1,2, or 3).
method getModelId()
Return the current model id associated with this dataController.
method getPropertyName(n)
Given a 0-based index, return the corresponding property name.
method getTypeByName(property)
Get the type code for a property given its name.
clientmethod hasData() [ Language = javascript ]
Return true if this controller currently contains data loaded from a DataModel.
clientmethod invokeAction(action, data) [ Language = javascript ]
Invoke a named action on our associated dataModel. An action is an arbitrary operation that is defined by a specific dataModel class. data is an arbitary value passed along with the action.
method isModelReadOnly()
Test if the current data model is read-only.
method isPropertyValid(property, value)
Test if a given value for a property is valid.
clientmethod save() [ Language = javascript ]
Save data from this dataController back to the DataModel on the server. Return the id with which the model was saved or '' if it was not saved.
method setData(value, d1, d2, d3)
dataSet API Set the data contained in the specified location. Location is 0-based;
method setDataByName(property, value, series)
dataBag API Set a data value, by property name, into this dataController.
If property is "%id", then change the id of this controller.
If property is "%series", then change the defaultSeries of this controller.
clientmethod setModelId(id) [ Language = javascript ]
TBD 08-29-2012 JSL Set the value of the modelId property for this controller. This will cause new data to be loaded and any views connected to this controller to refresh.
This is equivalent to calling setProperty('modelId',id) and is defined for convenience.
clientmethod setProperty(property, value, value2) [ Language = javascript ]
TBD - 08-29-2012 JSL, not clear how to invoke super Set the value of a named property.

Inherited Members

Inherited Properties (Including Private)

Inherited Methods (Including Private)


FeedbackOpens in a new window