Lookup table

Embed a live read-only view of a query in any document.

A lookup table is a read-only view of a query embedded in a document. Unlike a data table (document-local) or a registration table (writes back), a lookup table just shows results from a saved query or an inline filter, and re-runs whenever the underlying data changes.

When to use it

Use a lookup table when you want to:

  • Reference data that lives in an environment without copying it into the doc.
  • Show a live snapshot of "all animals in DLA-7 with baseline weight > 24 g" inside the protocol document so the team can see them while running the study.
  • Build a study summary that always reflects the freshest results.
  • Embed the output of a saved query inside any document.

Don't use it when you need users to enter data — use a Registration table instead.

What you see

Each row is a live link to the underlying object. Click any row to open the object's detail page in a side panel. Each column displays:

  • For reference columns, the display ID (ANM-001) plus a hover preview.
  • For enum columns, the enum label with the configured colour.
  • For numeric columns, the value with its unit (e.g. 23.4 g).
  • For date columns, locale-aware formatting.

The table re-renders within a second of any change to the underlying data.

Three ways to populate it

  1. From a saved query

    Best for reuse. Pick a saved query in the workspace; the block displays its columns. Updating the saved query updates every document that uses it.

  2. From an inline filter

    For one-off views. Pick an environment and table, then add filter chips (sex = F, dose_mg_per_kg = 3, etc.). The filter is stored in the block.

  3. From a reference cell

    Click any object's display ID anywhere in the document and choose "Show related objects". Dalea generates a lookup table of objects that reference (or are referenced by) the source object.

A realistic example

In a DLA-7 PK/PD study document:

Animals receiving 30 mg/kg with baseline weight > 24 g

animal_idsexstrainbaseline_weight_gstudy_group
ANM-019FC57BL/624.1GRP-4
ANM-022FC57BL/625.6GRP-4
ANM-024FC57BL/624.8GRP-4

This lookup table sits alongside the protocol so the bench scientist can see at a glance which animals match the inclusion criterion. If a fourth animal's weight is updated tomorrow, the table updates everywhere it's embedded.

Configuration

OptionWhat it does
SourceSaved query, inline filter, or reference.
Visible columnsSubset; hidden columns aren't loaded, so wide tables stay snappy.
SortOne or more columns, ascending or descending.
Row limitCap to 10, 100, 1000 or all. Useful when the underlying table is huge.
Refresh policyLive (every change), manual (a refresh button), or pinned to a specific result-batch close event.
Empty-state textCustom message when zero rows match — useful in templated documents.

Locked lookup tables in templates

When a template includes a locked lookup table, the source is typically pinned (the query, filter and visible columns can't be changed by users) but the row data is naturally fresh because it's read from the live environment.

This pattern shows up in IND-enabling tox study templates: a locked lookup table titled "Animals on study" appears in every document spawned from the template, and always shows the current animals — no manual sync required.

Tips

Pair it with the chart block

A lookup table feeding a chart is the simplest way to put a live timecourse or group comparison into a document. Both blocks can share a saved query, so they update in lockstep.

Auditability

The lookup table records which version of the saved query produced its current view. If the query changes later, prior versions of the document still have a note in their version history saying which query state they were rendered against.

What's next