Skip to content

Connections layer

The Connections layer of the Configuration tab is where the logical model is tied to the physical database: it shows the tables of the connected databases and lets you map each element of the fact table to a real column. This mapping is what makes SQL generation for measures and data marts possible.

Switching layers

The canvas of the Configuration tab carries two independent layers, controlled by the layers button in the toolbar above the canvas:

Layer Content
Measures Measures, facts, dimensions and dimension groups from the RMD — the logical structure of the fact table
Connections Tables of the connected databases and the links between them and the elements of the model

Both layers are selected by default and can be turned on and off independently. The toolbar also holds the Save button and the Repopulate button.

Adding database tables to the canvas

The left panel lists the active connections of the project. Under each connection name is the list of its tables.

  • Select a table's checkbox to place it on the canvas, clear the checkbox to remove it. A table can also be dragged from the panel onto the canvas
  • A table that already carries at least one mapping cannot be removed with the checkbox — delete its mappings first
  • The search field above the panel filters the table names inside every connection, and at the same time filters the element list of the Measures layer
  • Table names are shown as schema.table for MS SQL Server connections and as the plain table name for the other dialects
  • The list of tables comes from the schema stored for the connection, not from a live query to the database. Inactive connections are not offered
  • If nothing can be read, the panel shows "Failed to retrieve data from the database" together with the link Check database connection, which opens the Connections section

Mapping an element to a column

A physical table is shown as a block with the table name in the header and one row per column. Each column row can be connected to one element of the model.

Draw a link from an element to a column row. The following elements can be mapped:

Element Result of the mapping
Dimension, fact, measure of the fact table Sets the Connected source of that element in the RMD
Primary key of a dimension group Sets the primary key of the dimension group
Foreign key of a dimension group inside the fact table Sets the foreign key of the relationship between the fact table and that dimension group
Primary key of the fact table Sets the primary key of the fact table

Notes:

  • A link always joins one element and one column. Two columns cannot be linked to each other, and neither can two elements
  • An element has exactly one mapping. Drawing a new link from an element that is already mapped replaces the previous one
  • Mapping links are drawn as animated dashed lines
  • The mapping of a dimension, fact or measure is stored on the element in the RMD, so it is shared by every fact table and every data mart that uses that element

Removing a mapping

Click the link and then the round delete button that appears on it. A confirmation is required: the dialog Delete connection warns that "Are you sure you want to remove this connection? This will affect the RMD and all fact tables and data marts that use this measure/dimension".

A physical table block can be removed from the canvas with the close button on the block, which appears only once the table has no mappings left.

Warnings about the mapping

Missing or broken mappings are reported on the element node but do not prevent saving:

Message Meaning
"Connected data source field in the RMD is not configured" The element has no mapping
"Connected data source field in the RMD references a database field that cannot be found in configured database connections" The mapped column cannot be found in any configured connection
"Connected data source field in the RMD references a database field from a database connection that is currently inactive" The connection of the mapped column is inactive
"Source data column has been deleted from the database" The column no longer exists in the database
"Invalid format of the connected data source in the RMD" The stored source value cannot be interpreted
"Such table does not exist in the connected database" The mapped table is missing from the connected database
"This column does not exist in the selected table from the connected database" The mapped column is missing from the mapped table

Layout and saving

  • Positions of nodes on the Connections layer are stored separately from the positions on the Measures layer, and both are committed by the Save button. There is no autosave
  • A saved position always wins. A node that has no saved position yet is placed automatically: a database table linked to a dimension group is placed next to that dimension group, on the level following it, and the remaining tables are put into free space so that no two blocks overlap
  • Positions survive editing: adding or removing elements, and repopulating the fact table, do not reset the position of the database tables already on the canvas
  • After a fact table is repopulated, database tables that no longer have any mapping are removed from the canvas

Access rights

Editing the Connections layer requires the Developer access level or above in the project (Developer, Administrator, Super administrator) and a valid license. Without them the layer is read-only: nodes cannot be moved, links cannot be drawn or deleted, tables cannot be added or removed, and the Save and Repopulate buttons are not shown.

Limitations:

  • Links go from an element to a column only — joins between two physical tables cannot be drawn. The joins used in generated SQL are derived from the primary and foreign keys of the dimension groups
  • A link has no settings of its own: there is no join type and no column-pair editor
  • Column rows show the column name only, without the data type and without keys defined in the database