Hello,
I would like a section of my Behaviours script to apply only to newly created issues, and not to issues being edited. How can I specify this?
Thanks in advance!
Hello,
You can use 'getActionName()' to tell what action you are currently in. For the 'Create' action, you would do something like this:
getActionName() == "Create"
For example, here's a simple behaviour that will set the description to 'Hello' on create.
def field = getFieldById("description")
if(getActionName() == "Create"){
field.setFormValue("Hello")
}
Hope this helps! Let me know if you have any other questions.
Jenna
Hi Jenna,
Thanks, that's very useful to know.
For my particular solution I ended up doing this, in order to check whether the field in the edit view was different from the value stored in the database:
//grab due date in edit view
def dueDate = getFieldById(getFieldChanged());
//grab current due date from database
CustomField currentDueDate = customFieldManager.getCustomFieldObject('customfield_10025');
String currentDueDateAsString = (underlyingIssue?.getCustomFieldValue(currentDueDate) as Date)?.dateString;
//check if date was changed in edit view
if(!dueDate?.value || (dueDate?.value as Date)?.dateString != currentDueDateAsString) {
//require reason box so that user is forced to enter text
reasonBox.setRequired(true);
}
As this differentiation turned out to be more relevant than whether the issue was newly created or not.
But I find this information very useful, so thanks again.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.