Skip to content


Category sheets define the list of values a user can choose in a single/multi select field. After being defined in a container sheet, a separate "Category" sheet lists the category values. There are a few options for control types for a category selection:

Single Category Sheet

A single category sheet lets the user list out the values for a category as well as provide additional options not available in the Categories sheet. When referencing this category from another sheet, define the Type as Form.<CategorySheetName>.

  • Id (required): An integer key that will be used to reference the category value in your database table
  • Value (required): The category value
  • Description
  • AvailableWith: Used with the Option Controller. The OptionController column in your container references another field in the container. Then the AvailableWith column in the single category sheet defines which category values are visible based on what OptionController field value is selected. | is used as 'or' to allow the value to be available with more than one OptionController input.

!Single Category Sheet

As an example for using the AvailableWith column, in the above image, value Z will always be visible as a selection value. X and Y will only be shown if A is the value in the OptionController field.

Multiple Category Sheet

Instead of a separate sheet for each category, multiple categories can be descibed in a sheet named Categories. In this sheet, each column represents its own category to simplify the Excel structure if you have a lot of categories in your data model. The Id defined in a single category sheet is assigned automatically. The header is the category name, and the body rows are the category selections. When referencing this category from another sheet, define the Type as Form.<CategoryName>.

!Categories Sheet

Visibility Controls

There are a few ways to control whether category values are visible to the user from logic that refers to other selections/inputs in the current DataPortal container.

  • MaskedCondition: controls visibility of the entire input field
  • VisibilityCondition: controls visibility of the entire input field
  • CategoryCondition: This setting column in your container allows logic to control the visibility of the entire category, and allows filtering for specific category values.
  • Option Controller and AvailableWith: This controls the visibility on the category value level and requires a single category sheet. See above.