What’s New in the FlexPro 2017 Object Model

23.08.2021

The following sections include a list of all changes made to the FlexPro Object Model.

The changes in the FlexPro 2017 Automation Object Model from the previous version mostly involve backward compatible extensions. The few changes that may require you to change your code are in red in the text below.

If you want to import macros or Automation code from FlexPro 6 through FlexPro 10 to FlexPro 2017, you should first take a look at the required changes listed in What's New in FlexPro 7's Object Model, What's New in FlexPro 8's Object Model, What's New in FlexPro 9's Object Model and What's New in FlexPro 10's Object Model.

The FlexPro 2017 ribbon cannot yet be customized programmatically. The CommandBars interface of the previous version of FlexPro has been eliminated and will be replaced in a future release of FlexPro with an interface that allows the ribbon to be customized automatically. You will need to remove code fragments used by the CommandBars interface and add your macros to the ribbon manually.

Note:   You can obtain more information about the significant features of the listed objects, methods and properties by clicking on the links.

New Objects

Diagrams

The DiagramStyle object represents a format template for diagrams.

The DiagramTitle object represents a diagram title.

Tables

The TableStyle object represents a format template for diagrams.

The TableGridLines object represents a table grid element.

The ValueObjectCalculations collection represents the list of data object calculations.

The DatabaseIndexer object represents the FlexPro database-based Indexer.

The ColumnTableColumnRowIndex object represents the Z data of a column table.

The ColumnTableColumnConditionalFormat object represents the conditional formatting for the Y data of a table column.

The ColumnTableColumnColumnIndexConditionalFormat object represents the conditional formatting for the Z data of a table column.

The ColumnTableColumnRowIndexConditionalFormat object represents the conditional formatting for the X data of a table column.

The ColumnTableColumnConditionalFormatScaling object represents the scaling of the conditional formatting of a table column.

The ConditionalFormatColoring object represents the coloring of the conditional formatting of a table column or table cell.

The ConditionalFormatBars object represents the coloring of the conditional formatting of a table column or table cell.

The ConditionalFormatPalette object represents the color palette of the conditional formatting of a table column or table cell.

The ColorWithLimit object represents an entry in the color palette of the conditional formatting of a table column or table cell.

The CellTableCellConditionalFormat object represents the conditional formatting of a table cell.

The CellTableCellConditionalFormatScaling object represents the scaling of conditional formatting of a table cell.

Data Import

The TextFileLink object represents a text data link object.

Analysis

The InstantaneousQuantitiesAnalysis object represents the new Instantaneous Quantitiesanalysis object.

Changes to Existing Objects

Indexer

The FileIndexingService object that represents the FlexPro 10 Indexer, has been renamed to FileIndexer.

The FileIndexingService property of the Application object has been renamed to FileIndexer.

Project Database

The Database object has been expanded to include the ThousandSeparator property.

In the Database object, the IndexingEnabled property and the UpdateIndex method have been replaced by the Indexer property, which returns a DatabaseIndexer object. You will have to replace IndexingEnabled in your code with Indexer.Enabled. Instead of calling the UpdateIndex method after an object update, before the object update you will have to set the property Indexer.Synchronized = True.

The DatabaseSelection object, which represents the current marker in the project database, has been expanded to include the Expand method.

The DataQueryItem object has been expanded to include the Connection and DataQueryListElementNaming properties.

Data Objects

In the ValueObject object, the properties DataType, v, DataStructure, Value, NumberOfColumns, NumberOfRows, Range, Comments, CommentsOrName, NameOrComments, NameOrQuantityOrComments, QuantityOrCommentsOrName, Unit, UnitInBrackets, Quantity, Format, LowerRangeLimit, UpperRangeLimit and Timestamp have been expanded to include an optional ListItemIndex argument, which indexes a list item when the data object contains a list. If you omit the argument, the properties will be backward compatible with FlexPro 10.

The ValueObject object, which represents all objects in FlexPro, has been expanded to include the properties ValueHeader and Calculations as well as the CalculationExists method.

A folder in FlexPro 2017 is a data object that returns all data sets it contains as a list. The Folder object is therefore now derived from ValueObject and thus inherits all the properties and methods of ValueObject.

The Signal object, which represents an aggregate data structure, has been expanded to include the ValueHeader property, which you can use to access the header information of individual components.

