How to get Workflow Scheme ID

Aleksandr Serebriakov November 6, 2017

Hello,

I need to get a Workflow scheme for a current project, but trying to run code:

import com.atlassian.jira.component.ComponentAccessor

def SchemeID = ComponentAccessor.getWorkflowSchemeManager().getWorkflowScheme(issue.getProject()).get("id") 

 gives nothing.

JIRA v6.2.4

3 answers

1 accepted

0 votes
Answer accepted
Alexey Matveev
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 6, 2017
Hello,
Try this one
def SchemeID = ComponentAccessor.getWorkflowSchemeManager().getWorkflowSchemeObj(issue.getProject()).getId()
Aleksandr Serebriakov November 6, 2017

Cannot invoke method getId() on null object

Alexey Matveev
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 6, 2017

I see.

Does your issue.getProject() return a value. Put log.error(issue.getProject) and have a look.

Aleksandr Serebriakov November 7, 2017
groovy.lang.MissingPropertyException: No such property: getProject for class: com.atlassian.jira.issue.IssueImpl
Alexey Matveev
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 7, 2017

Try this code

 

import com.atlassian.jira.component.ComponentAccessor

def SchemeID = ComponentAccessor.getWorkflowSchemeManager().getWorkflowSchemeObj(issue.getProjectObject()).getId()
log.error(SchemeID)

 

It works for me

Aleksandr Serebriakov November 7, 2017

Yes, it does! Thank you for your help! :)
Been trying "issue.getProjectObject()" (as it is and also fetching key, name, id) since yesterday when I saw that "issue.getProject" is deprecated, but couldn't get anything and I don't know why.

But today logs show me normal output for

log.error(SchemeID)

and also for

log.error(ComponentAccessor.getWorkflowSchemeManager().getWorkflowSchemeObj(issue.getProjectObject()).getId())

...yesterday I've been trying only the last one.

Once Again - Thank you! :)

Aleksandr Serebriakov November 7, 2017

To get Workflow Scheme ID in Behaviuors

import com.atlassian.jira.component.ComponentAccessor

def ProjectObj = getIssueContext().projectObject
def SchemeID = ComponentAccessor.getWorkflowSchemeManager().getWorkflowSchemeObj(ProjectObj).getId()
0 votes
Reg Hawkins February 8, 2018

Can I do this in python?

would I have to do an api call?

0 votes
Jeremy M
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 6, 2017

Dear Aleksandr,

When you edit a Workflow Scheme, you will see its ID in the URL.

Friendly Regards,

Jeremy Mooiman

Suggest an answer

Log in or Sign up to answer