Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

When the Table designer is first opened on a new design the editor will look as follows:

 This editor has five main areas.

  1. The Design surface

  2. The Output area

  3. The Feature List Panel

  4. The Property Panel

  5. The DataSource Panel

The Design surface

This area allows a User to build up a table design. A Table design is comprised of a Table, Rows, Columns, Cells and Cell Elements.

The user can interact with this area to add new elements, such as rows and columns. They can create cell elements by dragging Features from the Feature List Panel and dropping them into a cell.

Adding and Removing Rows and Columns

Mouse click on a column or row to select it. When focused, it is possible to add columns and rows via the toolbar and also to delete rows or columns.

  • Insert column to the left     

  • Insert column to the right   

  • Insert row above                                

  • Insert row below                                

  • Delete column                                                  

  • Delete row                                                                       

Splitting and merging cells

Mouse click on a cell to select it. When focused, it is possible to split a cell vertically or horizontally via the toolbar.

  • Split a cell horizontally                      

  • Split a cell vertically                          

To merge a cell, first select the cell you wish to remain after the merge, then control select the other cell. When both selected, it is possible to merge the cells via the toolbar.

  • Merge two cells

When a cell has been split vertically or horizontally it is not possible to delete the row or column containing the split cell. If delete of split cells is to be done the split cells can be merged – the cell to keep is selected and push CTRL + select the cell to merge (delete), selecting merge will merge the cells keeping the first cell and deleting the last cell. After merging all split cells the column/row can be deleted.                                           

Working with a Cell Type

It is possible to alter a cell’s type via the context menu.

A Cell can have four types

  • Static (Blue)

  • Value (White)

  • Dynamic (Green)

  • Crossed (Red)

A static cell is a cell that does not project its values in a direction. They are all laid out into a single cell.

Image RemovedImage Added

The typical purpose of a static cell is to output captions or static values that are not expected to project into multiple values.

A value cell is a cell that projects its values in a direction. The results of the projection get a row each.

Image RemovedImage Added

A dynamic cell is a cell the that projects features in a direction. The features are retrieved through a ‘Feature Feature’ or an expression.

Image RemovedImage Added

Dynamic cells are discussed later in their own section.

A crossed cell is treated exactly the same as a Value cell.

Working with Cell Direction

A Cell direction can by altered for a cell through the context menu. Cell direction is appropriate for Value and Dynamic cells. The cell direction is the direction that values will be projected into the output results.

Working with Element Property

Cells Element can have the following properties:

  • Value

    • The default value of the feature of the element

  • Caption

    • The Caption of the feature of the element

  • Caption Alternative

    • The Caption Alternative of the feature of the element

  • Name

    • The unique name of the feature of the element

  • Unit

    • The Unit of the feature of the element

  • Abbr

    • The Abbreviation of the feature of the element

  • Variant

    • The variant value for the feature of the element. This is typically a remote value that has variant values. The variant is also normally formatted with an expression : @FormatVariantTitle({Value}|)

A Cell Elements property type can be changed via the context menu.

Adding Special Cell Values

It is possible to add the following special Cell Element types via the context menu:

  • Static Value

    • Some static text, the value of the static text can be altered via the property grid for the Cell Element.

  • Item Value

    • A Base Value for the rows of the primary data source.

  • Dynamic Value

    • Projects the value of a Dynamic Cell in a direction.

Image RemovedImage Added

Working with Cell Output Merge

Cell Output Merge is a context menu option that merges cells together under certain situations. The merge is only a visual one, and as such is only shown in Internal Reporting with the PerfionTable control. The InBetween output is not affected by this directive.

The options for Cell Output Merge are:

  • None

  • Within Group

  • Beyond Group

Consider the following design and output:

Material, WeightKG and DishwasherSafe have been set with Cell Output Merge as None. This tells the rendering engine not to merge cells. The effect of this is that Material entries are repeated. Changing Material to Within Group will affect the output to:

If DishwasherSafe is changed to Within Group, then there is no change to the output. This is because the DishwasherSafe Set are grouped against each WeightKG. So, the groups in this case only end up with one value for each.

If we change DishwasherSafe to Beyond Group, then the values will be merged together as such:

The Output area

This area shows rendered output of the table. Pressing F5 or the refresh button will render the table to the output area.

Image RemovedImage Added

The Data Source Panel

The queries that provide data to the table are configured through the data source panel.

All the queries for the table are listed by name in this panel.

Through a context menu it is possible to edit and add new queries.

Establishing a Primary query

By default table designer will setup a primary query for you. However, it is necessary to check the query that it makes to be sure you are only querying the exact data you need and not more or less.

If you right-click on “Primary” in the data source panel, you can choose “edit” and then you will be presented with the API Query tool.

The example above is showing a context specific query. It is context specific because it is using a variable @CURRENT.ID so that it is specific to the point where the table is being referenced.

The variables available are as follows:

@LANGUAGES

The languages selected by the user when running a report

@CURRENT.ID

The Item ID of the Row where the table is used

