Features used to implement the example
Example: Set a custom field "Urgency" depending on a combined value of issue's priority and "Impact" custom field
Let's suppose we want to set a custom field called "Urgency" depending on issue "Priority" and the value of another custom field called "Impact". We associate a numerical value to issue "Priority" and to custom field "Impact". These two values may be applied to a mathematical function to calculate another numerical value that will represent the "Urgency" of the issue. In our case we simply have summed both values, but we could have used a much more complex formula. Once we get the result of the sum, we revert the process, associating each possible result of the sum to an options in custom field "Urgency".
- Use post-function Set a field as a function of other fields to set on virtual fields "Ephemeral number 1" and "Ephemeral number 2" with a numeric value associated to issue "Priority" and the value of custom field "Impact".
- Use post-function Mathematical and date-time expression calculator to calculate the sum of "Ephemeral number 1" and "Ephemeral number 2" and store the result on "Ephemeral number 1".
- Use post-function Set a field as a function of other fields to set custom field "Urgency" from the value of "Ephemeral number 1".
Using post-function Set a field as a function of other fields we associate a numerical value to each possible value of issue "Priority", and this value is stored in auxiliary field "Ephemeral number 1".
Text to be parsed is:
(Trivial) 0
(Minor) 1
(Major) 2
(Critical) 3
(Blocker) 4
Using post-function " Set a field as a function of other fields" we associate a numerical value to each possible value of custom field "Impact", and this value is stored in auxiliary field "Ephemeral number 2".
Text to be parsed is:
(Low) 0
(Medium) 1
(High) 3
Using post-function " Mathematical and date-time expression calculator" we store in "Ephemeral number 1" the result of summing "Ephemeral number 1" and "Ephemeral number 2".
Text to be parsed is: {00058} + {00059}
Note that:
- {00058} is code for numeric value of "Ephemeral number 1"
- {00059} is code for numeric value of "Ephemeral number 2"
Using post-function Set a field as a function of other fields custom field "Urgency" is set depending on the result of the former sum, which is stored in "Ephemeral number 1".
Text to be parsed is:
(0)No Urgency
(1)Very Low Urgency
(2)Low Urgency
(3)Moderate Urgency
(4)High Urgency
(5)Very High Urgency
(6)Top Urgency
Once configured "Create Issue" transition looks like this:
Other examples of that function
Set a field as a function of other fields
- Add watcher depending on security level
- Add watchers based on issue type
- Add watchers depending on the value of a custom field
- Assign issue based on the value of a Cascading Select custom field
- Assign issue to a specific user based on a specific custom field value
- Assign issue to current user if assignee is empty
- Assign issue to current user if the user is not member of a certain project role
- Change assignee based on a custom field
- Change parent's status depending on sub-task's summary
- Changing issue priority depending on issue description
- Compose dynamic text by inserting field values in a text template
- Copy "Due date" into a date type custom field in a linked issue if it's greater than current issue's "Due date"
- Limit the number of hours a user can log per day
- Make parent issue progress through its workflow
- Rise priority if due date is less than 3 weeks away
- Set "Due date" depending on the value of other fields, in case it's uninitialized
- Set "Due date" to a specific day of next week no matter of date of creation this week
- Set "Due date" to current date at issue creation if not initialized
- Set a custom field "Urgency" depending on a combined value of issue's priority and "Impact" custom field
- Set a date based on current date
- Set a field based on reporter's email
- Set a watcher at ticket creation depending on custom field's value
- Set assignee depending on issue type
- Set security level based on groups and project roles the reporter or creator are in
- Set security level depending on reporter or creator
- Set the assignee based on a condition
- Set the value of a field of type "User Picker" depending on other field's value
- Set watchers depending on the value of a custom field
- Setting a custom field (User Picker) based on the value of another custom field (Text Field)
- Setting a field's default value depending on another field
- Setting the priority depending on the multiplication of custom fields
- Transition an issue automatically depending on the value of a field
- Unassign an issue when assigned to project leader
- Update checkboxes custom field if a file has been attached during a transition
- Using project properties to calculate custom sequence numbers
Mathematical and date-time expression calculator
- Automatic work log with start and stop work transitions
- Automatically log work time when the user uses a "Stop Progress" transition
- Calculate the time elapsed between 2 transition executions
- Getting the number of selected values in a custom field of type Multi Select
- Implement a form with a series of questions and calculate a numeric value based on the answers
- Increment a field or set to 1 if it's not set
- Set "Date-Time Picker" custom field with current date-time
- Set "Due date" 6 natural days (or work days) earlier than a "Date Picker" custom field
- Set "Due date" to a specific day of next week no matter of date of creation this week
- Set "Due date" with certain time offset from current date
- Set "Total time spent" to "Current date and time - date and time of last update"
- Set a custom field "Urgency" depending on a combined value of issue's priority and "Impact" custom field
- Sum "Time Spent" in all sub-tasks of issues linked with issue link types "LinkA", "LinkB", "LinkC"
- Triage Jira Service Desk email requests (Move issues)
- Using project properties to calculate custom sequence numbers