How to get the current issue key before creation in behaviour plugin?

import com.atlassian.jira.component.ComponentAccessor;
import com.atlassian.jira.issue.CustomFieldManager;
import com.atlassian.jira.issue.IssueManager;
import com.atlassian.jira.issue.Issue;
import com.atlassian.jira.issue.fields.CustomField;
import com.atlassian.jira.issue.MutableIssue

def issue = ComponentAccessor.getIssueManager().getIssueByCurrentKey("DC_CM-1893");

def customField = ComponentAccessor.getCustomFieldManager().getCustomFieldObject(10731L);//customfield id
def appt = getFieldById("customfield_10729")
if(issue.getCustomFieldValue(customField) =~ 'JIRA')
{

appt.setHidden(true);
}
else
{ appt.setHidden(false);

}

We use the above script. In the above code the validation works with  existing issue " DC_CM-1893".

Whereas we need to use the behaviour for current issue in create screen. 

Not able to get the current issue key and apply validation.

Instead of existing issue we need the current issue which is about to create.

Please let us know how to achieve this.

2 answers

1 accepted

This widget could not be displayed.

You can't.

The issue does not have a key until after the issue has been created - this effectively happens in post-functions that occur after the completion of the screen.

This widget could not be displayed.

Thanks Nic Brough,

We usually do hides the fields according to the other field values. There we don't need to mention the issue key, and it is taking automatically, whereas for the cascading select the same logic is not working. So we tried in the above script where we need the issue key.

This below script is working for normal select list and text field, but not for Cascade select list.

def Virtual = getFieldByName("Virtual Team")                                                                                                       def prcd = getFieldByName("Proof of Concept Driver")                                                                    log.debug("Virtual" + Virtual.getValue())

if (Virtual.getValue() =~ "Product Path")

{

prcd.setHidden(false);

prcd.setRequired(true);

}

else

{

prcd.setHidden(true);

 prcd.setRequired(false);

}

Please help.

Suggest an answer

Log in or Sign up to answer
Community showcase
Posted 51m ago in Jira

What modern development practices are at the heart of how your team delivers software?

Hey Community mates! Claire here from the Software Product Marketing team. We all know software development changes rapidly, and it's often tough to keep up. But from our research, we've found the h...

8 views 0 1
Join discussion

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you