@CURRENT.ParentID

The Parent ID of the row where the table is used

@RELATED.ID

When a table is used on the right hand side, the related ID is the ID of row of the categorizing item. 

@RELATED.ParentID

When a table is used on the right hand side, the related ParentID is the id of the parent row of the categorizing item. 

Pressing F5 in the API Query tool will show the query results. Pressing OK, will save the query into the data source.

See the Perfion API for a full description of the query language.

The focused data source item is the active data source. The Feature List Panel will update to reflect the available features in the selected data source. After editing a query it is necessary to press F5 to refresh the data and the features in the Feature List Panel.

The Feature List Panel

The shows all the available features for the selected data source. Features can be dragged into cells on the table design surface.

When there are many features, it is useful to narrow the choice by entering a name or ID into the Feature filter that is available at the bottom of the list.

The Property List Panel

The property list panel displays the properties for the elements of the table design that are currently focused.

Cells that have focus in the table design area are indicated by a blue border:

When a column or row is focused, there is not a visible border drawn. However, the property for the column or row are shown in the property list panel.

Table Properties

ColumnsToRepeat

Not used

Height

The forced height of the table in milliliters

Name

This name of the table. The name of the table is available in the InBetween Table XML output

RowsToRepeat

Header Mechanism;

Used by PerfionTable in internal reporting. When a page is thrown, then the table on the subsequent page will start by repeating a number of rows from the result.

SearchFeature

Not Used

Style

Name of the style that is applied to the table.

Width

The forced width of the table in millimeters.

Column Properties

Collapse

Property that controls when a column is removed from the visual output.

The choices are

Never – No effect

WhenEmpty – Will remove the column when there are no values in it

Always – Will remove the column regardless of the values in it.

Style

Name of the style that is applied to this column.

Width

Set a fixed with for the column. The default is blank which indicates that the columns width is auto calculated.

Row Properties

Collapse

Property that controls when a row is removed from the visual output.

The choices are

Never – No effect

WhenEmpty – Will remove the row when there are no values in it

Always – Will remove the row regardless of the values in it.

Height

Set a fixed height for the row. The default is blank which indicates that the rows height is auto calculated.

Style

Name of the style that is applied to this row.

 Cell Properties

CellMerge

Directive that controls how results can be merged together in the visual output

The choices are

None

WithinGroup

BeyondGroup

FeatureFeatures

The Feature ID of the element in the cell that is generating dynamic features. The cell must be of type dynamic:

This property is deprecated and the FeatureList property should be used instead.

FeatureList

If FeatureList is used then FeatureFeatures should be blank.

110,114

This resolves to features 110 (Engine power) and 114 (Acceleration) in the demo database.

@FEATURES( id or name )
Uses this id or name to resolve to a list of features names.

@FEATURES( 145 )
Looks up names from the value of feature 145. E.g. ItemNumber, Price & Width

@FEATURES( S.145 )
Looks up names from the value of feature 145 from the datasource ‘S’. Where there are more than one item on the foreign datasource, the first row will be used.

@LIST

The resolves to a list of all features that are available across the data source.

 @GROUP( infoGroupID )

This resolved to all features on an infogroup that have data.

 @SHARED

This resolves a list of features that contain only common values across the data source.

Feature Subtractions

Features can be remove from the results of a function by using the minus delimiter

@GROUP(6dac7e5a-769f-40db-99a7-305b7404edd3)-104,110

@LIST-@SHARED,165,148
All Features except for the feature that are common and also remove 165 and 148

FeatureListOrder

Not used

FlowDirection

The direction that the cell will project results into the output

Orders

Order by feature value.

Scenarios for a cell outputting a products ItemNumber:

104.Order.Asc

Sort ItemNumbers by the order on products imposed by Section.

100.Value.Desc

Sort ItemNumber by the Products name in a descending order

Sorting is normally applied to the first cell in a column/row and controls the overall sorting. Sorting can be done using any feature in the features available.

When sorting on other cell than first in column/row the sorting specified is only applied to possible several values within the cell; i.e. if first cell has two values in second cell for a first cell value it is only the two second cell values which are sorted.

Style

Name of the style that is applied to this Cell.

Cell Element Properties

DataSource

The datasource name associated with the element

ElementType

Values can be Feature or Static. Reference is not supported

Expression

See expressions factsheet for details

FeatureID

Feature ID or feature name can be entered. This is identified the feature that will be projected from the table cell.

LangIndex

When multiple languages are included be reporting, entering a zero based index here will scope the language. For example 0 will take the first language.

Property

Values can be Value, Caption, Caption Alternative, Name, Unit and Abbr. This property identifies what aspect of the feature that should be projected into the output.

ImageFit

Details the sizing algorithm for the Image.

Choices are:

Exact

Fit

Crop

Smart

This is only present for image features.

ImageHeight

Fixed height in millimeters.

This is only present for image features.

ImageWidth

Fixed width in millimeters

This is only present for image features.

Style

Name of the style that is applied to the Cell Element.

Table of Contents