---
title: "Use JQL to create a validator"
canonical: "https://support.appfire.com/space/CW/69304423/Use%20JQL%20to%20create%20a%20validator"
format: markdown
---
> Macro (aura-html)


# Summary

If you need to validate a transition based on the existence or non-existence of one or more issues determined from a JQL query, then read on! It is very simple to do with a [Conditioned validator](https://appfire.atlassian.net/l/cp/SbNsNo1s).

# Steps

| Step | Discussion | Examples |
| --- | --- | --- |
| Create a JQL query that will determine if the transition can proceed or not. | Test the JQL in the Issue Navigator first. | No unresolved sub-tasks: parent = XXX-1 and resolution is empty |
| Add a [Conditioned validator](https://appfire.atlassian.net/wiki/spaces/CW/pages/69304984) to the appropriate workflow transition | Assumes you have installed the [Update on Transition for Jira](https://appfire.atlassian.net/wiki/spaces/CW) add-on |  |
| Put the JQL query in the JQL Query field | It is likely you need to use one or more [substitution variables](https://appfire.atlassian.net/l/cp/jjBVkAPH) like **%original_key%** in place of a specific values you may have used while testing | parent = **%original_key%** and resolution is empty |
| Condition by how many issues are found by the query | - **%jql_result_count% **is the more [substitution variable](https://appfire.atlassian.net/l/cp/jjBVkAPH) that says how many issues were found
- Put that value in the **Condition 1** **Value** field
- Put **0** in the **Condition 1 Regex** field
- Likely user cases are:
  - Proceed with the transition if there are 0 issues found - do **not** select the **Negative** checkbox
  - Proceed with the transition only if there was at least 1 issue found - select the **Negative** checkbox | All sub-tasks must be resolved<br>```
Condtion 1:
   Value: %jql_result_count%
   Regex: 0
``` |
| Add a user friendly message that will show if the validator fails | Add appropriate text to the **Message** field and optionally use [substitution variables](https://appfire.atlassian.net/l/cp/jjBVkAPH). | ```
Message: All sub-tasks must be resolved before you can proceed. The following sub-tasks are not resolved: %jql_result_list%.
``` |
| Save the post function |  |  |
| Run a test scenario | - Use [Retrieve problem determination information](https://appfire.atlassian.net/wiki/spaces/CW/pages/69304550) to debug your scenario if necessary.
- JQL errors will be logged in the JIRA application log. **Note**: This is the most common cause for problems.
- Remember, the JQL query runs under the user's permission unless you are using **Acting user** support. |  |

# Screenshot

![image](media://000bb493-217d-4eef-8e0e-dec9b65a6abf)