Field Metadata Overrides

When Skuid retrieves a field from a data object, it returns the field name and field display type as it is stored within the data source. This is part of the field’s metadata—which describes what the data is and how it is used. Skuid allows builders to override this metadata to modify the data’s presentation at the field level.

Metadata Overrides

Use a metadata override to modify a field in ways that are not dictated within the original metadata.

Imagine connecting to a data source that defines fields in a way that Skuid doesn’t recognize—using, for example, a field with the display type of MONEY, where Skuid uses CURRENCY. Skud will not be able to access or use the data in the MONEY field because it’s not a recognized display type.

By using a metadata override, the builder can recharacterize the field by changing the Display Type property to CURRENCY, allowing Skuid to access and display the data.

Metadata overrides can be used to:

  • Change the field display type or label

  • Override picklist entries with builder-generated values

  • Specify the number of decimal points for a number field

  • Create a picklist-style UI element and overlay it on a text field or number field

  • Prevent a field from behaving like a combobox, and instead let it behave like a text or picklist field

  • Make a field behave like a number instead of a string (or vice versa)

  • Bring in custom picklist values from an object—without bringing that object into the page as a model

    Note

    Skuid can only override metadata for fields that exist within the data source.

Overriding field metadata

  1. In the App Elements pane, click an existing model.
  2. Beneath the model, click Fields.
  3. Click the field to override.
  4. In the Field Properties pane, check Override field metadata.

Once Override field metadata is checked, Skuid reveals new properties and a new tab that allow modification of the field’s display.

Note

Different types of fields offer different properties, and when you change the Display Type property, new options become available.

Properties

Basic tab [[]]

  • Field ID: The name of the selected field.

  • Display Type: The type of field. Options include:

    • Picklist fields and multi-select Picklists
    • String fields
    • Date and datetime fields
    • Number/integer, and currency fields
    • Address and phone fields
    • Text and textarea fields
    • URL fields
    • Boolean fields
  • Override field metadata: If checked, displays override options. These options vary depending upon the original Display Type for the field.

    • Label: Replaces default field label with custom text. Use the field picker to select a field to use as the column label.

      Note

      This feature lets you choose another field’s name and re-label the column with it, to shorten or clarify the column’s identity or purpose for users.

    • Inline Help Text (form/field editor only): If Show Inline Help is set in the field’s Basic tab, Skuid displays the text in this field as just-in-time user help.

      Note

      This option only works when the field is displayed in a Field Editor.

    • Display Type: A list of display types that the field can be converted into, including:

      Note

      This field lets you override the field type, temporarily altering how the field displays within Skuid—into a new field type, termed a “display type.” Overriding the field type in this way, however, does not alter the field type in the original data source.

      • Checkbox
      • Combobox
      • Currency
      • Date
      • Datetime
      • Email
      • Formula
      • Multi-select Picklist
      • Number
      • Percent
      • Picklist
      • Reference
      • Text
      • Textarea
      • Url
      • Unique Id (UUID)

      Depending on the Display Type selected, Skuid offers additional properties:

      • Required: If checked, text input is required. This setting does not persist across Skuid pages and does not override existing data model settings within the data source.

        Note

        Skuid automatically respects the validation rules and field-level security from the data source.

      • Picklist Source: The source for the values displayed in the picklist:

        • Manual: Picklist values are created manually by the builder in the Picklist tab.
        • Rows in Model: Picklist values are pulled from a model.
        • Snippet: Picklist values are sourced from a JavaScript snippet.
      • Return Type and Formula Return Type: Determines how Skuid displays the resulting values:

        • Checkbox

        • Currency

        • Date

        • Datetime

          Note

          Skuid stores all date and datetime fields in ISO 8601 format.

        When directly manipulating the value of a date or date time field in a Skuid model, the value must be formatted as follows:

        • Dates: yyyy-MM-dd
        • DateTimes: yyyy-MM-dd'T'HH:mm:ss[.SSS]'Z'
        • Percent
        • Number
        • Text
      • Read-only: If checked, text fields are read only and cannot be edited by users. This setting does not persist across Skuid pages.

        Note

        Skuid automatically respects the validation rules and field-level security from the data source.

      • Restrict Input to Picklist Entries: If checked, users must select from the provided picklist entries or their input will be discarded. If unchecked, users can enter values that do not correspond to the provided picklist values.

      • Placeholder: Text or prompts that appear inside editable sections within the component. Commonly used to provide instruction for more complex field requirements, this field is compatible with merge syntax.

      • Length:

        • For a currency field: The number of integers that can be entered in the field. Options: 0-17 or the field default.
        • For a text or textarea field: The maximum number of characters that can be entered in this field.
      • Decimal places: The number decimal places that can be used in the field. Options: 0-9 or the field default.

      • Rich Text: Enable rich text for the field.