The Listobject, which represents the List data structure, has been expanded to include the ValueHeader property, which you can use to access the header information of individual list items.

Text

The Text object has been expanded to include the BackgroundColor property.

Diagrams

The Diagram2D object has been expanded to include the Style, Title, BackgroundColor, YAxesArrangement, CorrectAxesSpacing and DynamicAxes properties.

The Diagram3D object has been expanded to include the Style, Title and BackgroundColor properties.

The Axis2D object has been expanded to include the PlotOrder property.

In the Axis2DScaling object, the properties CurrentStartValue, CurrentEndValue, CurrentDivision, CurrentUnit and CurrentUnitInBrackets have been expanded to include an optional ListItemIndex argument, which indexes a list item when the data object contains a list. If you omit the argument, the properties will be backward compatible with FlexPro 10.

In the Axis2DText, Axis3DTextand ColorLegend3DText objects, the data type of the ColorAutomatic property has been changed from Boolean to FpTristate. You will have to replace True in your code with fpTriStateTrue and False with fpTriStateFalse.

The Curve2D object and the Curve3D object have been expanded to include the AutoStyle property.

In the Curve2DDataand Curve3DDataSet objects, the properties YValueObject and XValueObject have been expanded to include an optional ListItemIndex argument, which indexes a list item when the data object contains a list. If you omit the argument, the properties will be backward compatible with FlexPro 10.

In the Curve3DDataSets object the properties YValueObject, XValueObject and ZValueObject have been expanded to include an optional ListItemIndex argument.

In the Curve2DData object the properties YValueObject and XValueObject have been expanded to include an optional ListItemIndex argument, which indexes a list item when the data object contains a list. If you omit the argument, the properties will be backward compatible with FlexPro 10.

In the CurveLabel object the data type of the properties Visible, ColorAutomatic and AngleAutomatic has been changed from Boolean to FpTristate. You will have to replace True in your code with fpTriStateTrue and False with fpTriStateFalse.

The Legend object has been expanded to include the LeftPadding, RightPadding, TopPadding and BottomPadding properties.

The LegendTitle object has been expanded to include the LeftPadding, RightPadding, TopPadding and BottomPadding properties.

Tables

The ColumnTable object has been expanded to include the Style, ColumnIndexRowHeight, BackgroundColor, TitleRow and TitleColumn properties.

The ColumnTableGrid object has been redesigned so that it represents a new column table grid structure. For this purpose, the properties Border, Columns and Rows, which each returned a GridLines object, have been removed and the properties replaced with HorizontalBorder, VerticalBorder, TitleColumn, TitleRow, Columns, SubColumns and Rows, which each return a TableGridLines object. To adjust your code, you will have to replace Border with HorizontalBorder and VerticalBorder as well as Columns with Columns and SubColumns and set the Extended property to True.

The ColumnTableTitle object has been expanded to include the LeftPadding, RightPadding, TopPadding and BottomPadding properties.

The ColumnTableColumn object has been expanded to include the RowIndex property.

The ColumnTableColumnTitle object has been expanded to include the Position, WrapText, LeftPadding, RightPadding, TopPadding and BottomPadding properties.

In the ColumnTableColumnData object the properties CurrentUnit, CurrentUnitInBrackets and ValueObject have been expanded to include an optional ListItemIndex argument, which indexes a list item when the data object contains a list. If you omit the argument, the properties will be backward compatible with FlexPro 10. In addition, the object has been expanded to include the Position, WrapText, LeftPadding, RightPadding, TopPadding and BottomPadding properties.

In the ColumnTableColumnColumnIndex object the properties CurrentUnit, CurrentUnitInBrackets and ValueObject have been expanded to include an optional ListItemIndex argument, which indexes a list item when the data object contains a list. If you omit the argument, the properties will be backward compatible with FlexPro 10. In addition, the object has been expanded to include the Position, LeftPadding, RightPadding, TopPadding, BottomPadding, Width, Title and IndexMode properties.

The CellTable object has been expanded to include the Style and BackgroundColor properties.

The CellTableGrid object has been redesigned so that it represents a new cell table grid structure. For this purpose, the properties Border, Title, Columns and Rows, which each returned a GridLines object, have been removed and the properties replaced with HorizontalBorder, VerticalBorder, TitleColumn, TitleRow, Columns and Rows, which each return a TableGridLines object. To adjust your code, you will have to replace Border with HorizontalBorder and VerticalBorder as well as Columns with Columns and SubColumns and set the Extended property to True.

The CellTableTitleobject has been expanded to include the LeftPadding, RightPadding, TopPadding and BottomPadding properties.

The CellTableCell object has been expanded to include the ConditionalFormat property.

The CellTableCellText object has been expanded to include the WrapText, LeftPadding, RightPadding, TopPadding and BottomPadding properties.

Drawing in Presentations and in a Document

The Shapes collection has been expanded to include the AddPie, AddShape and AddShapes methods.

The Shape object has been expanded to include the TabWidth property.

In the DocObjectSelection object, which represents the current marker in a presentation objects, the Size property has been replaced with the Width and Height properties. You will have to change your code to replace Size with Width and Height.

The DocObjectSelection object has also been expanded to include the SelectAll and Flip methods.

Cursors and Markers

The Markers object has been expanded to include the LabelPosition, LabelLeftPadding, LabelRightPadding, LabelTopPadding and LabelBottomPadding properties, which you can use to define the padding and alignment of the text in markers.

The Marker object has been expanded to include the Position property, which you can use to determine the position of text in the marker.

In the Cursor object the CopyValue, CopyMarkers and CopyRange methods have been expanded to include an additional ToClipboard argument, which you can use to control whether the result is to be stored in the clipboard or directly in the project database. If you omit the argument, the methods will be backward compatible with FlexPro 10.

New List Types

The list types FpAxisArrangement, FpDataQueryListElementNaming, FpTableIndexMode, FpDiagramStyle, FpTableStyle, FpColorPalette, FpColorScheme, FpColumnTableColumnConditionalFormatScalingMode, FpCellTableCellConditionalFormatScalingMode, FpConditionalFormatColoring, FpInstantaneousQuantitiesOperation, FpInstantaneousQuantitiesFFTLength, and FpInstantaneousQuantitiesDetrend have been added.

Changes to Existing List Types

The list type FpShapeType now includes fpShapeTypePie.

The list type FpObjectType now includes fpObjectTypeInstantaneousQuantities and fpObjectTypeTextFileLink.

The list type FpCursorScaleAxisMode now includes fpCursorScaleAxisModeShiftDownXUpY and fpCursorScaleAxisModeShiftUpXDownY.

The list type FpPenStyle now includes fpPenStyleAutomatic.

The list type FpPosition now includes fpPositionAutomatic.

The list type FpArrowPosition now includes fpArrowPositionAutomatic.

The list type FpUnitPosition now includes fpUnitPositionAutomatic.

The list type FpDivisionType now includes fpDivisionTypeAutomatic.

The list type FpFillPattern now includes fpFillPatternAutomatic.

The list type FpTimeFilterResult now includes fpTimeFilterResultSetVoid.

The list type FpSearchItem now includes the following: fpSearchItemFullName, fpSearchItemCalculationName, fpSearchItemCalculationComments, fpSearchItemCalculationFormula, fpSearchItemCalculationNumValue, fpSearchItemCalculationStringValue, fpSearchItemCalculationUnit, fpSearchItemCalculationNumValueAndName, fpSearchItemCalculationStringValueAndName and fpSearchItemCalculationStringValueAndName.

The list type FpExportFormat now includes fpExportFormatHDF5.

The list type FpParameterType now includes fpParameterTypeObjectRef and fpParameterTypeNoString.

The list type FpDataQueryResult now includes the following: fpDataQueryResultValuesAsSignal, fpDataQueryResultKeysParentFolder, fpDataQueryResultKeysGrandParentFolder, fpDataQueryResultFullName, fpDataQueryResultCalculationStringValue and fpDataQueryResultCalculationNumValue.

The list type FpDataQuerySort now includes the following: fpDataQuerySortFullName, fpDataQuerySortCalculationStringValue and fpDataQuerySortCalculationNumValue.

The list type FpDataQueryScope now includes fpDataQueryScopeFolderKeys and fpDataQueryScopeBlendedInSubfolder.

See Also

What's New in FlexPro 10's Object Model

What's New in FlexPro 9's Object Model

What's New in FlexPro 8's Object Model

What's New in FlexPro 7's Object Model

Share article or send as email:

You might be interested in these articles