Implement this method to perform the actual calculation.
Namespace: Spotfire.Dxp.Application.CalculationsAssembly: Spotfire.Dxp.Application (in Spotfire.Dxp.Application.dll) Version: 18.10.8513.5432 (18.10.8513.5432)
Syntax
Parameters
- resultAccumulator
- Type: Spotfire.Dxp.Application.Calculations ResultAccumulator
The container to add resultcolumns etc. to
Remarks
Examples
protected override void CalculateCore(ResultAccumulator resultAccumulator) { //Get one or more column builders. ColumnBuilder<double> builder = GetColumnBuilder<double>(col.Name); // Perform the calculation and add items to the builder. ... builder.AddItem(2.0) ... // Naming combined with updates, deletions and uniqueness can be a surprisingly tricky thing. // This is one relatively hasslefree way of dealing with naming where the user doesn't get to name the table but // possibly the calculation itself. We let the framework take care of making names unique. // Then the user can only rename the table through the normal rename table interface in Data Table Properties. Alternatively it can // be renamed explicitly by the user in the update step. If the UI wants to pre-check // uniqueness remember the update scenario so you don't include the tablename you are about to update in the taken names. string targetTableName = null; if (CalculationResults.MyNewTable == null) { targetTableName = CalculationSettings.GetAncestor<Calculation>().Name; } else { targetTableName = CalculationResults.MyNewTable.Name; } //add a completely new table resultAccumulator.AddTable(MyCalculationResults.CalculationResultsIdentifiers.MyNewTable, targetTableName, myColumnBuilders); //and add some columns to an existing table resultAccumulator.AddColumns(MyCalculationResults.CalculationResultsIdentifiers.MyColumn, CalculationSettings.TableToPutResultIn, builder); }
Version Information
See Also