Custom Field

From ContactsLaw Documentation
Revision as of 16:56, 20 October 2025 by Bradley Smith (talk | contribs) (→‎Choices)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

ContactsLaw allows you to define custom fields for storing additional information on resources, such as contacts, matters, documents and members. You can then use the values stored in these fields to create documents or make decisions in processes.

Resources

You can create custom fields on:

Types

Fields can contain different types of values, including:

  • Text
  • Number
  • Date/time
  • Boolean (yes/no)
  • Choices (typically presented as a dropdown field)
  • Hyperlink (to another resource)

Many of these types offer additional options for formatting (e.g. character casing, number of decimal places, etc). You can set these options for each field you add.

Choices

When a custom field is presented as a list of choices, you can choose how the value is stored in the field:

  • Store as text (default) - The text of the choice is copied into the field. Existing values may become invalid if choices are renamed/removed.
  • Store as number¹ - The choice number (starting from 1) is stored in the field. Existing values may become invalid if choices are inserted/reordered.

The value stored in the field is significant in expressions. It may be easier to write expressions in terms of the choice number, especially when the text consists of more than just a few words.

¹ This option is not available if the field allows other values to be entered.

Tables

Custom fields can also be used to represent a table of values, using the Table Row type. When you create the field, you determine the columns in the table, along with their name and type. Each of the field's values (on a particular resource) represents a row, and collectively they form a table.

Such fields are presented in a more familiar form for editing.

Individual columns in a table have some additional properties:

  • Required - Whether each row is required to have a value in the column.
  • Auto-number - Whether values in the column are assigned automatically in sequence (number columns) or default to the current date/time.
  • Stretch to fill available space - Whether the column should extend horizontally to fill the available space in the table (for presentation purposes only).

Various techniques can be used to access, filter and manipulate tables. These include:

  • In expressions, you can refer to the value(s) in a particular column of a table (by name) using the Column function.
    • This can be combined with the Where function to filter rows, or the Each function to transform the values.
  • The Table function can be used to format the table using Markdown.
  • Processes have a dedicated action for updating tables ("Update Table"). This can be used to add a new row to a table, update specific column(s) on existing rows or delete rows according to some condition.