docs/docs/en/data-sources/field-formula/index.md
In NocoBase, Formula calculates a field value from an expression.
It is suitable for amount calculations, score calculations, text concatenation, and conditional calculations. Its value is normally generated by an expression and is not suitable for manual entry. For complex calculations, use a workflow or database view.
Formula fields are suitable for these business scenarios:
On the collection's Configure fields page, click Add field and select Formula to create this field.
| Setting | Description |
|---|---|
| Field interface | The field interface. Formula uses formula, which determines how the field is entered and displayed in pages. |
| Field display name | The name displayed for the field, such as Order subtotal, Overall score, or Display name. Use a name that business users can recognize. |
| Field name | The field identifier used internally by APIs, relation fields, permissions, and workflows. It usually cannot be changed after creation. It supports only letters, numbers, and underscores, and must begin with a letter. |
| Field type | The data-layer type. Formula uses formula by default. |
| Default value | The default value. When a new record has no value, NocoBase can fill this value automatically. |
| Validation rules | Validation rules. Confirm that the formula expression is complete and referenced fields exist. |
| Description | A field description. Record the field meaning, entry requirements, data source, or maintainer. |
:::warning Note
Field names are referenced by page blocks, permissions, workflows, and APIs after creation. Confirm the name before creating the field to avoid later configuration changes.
:::
The default behavior of a Formula field is as follows:
| Behavior | Description |
|---|---|
| Default Field interface | formula. |
| Default Field type | formula. |
| Available Field types | formula. |
| Page component | Displays the result calculated from a formula expression. |
| Filtering | Filtering depends on the formula result and data-source capabilities. |
| Sorting | Supports sorting where the formula result type permits. |
| Validation | Confirm that the formula expression is complete and referenced fields exist. |
After creation, click Edit beside the field to edit its configuration. Edit fields to adjust how they are displayed and used in NocoBase, such as the display name, description, default value, validation rules, or field-specific settings.
When a field comes from a synchronized main-database table, editing usually maps the database field to a NocoBase Field type and Field interface.
| Setting | Can be edited | Description |
|---|---|---|
| Field display name | Yes | Changes the name displayed in the interface without changing the field identifier. |
| Field name | No | The field identifier normally cannot be changed in the edit form after creation. |
| Field interface | Conditional | Main-database fields and synchronized fields can be adjusted during field mapping. Changes affect page input, display, and validation. |
| Field type | Conditional | Main-database fields and synchronized fields can be adjusted during field mapping. Confirm that existing values can be used by the new type first. |
| Default value | Yes | Adjusts the default value for new records. |
| Validation rules | Yes | Adjusts field validation rules. |
| Description | Yes | Adds the field meaning, entry requirements, data source, or maintainer. |
:::warning Note
Changing a Field type or Field interface is more than changing a display name. It affects field storage, input components, validation rules, filters, and workflow-variable usage. When the field contains substantial existing data, confirm that its data format is compatible first.
:::
Click Delete beside a Formula field to delete it. You can also select multiple fields and delete them in the main data source.
Deleting a Formula field created in the main database usually also deletes the actual database column and its values. For a synchronized or external-data-source field, the impact depends on the corresponding data source and field origin.
:::danger Warning
Deleting a field can affect page blocks, forms, filters, permissions, workflows, APIs, imports and exports, and existing data. Confirm that the field is no longer referenced by business configuration before deleting it.
:::
Formula fields are suitable for calculated values in pages, reports, and business logic.
| Scenario | Use |
|---|---|
| Details block | Display a calculated value. |
| Table block | Display and sort a formula result where supported. |
| Charts | Use a formula result for presentation. |
| Workflows and APIs | Read calculated values in business logic. |