Skip to end of banner
Go to start of banner

Reschedule issues

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Next »

Problem

You want the Project Lead to reschedule issues in one simple step, setting the Fix Versions, Assignee and an optional comment.

Solution

Create the action

Begin by creating the Reschedule action.

Condition Script

Then, we must make it available only for the project lead and only for issues that are not Resolved or Closed, so we write the following condition:

Condition Script
number ENABLED = 1;
number DISABLED = 2;
number HIDDEN = 3;

if(projectPM(project) == currentUser() && status != "Resolved" && status != "Closed"){
 return ENABLED;
}

return HIDDEN;

Screen Script

Next, we write the Screen Script. We must ask the user what Fix Versions to set, a new assignee (we will provide the old assignee as a default value) and a comment field.

Screen Script
string TEXT = "TEXT";
string TEXT_DISABLED = "TEXT_DISABLED";
string [] fields;

// fix versions
fields = addElement(fields, "Fix Versions");
fields = addElement(fields, TEXT);
fields = addElement(fields, "");

// assignee
fields = addElement(fields, "Assignee");
fields = addElement(fields, TEXT);
fields = addElement(fields, assignee);

// comment
fields = addElement(fields, "Comment");
fields = addElement(fields, TEXT);
fields = addElement(fields, "");

return fields; 

This will generate the following screen

Type conversion

 Don't forget that assigning a string value containing pipes to a string array, will split the original string at the position of each pipe. Therefore, we can use "1.0|2.0" as a value for Fix Versions to set multiple values.

Action Script

Finally, the Action Script.

Action Script
string [] fvers = getElement(argv, 1);
string newAssignee = getElement(argv, 3);
string comment = getElement(argv, 5);

fixVersions = fvers;
assignee = newAssignee;
if(isNotNull(comment)){
	addComment(key, currentUser(), comment);
}

Table of Contents

  • No labels