Just a heads up: On March 24, 2025, starting at 4:30pm CDT / 21:30 UTC, the site will be undergoing scheduled maintenance for a few hours. During this time, the site might be unavailable for a short while. Thanks for your patience.

×
Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Is there anyway in ScriptRunner to limit a behavior to the Jira Edit function only?

Melissa Thornton
Contributor
November 8, 2019

I want a user to be able to enter information into a 'business value' field but not edit that field after the initial entry.  

I have set up a behavior that  restricts entry to the field except when 'current user is in group a'.  However, I want any user in the project who enters a jira issue of that type to be able to input the initial data into the field.  I just do not want them to be able to edit it after initial save.

1 answer

1 accepted

Suggest an answer

Log in or Sign up to answer
1 vote
Answer accepted
PD Sheehan
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
November 8, 2019

You can use getActionName()

if(getActionName() == 'Create' || userIsInGroup){
field.setReadOnly(false)
} else {
field.setReadOnly(true)
}
Melissa Thornton
Contributor
November 11, 2019

Thank you for this.  I am still struggling.  I am not technical.  Below is the xml that was created by the Scriptrunner addon when I set this up to restrict access to the field except when current users is a particular group.  I want it to do this but only restrict when the function is edit.

I am not sure how to get that statement above into the xml that the interface created as it is not in what looks to be an xml format.

<config name="Play with edit restrict" description="figure out how to restrict field to edit only but the RTE group" use-validator-plugin="false" guideWorkflow="null">
<field id="customfield_15907" validator-script="" validator-class="" validator-method="" readonly="true" required="false" hidden="false" validator="server">
<except group="1-RTE"/>
</field>
</config>

PD Sheehan
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
November 11, 2019

Inf the "fields" configuration for the behavior, select the correct workflow for your project.

Then, against your custom field that you want to be read-only, click the "add new condition" and select Except and Workflow Action = Create (1).

What this will do is make the field read-only except when the user is in 1-RTE or when the screen is the create screen. 

If you need more complex conditional rules, then you would need to click the "Add server-side script" and write some script code that can control the behavior rules. But I think with your current example, with just 2 "Except" condition, you can manage without any code.

Like Melissa Thornton likes this
TAGS
AUG Leaders

Atlassian Community Events