Picklist Entries tab [[]]

This tab is available when the Display Type is Picklist or Multi-select Picklist and the Picklist Source is Manual.

Click fa-plus-circle to create a new value for the picklist dropdown menu, then configure:

  • Value: The value that is stored and used in the data source.
  • Label: The text displayed to the end user.

Create as many entries as needed.

Picklist Models tab [[]]

This tab is available when the Display Type is Picklist or Multi-select Picklist and the Picklist Source is Rows in a Model.

  • Model: The model that contains the field from which picklist entries are drawn.
  • Entry Value: The field used as the source for the values in the picklist.
  • Entry Label: The text displayed to the end user.

Formula tab [[]]

This tab is available when the Display Type is Formula.

Construct a formula in the Enter Formula field by clicking the buttons (and fa-caret-down dropdowns) provided:

  • Insert Field: The field from the model’s object to be used in the formula.

  • Insert Operator: The operator that defines the relationship between the field and its function. (Standard Skuid operators are used.)

    Note

    Equality operators are always interpreted strictly, meaning they compare both type and value.

    • For example, the formula 1 = "1" returns false, because "1" is a string type, even though the value could be interpreted as one.

    • Even if these equality operators are formatted non-strictly—= and !==—Skuid nonetheless interprets them strictly. Both = and == are interpreted as follows:

      1 = "1" returns false 1 == "1" also returns false

      Warning

      In previous Skuid releases, equality operators could be used non-strictly as == for equal and !== for does not equal. As of the Brooklyn Q2 Point Release, this functionality is no longer supported.

  • Insert Function: The desired function for the formula. For more on functions, see Formula and Function Reference.

Reference tab [[]]

This tab is available when the Display Type is Reference.

Reference Setup

The reference Display Type allows you to create a connection between the field (which is in a specific data source) and separate, secondary data source (the “reference”). In this tab, configure that relationship:

  • Data Source Type: The reference data source type.
  • Data Source: The specific data source to use as the reference.
  • SObject/EntityType: The specific object within the referenced data source.
  • Related Entity: Key Field: The field on the reference object that will serve as a “bridge” between the reference data source and the primary data source. (Used as a “key” to link the data.)
  • Relationship Field Name: The name of the field on the referenced object, stored as a UI-only field on the primary object to display a plain-language name for the referenced object. (This field stores information about the record that is referenced by the end user.)

Default Items tab [[]]

This tab is used to determine pre-populated values that display during new record creation.

Note

The properties available are determined by Display Type.

  • Content: Options include:

    • Single specified value: Use a specific value to pre-populate the field.

      • Value: The value to display to the user.

        Note

        Different display types offer different value options

        • Date fields include options to select:

          • Date formula syntax
          • A specific date (selected from a calendar picker)
    • Datetime fields include options to select a specific time.

    • Boolean fields let you choose true or false.

    • Multiple Specified Values: Use a set of specified values to pre-populate the field.

      • Values: The values. For each additional value, click Add Another Value.
    • Field from another model: Use a field from another model to pre-populate the field.

      • Source Model: The name of the model that contains the field.
      • Source Field: The specific field on the source model.
    • Page/URL Parameter value (Skuid on Salesforce): Use a Salesforce Lightning page or URL parameter (for example, the Id parameter) to pre-populate the field.

      • Parameter: Indicates the specific parameter.
    • Running user attribute: Returns records if the value of a field on the model matches the value of a field on the current user’s record. Options include:

      • Default Currency
      • First Name
      • Last Name
      • Email
      • Locale
      • Name
      • Organization Id
      • Organization Name
      • Profile Id
      • Profile Name
      • Session Id
      • User Id (default)
      • User Name
      • Use Rowl Id
      • User Type
      • Is Multi Currency Org