Databooks are your consolidated data source with related tables. You can import data using APIs or upload Excel files, with data quality validation on import.
Databooks solve these problems:
| Problem | Databook Solution |
|---|---|
| Reference data scattered across spreadsheets | Centralised tables with defined structure |
| No validation - typos and bad data get in | Typed columns, validation lists, and constraints |
| No version control - who changed what? | Automatic version history with user and timestamp |
| No access control - everyone can edit everything | Permissions at databook, table, or row level |
| Manual data relationships - copy/paste between files | Cross-table lookups maintain referential integrity |
A Databook is a container for one or more related tables. Each table has:
| Use Case | Example |
|---|---|
| Reference data | Cost centres, department codes, GL account mappings |
| Configuration | Report parameters, threshold values, business rules |
| Manual input | Budget adjustments, forecast overrides, manual journal entries |
| Hierarchies | Org structures, chart of accounts roll-ups, product taxonomies |
Go to Clarity > Databooks. Select an existing Databook or click New Databook.
Click Add Table. Enter a descriptive name (for example, "Cost Centres" or "GL Mappings").
Click Add Column for each field. Specify column name, data type, required yes/no, and optional default value.
Click any cell to enter data. Use Tab to move across columns and Enter to move down rows. New rows are added automatically.
Click Save or press Ctrl + S.
From inside a Databook, click Add Table > Import from File.
Drag a CSV or Excel file into the upload area. The wizard previews the first 20 rows.
The wizard auto-detects column names and data types. Review and correct mismatches, rename columns, change types, or skip columns.
Click Import. The table is created and populated in one step.
Constraints prevent invalid data from entering your tables.
| Type | Accepts | Example |
|---|---|---|
| Text | Any string | "Marketing", "ACC-4010" |
| Number | Integers or decimals | 42, 1500.75 |
| Date | Calendar dates | 2026-03-09 |
| Boolean | True / False | true, false |
| List | One value from a predefined set | "Active", "Inactive", "Archived" |
Restrict a column to predefined values:
Click the column header, then select Column Settings.
Set data type to List.
Enter one value per line.
Users now select from a dropdown instead of entering free text.
Link a column to values in another table (like a foreign key):
Click column header, then Column Settings > Constraint.
Choose Lookup from another table.
Select source Databook, table, and column.
The column now accepts only values that exist in the source table.
Hierarchies define parent-child relationships within a table (for example, org chart, chart of accounts, product categories).
A hierarchy uses two columns:
Rows with empty parent values are root nodes.
Create a column with unique values (for example, "Department Code").
Create a parent column and set constraint to Lookup - same table - node column.
Select parent for each row. Leave root nodes blank.
Click View > Hierarchy to display the tree structure.
| Action | How |
|---|---|
| Expand/collapse branch | Click arrow icon next to parent |
| Move a node | Change the parent column value |
| Add a child | Add row and set parent to desired node |
| View flat | Click View > Table |
| Export with levels | Export includes a "Level" column showing depth |
| Mode | Behaviour | Use When |
|---|---|---|
| Append | Adds new rows only; existing rows unchanged | Adding new items to an existing list |
| Update | Matches by key column; updates changed values; adds new rows | Refreshing attributes on existing records |
| Replace | Deletes all existing rows; imports new data | Full refresh from source system |
Open the Databook table to update.
Click Import > Update Existing Table.
Upload CSV or Excel file.
Select Append, Update, or Replace.
Select the matching key column.
Review rows to add, update, and delete.
Click Apply.
| Level | View | Edit | Manage |
|---|---|---|---|
| Viewer | Yes | No | No |
| Editor | Yes | Yes | No |
| Owner | Yes | Yes | Yes |
Open the target Databook.
Click File Action menu (...) > Manage Permissions.
Search for users or groups.
Assign Viewer, Editor, or Owner.
Save changes.
Create a column identifying access boundary (for example, Region or Department).
Map user groups to allowed values.
Users see only rows matching their assigned values.
Databooks can reference each other through cross-Databook lookups.
In Databook A, create a lookup column.
Set the constraint to reference a table in Databook B.
Users in Databook A select values from Databook B.
| Scenario | Setup |
|---|---|
| GL accounts linked to cost centres | Cost centres in Databook A; GL mappings in Databook B with lookup to A |
| Employees linked to departments | Departments in one Databook; employees in another with lookup |
| Products linked to categories | Category hierarchy in one Databook; products in another with lookup |
When source data updates, relationships remain intact.
Every change is logged automatically:
Open Databook or table, then click History (or File Action Menu > View History).
Filter by date, user, or change type.
Select a previous version and click Restore if needed.
See where data comes from and where it is used:
| Benefit | How Databooks Deliver It |
|---|---|
| Data quality | Typed columns and validation prevent bad data at entry |
| Single source | One place for reference data; Reportbooks pull live |
| Audit trail | Every change tracked with user and timestamp |
| Access control | Permissions at databook, table, or row level |
| Relationship integrity | Lookups maintain links; broken references flagged |
| Hierarchy support | Parent-child structures with tree view |