Static tables

A Static table holds reference data that you maintain yourself, such as country codes or manual corrections. It has no source systems and no transformation, so you type its rows, upload them from Excel or ask AI to fill them in. For a lookup list that SQL queries keep up to date, use a Dictionary instead.

The Static table window

The table opens in its own popup with four tabs: Static, Preview, Dependants and Settings. The Static tab holds the table's setup in four steps: General, Columns, RLS and Data Mapping.

Create a static table

  1. In the Warehouse tree toolbar, click New and choose Static. You can also pick Static under Add New in the header, or right-click a Logical model in the tree and choose Static to start with that model already selected. Create Warehouse objects lists every route.
  2. On General, type a Name and choose at least one entry under Logical Models. A save without a name is refused with Static list name is required, and a save without a model with At least one logical model is required.
  3. Optional: add a Description, and choose Permission Groups for the roles that can read the table.
  4. Save the step: click Apply, or click Next and choose Save & Continue in the dialog that follows.
SettingWhat it doesDefault
NameThe table name. Required, and locked once the table is saved.None
DescriptionOptional notes about the table.Empty
Logical ModelsThe logical models the table belongs to. At least one is required.None
Permission GroupsThe roles that can read the table. The admin group always has access.Admin only

The first save creates the table and confirms with Static created successfully; saving later reads General settings saved successfully. There is no Source Systems field on this step: a Static table is not fed by a source.

Define the columns

Click Next to open Columns, add your columns, and mark the column or columns that identify each row as PK. Every table starts with a locked key column named after it (for a table called Countries, that is Countries Key); your key is a column of your own. The step does not save until it has at least one column of yours, and the table cannot deploy without a key.

The full grid, the flags and the rules for names and defaults are in Static table columns; the concepts shared by every table are in Define table columns.

Limit which rows each group sees

Row-level security limits the rows that each permission group can read, and it works the same way as on the other Warehouse tables. The RLS step needs at least one permission group besides the admin group. See Warehouse permissions and row-level security.

Deploy the table

Deploying creates the table in the warehouse from its current columns. Until then, the tree shows Pending and Preview stays disabled. The table also needs a key: at least one of your own columns must be marked PK.

  1. Click Next to open Data Mapping. Until the table is deployed, the step shows Table Not Deployed and a Deploy button; a table without a key shows Primary Key Required and Go to Columns instead.
  2. Click Deploy.
  3. Read the result: Static table deployed successfully, Static table partially deployed or Static table deployment failed.

You can also deploy from the banner on the Settings tab, or by right-clicking the table in the tree and choosing Deploy. The deploy messages and the settings of a deployed table are in Static table settings; the wider day-to-day actions are in Deploy, run, truncate and monitor tables.

Type, upload or fill rows

Data Mapping holds the rows. Its toolbar carries Add new row, Remove selected rows, Refresh data from source, Upload Excel file (replaces all data), Export data, a Deleted toggle, an Unmapped toggle and Fill or add rows with AI; Static table data mapping walks through each of them.

Type rows: click Add new row or edit a cell, fill every PK column on every row, then click Apply. A save carries at least one row, and an empty save is refused with rows must contain at least one row. Every row you touched is saved in one go.

Upload an Excel file:

  1. Click Upload Excel file (replaces all data) and choose an Excel file.
  2. In the Replace All Data with Excel? dialog, click Upload & Replace.

The upload takes effect straight away, so you do not click Apply. It reads the first worksheet only, and its first row must hold the column headers. Every row is then checked the same way a typed row is, so a row needs its key and every required value.

Warning

An upload marks every existing row as deleted. Only the rows in the file stay active. Check the file before you confirm.

Fill rows with AI: select the rows AI should fill, or select none to add new rows. Describe what you want in AI Data Assistant, click Generate, then click Apply to save.

Messages you may see while you save rows or upload a file:

MessageWhat it meansWhat to do
First row must contain non-empty column headersThe first row of the file has an empty header cell.Fill every header cell in row 1 with a column name, then upload again.
Excel exceeds the maximum allowed rowsThe file has more data rows than the upload limit of 20,000; the message names the limit and your count.Split the file, or trim it to 20,000 rows or fewer, then upload again.
Failed to parse the provided Excel fileDataMind could not read the file; the message adds the reason.Save the file again as a standard workbook, or export the table and fill in that file instead.
Value required for non-nullable column: ...A saved row leaves the named column empty, and the column takes no empty value and has no default. The refusal arrives as part of Invalid value for column ...:.Fill the column on that row, or set a default value for the column, then save again.
Invalid numeric value: ...The value cannot be stored in a numeric column. The refusal arrives as part of Invalid value for column ...:.Correct the value in that cell and save again.
Unknown column: ...The save or the file carries a name that is not a column of the table.Match the file's headers to the table's columns, then upload again.
Required column missing: ...The saved rows hold no value for a required column.Fill the named column on every row, then save again.

Remove rows

Removing a row marks it as deleted, and the row stays in the table until you remove it permanently.

  1. Select the rows, click Remove selected rows, then click Apply.
  2. To see deleted rows, turn on Deleted. The toggle appears only when the table has deleted rows.
  3. To remove them permanently, turn on Deleted, click Remove All, and confirm in Remove All Deleted Rows?.
Warning

Removing deleted rows permanently cannot be undone.

The full row workflow, including what Apply and Revert cover, is in Static table data mapping.

After deployment: settings and dependants

The Settings tab holds the deploy banner and Static Table Statistics: Size, Rows and Partitions. Click Refresh to update them. Drop removes the stored data but keeps the table's definition, so you can deploy it again. Anything that depends on the table is not dropped and breaks until you fix it or deploy the table again. See Static table settings.

The Dependants tab lists the objects that use the table, and shows No dependants found when none do. Check it before you drop or delete the table: Dependencies and dependants. To delete the table itself, see Deploy, run, truncate and monitor tables.

Who can do what

For the full list, see Warehouse permissions and row-level security.

Questions, answered

Do I need a source system for a Static table?

No. A Static table is not fed by a source: you maintain its rows yourself, and General has no Source Systems field. If the values should come from a query instead, use a Dictionary.

Does uploading an Excel file add to my rows?

No. The upload replaces them. Existing rows are marked as deleted, and only the rows in the file stay active.

Can I get my old rows back after an upload?

They stay in the table as deleted rows. Turn on Deleted to view them. Once you click Remove All, they are removed permanently, and that cannot be undone.

Why was my Excel upload refused?

The message names the reason. A first row with an empty header cell reads First row must contain non-empty column headers, more data rows than the 20,000 limit reads Excel exceeds the maximum allowed rows, and a file DataMind cannot read reads Failed to parse the provided Excel file with the reason added.

Why won't the Columns step save?

It needs at least one column you added, and at least one of those must be marked PK. If a column name is empty, duplicated or reserved, the step shows a Validation Error with the reason. The full list of checks is in Static table columns.

Can I change the primary key after I save it?

No. Once a column is saved with PK ticked, the PK cells freeze. To use a different key, drop the table first, then change the flags and deploy it again. See Static table columns and Static table settings.

Why can't I open Data Mapping or Settings yet?

Settings needs a saved table, and Data Mapping a deployed one. Until then, each shows what is missing and how to fix it; a table without a key shows Primary Key Required and Go to Columns.

Why does saving rows fail with a "Primary key field" message?

A row has no value in a column you marked PK. The message names the column, for example Primary key field 'Code' is required. Fill that column on every row, then click Apply again.

Can AI add rows to a static table?

Yes. Use Fill or add rows with AI. The rows appear in the grid, and they are saved only when you click Apply.