Abstract base class for calculation results. After a calculation has been executed the results can be found here. This class must be extended to
implement a specialized results class that is suited for a concrete calculations implementation.
Inheritance Hierarchy
Spotfire.Dxp.Framework.DocumentModel Node
Spotfire.Dxp.Framework.DocumentModel DocumentNode
Spotfire.Dxp.Application.Calculations CalculationResults
Spotfire.Dxp.Application.Calculations.DataRelationships DataRelationshipsCalculationResults
Namespace: Spotfire.Dxp.Application.Calculations
Assembly: Spotfire.Dxp.Application (in Spotfire.Dxp.Application.dll) Version: 18.10.8513.5432 (18.10.8513.5432)
Syntax
Remarks
Examples
public class MyCalculationResults : CalculationResults { #region Classes for property names public new abstract class PropertyNames : CalculationResults.PropertyNames { //empty } #endregion // Classes for property names #region Classes for result identifiers public new abstract class CalculationResultsIdentifiers : CalculationResults.CalculationResultsIdentifiers { public static readonly CalculationResultsIdentifier MySpecialColumn = CreateIdentifier("MySpecialColumn"); public static readonly CalculationResultsIdentifier MyLumpedTogetherColumns = CreateIdentifier("MyLumpedTogetherColumns"); public static readonly CalculationResultsIdentifier MyNewTable = CreateIdentifier("MyNewTable"); } #endregion #region Public properties public DataColumn MySpecialColumn { get { ColumnsCalculationResult res = GetColumnsResult(CalculationResultsIdentifiers.MySpecialColumn); //check that the user hasn't removed the table or the column if (res == null || res.Columns.Count == 0) { return null; } return res.Columns[0]; } } public IEnumerable<DataColumn> MyLumpedTogetherColumns { get { ColumnsCalculationResult res = GetColumnsResult(CalculationResultsIdentifiers.MyLumpedTogetherColumns); if (res == null) { return null; } return res.Columns; } } public DataTable MyNewTable { get { ColumnsCalculationResult res = GetColumnsResult(CalculationResultsIdentifiers.MyNewTable); if (res == null) { return null; } //this will always work even if all the columns in the table are deleted. Thus it is preferable to asking a resultcolumn for //its ancestor column return res.DataTable; } } #endregion // Public properties #region Construction public MyCalculationResults() { } #endregion // Construction #region ISerializable Members protected MyCalculationResults(SerializationInfo info, StreamingContext context) : base(info, context) { } protected override void GetObjectData(SerializationInfo info, StreamingContext context) { base.GetObjectData(info, context); } #endregion }
Version Information
See Also