Add a property

Administrators can add or create a property to control system behavior.

Some properties in the system are not visible in an instance by default and must be added to the System Property [sys_properties] table. If a feature requires the addition of a property, use one of the following methods:

  • Add the property using [sys_properties.list]
  • Create a properties module restricted to an administrator
Important: System properties store configuration information that rarely or never changes. Each time you change or add a system property, the system flushes the cache to keep all nodes in the cluster in synch. This cache flush has a very high performance cost for one to ten minutes, which can potentially cause an outage if done excessively. To prevent such outages, do not use a system property to store configuration information that changes more than once or twice a month. Instead, use a custom table to store regularly changing configuration information.

Add a property using sys_properties.list

Use the [sys_properties.list] to add a system property.

  1. Enter sys_properties.list in the Navigation filter.
    The entire list of properties in the System Properties [sys_properties] table appears.
  2. Verify the property does not already exist by searching for the property name.
  3. Click New.
  4. Complete the System Property form using the database name of the property. Make sure to specify the correct data Type and add the new value that you want the property to use.

    Properties that you add already contain default values. You add properties to change this value.

    Field Description
    Name Type the name of the property you are creating.
    Description Type a brief, descriptive phrase describing the function of the property.
    Choices Comma-separated values for a choice list. If you need a different choice list label and value, use an equal sign (=) to separate the label from the value. For example, Blue=0000FF, Red=FF0000, Green=00FF00 displays Blue, Red, and Green in the list, and saves the corresponding hex value in the property value field.
    Type Select the appropriate data type from the list (for example, integer, string, or true|false).
    Value Set the desired value for property. All property values are stored as strings. When retrieving properties via the gs.getProperty() method, treat the results as strings. For example, a true|false property returns 'true' or 'false' (strings), not the boolean equivalent.
    Ignore cache Set this option to true to refresh the cache before processing the property. The cache stores commonly used items in memory such as forms and UI elements. Typically, you only ignore the cache if the system property depends upon a dynamic change on the form, and you want to ensure that the property uses the current value rather than a cached value.
    Private Set this property to true to exclude this property from being imported via update sets. Keeping system properties private prevents settings in one instance from overwriting values in another instance. For example, you may not want a system property in a development instance to use the same value as a production instance.
    Read roles Define the roles that have read access to this property.
    Write roles Defines the roles that have write access to this property.
    The completed form looks similar to the following:
    Completed system property form
  5. Submit the form.
    Depending on the property name, an admin might be able to change its value only through this new Module. It may also appear in one of the Properties pages in System Properties. For example, any property whose name begins with glide.ui automatically appears in the System Properties > UI Properties page.
    Note: If the Ignore cache check box is selected, the system flushes the server cache when the parameter is changed.

Create a system properties module

You can add a module in the application navigator to access the list of system properties. This module makes it easy to add properties to the System Properties table.

  1. Navigate to System Definition > Application Menus.
  2. Search for the application you want to add the properties table to, for example System Properties. Select an application that is restricted to the admin role so that non-admin users cannot access it.
  3. From the Modules related list, click New.
  4. Complete the form fields.
    Field Description
    Title Defines the module name. For example, All Properties.
    Application Menu Specifies the name of the application menu the module appears under. This field should automatically be populated with the name of the application you accessed the Modules related list from.
    Link type Specifies the type of link this modules opens. For a list of system properties, select List of Records.
    Table Specifies the table used by the module. Select System Properties [sys_properties].
  5. Submit the form.
  6. Verify that the module was created. For example, navigate to System Properties > All Properties.