ScriptRunner gives an email template for getting the value of custom fields in the 'Send Notification' post function, but it does not seem to work. I can't find any documentation on how this is achieved.
def fields = get('/rest/api/2/field')
.asObject(List)
.body as List<Map>
def customFieldId = fields.find { it.name == 'TextFieldB' }.id as String
def customFieldValue = (issue.fields[customFieldId] as Map)?.value
"""Dear ${issue.fields.assignee?.displayName},
The ${issue.fields.issuetype.name} ${issue.key} with priority ${issue.fields.priority?.name} has been assigned to you.
Description: ${issue.fields.description}
Custom field value: ${customFieldValue}
Regards,
${issue.fields.reporter?.displayName}"""
You can just replace:
def customFieldValue = (issue.fields[customFieldId] as Map)?.value
with:
def customFieldValue = issue.fields[customFieldId]
It might due to old API. I am not sure. I have tested my snippet, it works.
The reason for defining those variables so that user don't have to look for the custom field id, you just need to use the custom field name "TextFieldB".
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I figured it out, you can access the value by just going
Custom field value: ${issue.fields.customfield_ID} where ID is the id of your custom field. Not sure why you would define those variables up top, it doesn't work and is confusing :)
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.