Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents
minLevel1
maxLevel6
outlinefalse
typelist
printablefalse

Scenario

  • You want to

...

  • limit the number of characters a user

...

  • enters into a single-line

...

  • or multi-line text field.

  • You want to

...

  • indicate how many characters remain and if the maximum is exceeded.

...

Let's see how you can achieve the above scenarios using Power Scripts™ for Jira, a powerful scripting tool to help automate your Jira.

What

...

these Scripts

...

do

  • The listener script listens to the Summary field

...

  • and runs the executor script on any character entry or removal.

  • The executor script checks the number of characters against a declared maximum and disables the create/submit button if

...

  • exceeded

...

Prerequisites

  1. You have Jira Core or Jira Software installed

  2. You have Power Scripts™ for Jira installed

  • .

...

Configure Live Field Listener

You should configure this script as a Live Field script for the relevant project.

...

This Live Field script

...

listens to the Summary field and

...

provides feedback for how many characters the user has entered by invoking lfExecutor_CharacterLimitSummary.sil.

Code Block
if(argv["screen"] == "create" || argv["screen"] == "edit") {
  lfWatch("summary", {"summary"}, "lfExecutor_CharacterLimitSummary.sil" , {"keyup"});
}

Listener References Live Field Executor

lfExecutor_CharacterLimitSummary.sil

This Live Field script checks how many characters have been entered in the Summary field

...

and gives feedback. It also

...

removes the ability to

...

create or edit the issue if the number of characters exceeds an arbitrary value (we'll use 140 characters as an example).

Code Block
number sumLength = length(argv["summary"]);
number maxLength = 140;
number remLength = maxLength - sumLength;

string showRem = remLength;

if (sumLength<=maxLength) {
    lfShowFieldMessage("summary", showRem+" characters remaining", "INFO");
    lfEnable("editSubmit");
    lfEnable("transitionSubmit");
    lfEnable("createIssueSubmit");
    lfEnable("issueCreateSubmit");
}
else {
    lfShowFieldMessage("summary", "Character count exceeded!", "ERROR");
    lfDisable("editSubmit");
    lfDisable("transitionSubmit");
    lfDisable("createIssueSubmit");
    lfDisable("issueCreateSubmit");
}

...