InterSystems IRIS Data Platform 2020.4 > Class Reference > ENSLIB namespace > %DeepSee.KPIPlugIn

%DeepSee.KPIPlugIn

abstract class %DeepSee.KPIPlugIn extends %DeepSee.KPI

Subclasses of this class are used to implement analytic "plug-ins" for DeepSee.

Property Inventory (Including Private)

Method Inventory (Including Private)

Parameters

parameter ASYNC = 1;
Inherited description: If true, then this KPI can be executed asychronously.
parameter BASECUBE;
Cube that this plug-in is based on. This determines which cubes (or subject areas based on this cube) can see this plug-in. This can be a comma-delimited list. The cube name(s) should not be enclosed with [].
parameter CACHEABLE = 1;
Inherited description: If true, then results for this KPI can be cached.
parameter LISTINGFIELDS;
If defined, this the field list (RETURN clause) of the listing used to supply data for this plug-in.
parameter LISTINGSOURCE = SourceTable;
Specifies the source of the listing data used by this plugin: "SourceTable" - the data source supplies the listing values; "FactTable" - the fact table supplies the listing values.
parameter PLUGINTYPE = Pivot;
Specifies the type of this plug-in. This indicates the context in which this plug-in is used.
"Pivot" -- the plug-in is visible within the Analyzer dimension tree.
"Aggregate" -- the plug-in is not visible within the Analyzer dimension tree.
parameter PUBLIC = 0;
By default, plug-ins are not visible to dashboards.

Properties (Including Private)

property %factCount as %Integer;
Number of facts in the "listing" that is driving this KPI.
Property methods: %factCountDisplayToLogical(), %factCountGet(), %factCountIsValid(), %factCountLogicalToDisplay(), %factCountNormalize(), %factCountSet()
property %plugInListingKey as %String;
Property methods: %plugInListingKeyDisplayToLogical(), %plugInListingKeyGet(), %plugInListingKeyIsValid(), %plugInListingKeyLogicalToDisplay(), %plugInListingKeyLogicalToOdbc(), %plugInListingKeyNormalize(), %plugInListingKeySet()
property %sqlResultSet as %SQL.StatementResult;
Iterator for SQL results that will drive the computation of this plugin.
Property methods: %sqlResultSetGet(), %sqlResultSetGetSwizzled(), %sqlResultSetIsValid(), %sqlResultSetNewObject(), %sqlResultSetSet()

Methods (Including Private)

classmethod %GetBaseCube() as %String [ Language = objectscript ]
Return the cube(s) this KPI is based on.
classmethod %GetPlugInType() as %String [ Language = objectscript ]
Return the type of this plug in.
classmethod %GetSourceType() as %String [ Language = objectscript ]
Return the sourceType for this KPI. Always "custom" for plugins.
method %OnCompute(pSQLRS As %SQL.StatementResult, Output pFactCount As %Integer) as %Status [ Language = objectscript ]
Compute value(s) for this plug-in.
pSQLRS is an SQL result set (%SQL.StatementResult) that will iterate over a set of facts and provide the base data for the calculations.
pFactCount Is the number of facts in the set.
Plug-in classes should implement this method to perform their calculations.
method %OnComputeKPITimestamp(ByRef pTimestamp As %String, pSourceType As %String, pQueryText As %String = "") as %Status [ Language = objectscript ]
Compute and return the KPI cache timestamp for the current KPI result.
method %OnGetAnalysisResultSet(Output pRS As %SQL.StatementResult, pSQL As %String) as %Status [ Language = objectscript ]
Return an %SQL.StatementResult object that will iterate over the facts used for analysis.
classmethod %OnGetFilterMembers(pFilter As %String, Output pMembers As %List, pSearchKey As %String = "", pDataSourceName As %String = "", ByRef pFilterValues As %String) as %Status [ Language = objectscript ]
Callback to get additional members for a KPI filter. This takes the form:
pMembers($I(pMembers))=$LB(text,value)
In this case, return members for certain "built-in" filters such as "%cube" and "%measure".
method %OnGetListingFields() as %String [ Language = objectscript ]
Returns the field list (RETURN clause) of the listing used to supply data for this plug-in.
method %OnGetListingMaxRows() as %String [ Language = objectscript ]
Returns the MDX MAXROWS clause for the drillthrough query used to supply data for this plug-in.
method %OnGetListingOrderBy() as %String [ Language = objectscript ]
Returns the MDX %ORDER BY clause for the drillthrough query used to supply data for this plug-in.
method %OnGetListingSource() as %String [ Language = objectscript ]
Returns the source of the listing data used by this plugin: "SourceTable" - the data source supplies the listing values; "FactTable" - the fact table supplies the listing values.
method %OnGetMDX(ByRef pMDX As %String) as %Status [ Language = objectscript ]
This callback defines the default MDX query used for analysis. It also checks for the current values in the filters.
By default, select all facts from the first base cube.
This may be overridden by subclasses.
final method %OnLoadKPI() as %Status [ Language = objectscript ]
Notification that this KPI is being executed.
In this case, we compute the value of this plug-in by setting up the context and invoking the %OnCompute() method.
Plug-in classes should implement the %OnCompute() method.

Inherited Members

Inherited Properties (Including Private)

Inherited Methods (Including Private)

Subclasses

Feedback