Attributes
Attributes are the columns of a table. They define what kind of data each field holds and what counts as a valid value. You can create any number of them.
Every table has built-in identifier and display name attributes. Standard (AUTO) tables receive them as Code and Name; reference tables can choose their names when created. You do not create or reassign these roles from the attribute editor. See Identifiers.
Structure
Section titled “Structure”| Field | Description | Required |
|---|---|---|
| Name | The attribute name. This is the column header users see in Excel and Google Sheets. | Yes |
| Datatype | One of the supported datatypes below | Yes (unless a domain table is chosen) |
| Required | Makes the field mandatory on new records | No |
| Unique | No two records may share the same value | No |
| Max length | Maximum characters, string only |
No |
| Precision / Scale | Total digits and decimal digits, decimal only |
No |
| Domain table | Reference records in another table | No |
| Cascade parent | Narrow the domain values based on another attribute | No |
| Validation rules | JSON Schema rules for the attribute | No |
| Excel formula | A spreadsheet expression calculated from other attributes | No |
Datatypes
Section titled “Datatypes”| Datatype | Stores | Extra settings |
|---|---|---|
string |
Text | Max length |
integer |
Whole numbers | — |
decimal |
Fixed-point numbers | Precision (total digits), Scale (digits after the point) |
boolean |
True / false | — |
date |
A calendar date (yyyy-MM-dd) |
— |
datetime |
A date and time (yyyy-MM-dd HH:mm) |
— |
Domain table attributes
Section titled “Domain table attributes”An attribute can point at another table instead of holding a raw value. The referenced table becomes a controlled list of allowed values.
- In the attribute editor, choose the domain table model.
- Choose the domain table. Only
MANUALtables appear in the list. - The datatype becomes read-only — it is determined by the referenced table.
When a user fills in the field they get a searchable picker showing Code - Name from the
target table. Grunddata stores the target record’s source_id, and resolves the readable
label on the fly.
Full details in Domain tables.
Cascading domain attributes
Section titled “Cascading domain attributes”A domain attribute can be made to depend on another domain attribute on the same table. Tick Cascade domain values from another domain attribute and choose the cascade parent attribute.
The effect: when a user picks a value in the child attribute, the candidate list is filtered by whatever they selected in the parent.
Attribute order
Section titled “Attribute order”The order of attributes controls the column order everywhere: the records grid, the Excel download and the Google Sheets download.
Use the up and down arrows on the attributes page to rearrange, then save the order.
Create an attribute
Section titled “Create an attribute”- Open the table and click Attributes.
- Click Add attribute.
- Fill in the name, datatype and constraints — or select a domain table.
- Optionally add validation rules.
- Save.
Update an attribute
Section titled “Update an attribute”On the attributes page, click the pencil icon next to the attribute.
Excel formulas
Section titled “Excel formulas”An attribute can hold an Excel formula as well as the calculated values that are saved in its records. This is useful when a worksheet calculates a value, for example:
={{Balances.Closing}}-{{Balances.Opening}}Grunddata stores stable references to the source table and attributes behind that readable
expression. Renaming Closing later does not break the relationship: the stored identifiers
stay the same, and the displayed formula follows the new names.
Delete an attribute
Section titled “Delete an attribute”On the attributes page, click the trash icon next to the attribute.
Examples
Section titled “Examples”An accounts table:
| account_number | account_name | account_type |
|---|---|---|
| 1200 | Nominal amount | NOM |
| 1300 | Market value adjustment | MTM |
| 1400 | Interest rate | INT |
An instrument hierarchy:
| Instrument type level 1 | Instrument type level 2 | Instrument type level 3 |
|---|---|---|
| Derivative | Interest rate swap | Interest rate swap |
| Derivative | Options | Equity option |
| Derivative | Foreign exchange swap | Foreign exchange swap |
| Security | Bond | Covered bond |
| Security | Bond | Zero coupon |
| Loan | Open ended | Open ended |
| Deposit | Deposit | Deposit |