Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Definition

This plugin is designed to enhance Joget DX 8 functionality. Known as the JDBC Validator, it empowers users to conduct validations through custom SQL queries. With this capability, users can ensure the accuracy and consistency of their data within the Joget DX 8 platform.


New Feature

When crafting the SQL query, users have access to dynamic parameters to retrieve form field values. Two primary symbols are available for this purpose: the question mark '?' and curly braces '{fieldId}'. These symbols serve distinct functions in data retrieval.

The question mark '?' is utilised to fetch the current form field's value within the SQL query. It enables users to perform validations based on the data input provided by the user during the form-filling process

.

On the other hand, the curly braces '{fieldId}' serve a different purpose. They allow users to access values from other form fields, not necessarily the one currently being validated. This versatility is valuable in scenarios where cross-field validation is required, enabling comparisons and dependencies between different form elements.

By leveraging these dynamic symbols within their SQL queries, users can create sophisticated validation rules tailored to their specific business requirements. Whether it's simple data checks or complex inter-field relationships, the JDBC Validator provides a flexible and powerful solution to ensure data integrity and compliance within the Joget DX 8 environment.

Figure 1: JDBC Validator Properties

NameDescription
Custom JDBC DriverCustom JDBC Driver. This field is required when Custom Datasource is selected in Datasource above.
Custom JDBC Password

Custom JDBC Password. This field is required when Custom Datasource is selected in Datasource above.

Test the connection parameters

Click on the "Test Connection" button at the bottom of the page to quickly test out your configurations

Datasource
  • Custom Datasource
  • Default Datasource

By selecting Default Datasource, the database your Joget is currently using will be selected

Mandatory The purpose of a mandatory select box in the JDBC Properties option is to require the user to select a value from a predefined set of options, ensuring the proper configuration of essential settings and preventing potential errors caused by invalid inputs.
Custom Error Message to Show When Validation FailCustom Error Message to Show when Validation Fail" input field in the JDBC Validator properties allows you to provide a personalized error message that will be displayed to users when the validation query does not pass. This feature helps improve the clarity and usability of your Joget DX 8 applications by offering more meaningful feedback to users during the form submission process.


Understanding JDBC Validator 

Query Explnation 

Assuming you have a Joget DX 8 form that deals with budget entries and you want to validate whether a budget entry with the same year ('c_year') and name ('c_name') already exists while excluding the current budget entry (identified by its 'id'), you can use the following SQL query within the JDBC Validator (shown in Figure 2):

SELECT * FROM app_fd_budget WHERE c_year = {year} AND c_name = {name} AND id != {id}

Explanation:

  1. SELECT * FROM app_fd_budget: This part of the query selects all columns ('*') from the 'app_fd_budget' data store. The data store in Joget is similar to a table in a database, and 'app_fd_budget' is the name of the data store containing budget entries.
  2. WHERE c_year = {year} AND c_name = {name} AND id != {id}: This is the WHERE clause, which filters the results based on specific conditions.c_year = {year}: Here, the curly braces '{year}' denote a placeholder for the value of the 'c_year' field that will be supplied during the execution of the query. In Joget DX 8, you can use '{year}' to represent the value of a form field with the ID 'year'. This part of the condition checks if the 'c_year' field in the 'app_fd_budget' data store matches the value of the 'year' form field.

...


The combination of these conditions ensures that the JDBC Validator checks for duplicate budget entries with the same year and name, excluding the current budget entry being edited (identified by its 'id') from the

...

validation process. 




Image Added

Figure 2 DemoImage Removed