Keep track of important status updates

Use case

Status updates are key to successfully managing projects. Usually you need to capture additional information which often gets lost in the comment history.

This use case combines multiple custom text fields and populates the automatically using post functions.

UseCaseStatusUpdates1.png
UseCaseStatusUpdates2.png

Prerequisites

Create three custom fields

  1. Create a custom field of type: Text Field (multi-line)
    Name: Status Update

  2. Create a second custom field of type: Text Field (multi-line)
    Name: Current status

  3. Create a third custom field of type: Text Field (multi-line)
    Name: Status History

  4. Navigate to the Field configuration and set the renderer of the 3 custom fields to "Wiki Style Renderer".

Create a transition screen

  1. Create a new screen
    Name: Status Update Screen

  2. Add the field Status Update to the newly created screen.

Set up a workflow transition

Create a new transition with the following parameters:

From Status: Any

To Status: Itself

Name: Status update

Screen: Status Update Screen

Add a Fields required or changed validator to the newly created transition.

Field

Status Update

Condition

Is required

Message to show when validation fails

Please enter a status update!

Once set up, the validator should look something like this:

KeepTrackOfImportantStatusUpdates1.png

🛠️ Configuration

Add an Update or copy field values post function to the workflow transition created in the prerequisites section.

Target issue

Choose Current issue

Configure the field: Current  Status

Field

Choose Current Status

Expression

Set the parsing mode to Advanced text and use the following expression

"*" + dateTimeToString({system.currentDateTime}, "yyyy-MM-dd", USER_LANG) + "* - *" + %{system.currentUserFullName} + "*\n" + %{issue.cfnnnnn}

%{issue.cfnnnnn} is the field code for the field Status Update

Configure the field: Status History

Field

Choose Status History

Expression

Set the parsing mode to Advanced text and use the following expression

Bash
%{issue.cfaaaaa} + "\n\n" + %{issue.cfbbbbb} 

%{issue.cfaaaaa} is the field code for the field Current Status

%{issue.cfbbbbb}is the field code for the field Status History

Configure the field: Status Update

Field

Choose Status Update

Value

Choose Clear field value

The field value must be cleared, so users will be presented with an empty text field the next time they leave a status update.

User

Choose Current user

📷 Screenshots

KeepTrackOfImportantStatusUpdates2.png
Use case Workflow function Parser functions
Prioritize the issues globally

Update or copy field values

indexOf() previousValue() issuesFromJQL()

Automatically fill an insight custom field after a transition

Update or copy field values

Create an internal Service Management comment on linked issues

Update or copy field values

Set a date on the same week day on alternate weeks

Update or copy field values

addDays() nextDayOfTheWeek() modulus() weekOfTheYear() datePart()

Set a Date Picker field to the nth day of the month

Update or copy field values

dayOfTheMonth() lastDayOfTheMonth() addDays()

Set the next fix version

Update or copy field values

floor() toNumber() substring() length()

Set fix version based on its start and release date

Update or copy field values 

toString() textOnStringList() unreleasedVersions() startDates() releaseDates() first()

Set Due Date with latest value among sub-tasks

Update or copy field values

fieldValue()

max()

siblingSubtasks()

Assign important issues to the project lead

Update or copy field values

Shorten the summary to a maximum number of characters

Update or copy field values

substring() length()

Match several values of a list

Update or copy field values

toString() distinct() filterByPredicate()

Assign issue to current user

Update or copy field values

Keep parent issue's priority in sync

Update or copy field values

Set assignee based on a former assignee

Update or copy field values

previousValue()

Add watchers ignoring inactive users

Update or copy field values

usersInGroup() isActive() toString() filterByPredicate()

Add days skipping weekends and holidays to a Date Picker field

Update or copy field values

addTime()

Keep track of important status updates

Update or copy field values

Fields required or changed

dateTimeToString()

Change the assignee to the next evaluator

Update or copy field values

first()

toStringList()

Add or remove request participants

Update or copy field values