I need to restrict users from creating a sub task until a value in the parent it set to 'Yes'.
I am using the following on the validator for the Create Issue transition on the subtask. It doesnt allow me to create the subtask even when parent it set to 'Yes' :
transientVars["issue"].getCustomFieldValue("custom field name") == 'Yes'
Is there a way to do this?
Thank you in advance.
Hrm... your code is not checking the parent issue though.
The intuitive answer would be to use a validator something like this:
def customFieldManager = ComponentAccessor.getCustomFieldManager() def cf = customFieldManager.getCustomFieldObjectByName("My Custom Field") issue.parentObject.getCustomFieldValue(cf) == "Yes"
but I don't think that's going to work, because the link between parent and child won't be created until after the issue is committed.
But you can try it. I suspect it will give a null reference error, as parentObject will be null.
issue.parentObject.getCustomFieldValue(cf) == "Yes"
is only correct for getting text field values, if it's a select list or radios use:
issue.parentObject.getCustomFieldValue(cf)?.value == "Yes"
I think I would use the "behaviours" aspect of script runner to put a red warning on the form and make all fields read-only. JIRA really needs permissions per issue type.
Atlassian Summit is an excellent opportunity for in-person support, training, and networking.Learn more
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!
Unfortunately there are no AUG chapters near you at the moment.Start an AUG