Tables

Tables are the core data containers in High Systems. Every application is built around one or more tables, and each table holds records, the rows of data your app works with. Create a table here, see what High Systems sets up automatically, and manage it from the application builder.

What is a table?

A table is a dataset inside an application. It defines a collection of fields (the columns) and holds records (the rows). Tables sit in the middle of the High Systems hierarchy:

Instance
└── Application
    └── Table
        └── Field
            └── Record

Every table also comes with a set of built-in fields that track record metadata, so you don't have to manage timestamps or ownership yourself.

Creating a table

To create a table, open Application Settings from the main menu, select Tables in the Structure & UI section, then click Add Table in the top-right corner. This opens a form with the table's basics:

  • Table Icon: pick an icon to represent the table in menus and lists.
  • Table Name: the table's unique name within the application.
  • Singular Noun: the singular display label, used throughout the UI (e.g. "Customer").
  • Plural Noun: the plural display label (e.g. "Customers").
  • Table Description: an optional description of what the table holds.

Need to create several tables at once? Click the Add Tables button next to Add Table to open a bulk form. It starts with five blank rows and grows as you type. Enter a table name and the singular and plural nouns are filled in for you automatically; edit them if you like. Click Add Tables when you're done.

What gets created for you

When you save a new table, High Systems sets up everything you need to start working with data right away:

  • Built-in fields: every table automatically includes Record ID, Date Created, Date Modified, Record Owner, and Last Modified By. You can read more about these in the Fields guide.
  • A default report, dashboard, and form: your new table opens on a Default Dashboard showing a "List All" report of its records, and comes with a Default Form for adding and editing records.
  • Role permissions: access permissions are provisioned for every role in the application, with admin roles granted full access by default.

You don't need to configure any of this manually; it's all handled at creation time.

Viewing your table's data

Click a table's name in the left navigation to open its dashboard. The dashboard shows the table's default report: for a new table, this is the "List All" grid showing every record. From here you can:

  • Click Add to create a new record using the table's default form.
  • Use the search box to find records by text.
  • Filter and sort using the controls above the grid.
  • Click a row's pencil icon to edit a record, or the eye icon to view it.

Table settings

Every table has its own settings area, opened via the Settings button on the table dashboard or the cog icon next to the table in the left navigation. Settings are organised into four panels:

  • Structure: Fields, where you define the table's columns.
  • User Interface: Forms, Reports, and Dashboards built on the table.
  • Automations: Emails and Webhooks triggered by table activity.
  • Advanced: Properties and Maintenance.

Table properties

The Properties panel (under Advanced) is where you configure the table itself. The same form is used when creating a table, with additional sections available when editing:

  • Basics: icon, table name, singular and plural nouns, and description. Renaming a table is done here, by changing the Table Name.
  • UI Settings: choose the table's default dashboard and default form.
  • Form Settings: set the Record Label (the field shown as a record's display name) and Record Picker (the fields shown when picking a record in a relationship).
  • Report Settings: set the Default Search Type (Like or Lexeme), the Default Columns shown in search results, and an optional Global Query that filters every view of the table by default.
  • Advanced Settings: define Data Rules, formulas that control data behavior at the database level.

Duplicating a table

To duplicate a table, go to Application Settings → Tables and click the duplicate icon in the table's row. The copy is named automatically ("Copy of" followed by the original name) and includes the table's fields, reports, forms, dashboards, emails, webhooks, and permissions.

Deleting a table

You can delete a table from two places:

  • Application Settings → Tables: click the delete icon in the table's row, then confirm.
  • Table Settings → Maintenance: click the red Delete Table button and type delete table to confirm.

Maintenance

The Maintenance panel (Table Settings → Advanced → Maintenance) offers operations for keeping a table healthy and managing its data:

  • Analyze Vacuum and Rebuild Indexes: database maintenance that may slow the application down while running.
  • Generate Fake Data: fills the table with 1,000 rows of sample data, connecting relationships to random parent rows. Useful for testing.
  • Delete Data: empties the table without deleting the table itself, with an option to restart auto-incrementing fields.
  • Dehydrate Data and Hydrate Data: move data in and out of the table's storage.

What's next?

A table is only useful once it has fields and a way to view them: