AgileApps Support Wiki Pre Release

Validations

From AgileApps Support Wiki
Revision as of 11:24, 9 June 2020 by imported>Aeric

GearIcon.png > Customization > Objects > {object} > Validations

When a telephone number in your database has too many digits, it is bad information, and it slows you down. Clean data is essential to efficient performance. Data validation policies help to avoid simple mistakes, and assure that the data entering your system is sound.

Validation policies let you establish triggering actions, custom criteria, and error messages that are activated when data changes.

Validation policies compare field data using formulas you create - the result is a true or false value. When the return value is true, no action is taken. When false, the system displays the error message you specify.

Sample Validation

You might check that a telephone number entered in a data field has the correct number of digits. If the number of digits is not equal to 10, an error message is displayed, and the process stops until the correction is made.

While this is a simple example of data validation, you can easily create complex and powerful validation formulas with the available picklists.

Create the Validation Criteria

For the validation criteria, enter a Formula Expression. Functions are available for all data types: date, logical, math and text. The expression you develop to create a validation policy can contain multiple fields to validate, such as ensuring that phone numbers do not exceed 10 digits or names do not contain invalid characters.

Validate Incoming Object Data

  1. Click GearIcon.png > Customization > Objects > {object} > Validations
  2. Enter a Name for the validation policy
  3. To enable the policy, click the Enable checkbox
  4. Choose a Triggering Action. The data validation policy will be applied when one of these actions is applied to the record:
    • Add
    • Update
    • Delete
  5. Enter an Expression in the Validation Criteria section. To trigger a validation error, the expression must evaluate to true.
    Tip: It is often easier to create the expression that defines valid data. Put the entire expression in parentheses, and add not.
    For example: !(...valid-data expression here...), where "!" = "not".
    Learn more: Formula Expressions
    Field
    The field that must contain the condition. All fields contained in this object are listed.
    Operator
    Choose an operator to build an expression
  6. Choose Function
    • Select the type of function, the specific function to use, and click the Insert button. The types of functions are:
      • Date Functions
      • Logical Functions
      • Math Functions
      • Text Functions
  7. Click the [Check Syntax] button to validate the expression.
  8. In the Set field level display for error messages section, choose the fields for which you want to display the error messages at a field level. You can select a maximum of 3 fields.
  9. Enter the Error Message that you want to appear if the data causes an error condition in the validation policy.

Notepad.png

Note: If you select field level display of error messages, then the application overrides the value entered here.

Complex Validation and Data Formatting

It is often useful, for example, to allow a phone number to be entered in multiple formats, but store it in a common format. In such situations, you want to re-format the data that has been entered before validating it. Or you may have validation policies that depend on complex factors that aren't easily expressed, or that need to be reused in multiple forms.

For such situations, there are two options:

  • Field and Form scripts
A field script can indicate that data is invalid before data is saved.
A form 'On Save script can surround a field that is missing data with a red box.
But they only work for data entered using that form. They don’t validate data entered using an API.
Tip:
To use a script in multiple forms, upload it as a static resource
Static Resources#Accessing a JavaScript Resource from an Object Form
  • Add/update rules
An add/update rule checks the data before it is stored in the database.
It works for APIs as well as forms. But it doesn’t do as a good a job of highlighting the problems.
The rule can compare fields directly and invoke Java code that throws an exception.
Or the Java code can do the validation (allowing it to be reused elsewhere).
Learn more: Event Rules