Uploaded image for project: 'Jira Service Management Data Center'
  1. Jira Service Management Data Center
  2. JSDSERVER-6467

Make the "Block transition until approval" condition work for any transition in the workflow

    • 1
    • We collect Jira Service Desk feedback from various sources, and we evaluate what we've collected when planning our product roadmap. To understand how this piece of feedback will be reviewed, see our Implementation of New Features Policy.

      Summary:

      In Service Desk, there is a condition called "Block transition until approval" which is used by workflow with approval status.
      This condition only works for the 2 transitions which are connected to the status with approval, but it has absolutely no effect if it is added to any other transition in the workflow.

      Steps to reproduce:

      • Create a fresh Service Desk project
      • Take a look at the default workflow with approval "Service Request Fulfilment with Approvals workflow for Jira Service Desk", and notice that:
        • the status "WAITING FOR APPROVAL" is configured by default with an Approval:

        • the "Transition when approved" setting is mapped to the transition "Approved", and the "Transition when declined" setting is mapped to the transition "Declined"
        • the "Declined" and "Approved" transitions are automatically configured with the condition "Block transition until approval" (="Issue transition will be blocked if there is a pending approval):

      • Edit this workflow by adding the condition "Block transition until approval" to the transition "Cancel Request" which is connected from the status "WAITING FOR APPROVAL" to the status "CANCELED"

      • Publish the workflow
      • Create a new request using this workflow, with user1 as the reporter and user2 as the approver
      • Open the request by being logged in as user1
      • Check that:
        • the request is in the status "WAITING FOR APPROVAL"
        • the 2 transitions used in the approval configuration "Approved" and "Declined" are blocked as expected, since they can only be executed by the approver "user2"
        • however, the "Cancel Request" transition is still available and working, despite the condition "Block transition until approval"

      Suggested solution:

      It has been confirmed that this current behavior is intended by design (according to how the code was implemented), and is due to some workflow limitation.
      However, this behavior is not ideal and is confusing, since the workflow allows us to add the condition "Block transition until approval" to any transition, even though it has no effect.

      2 possible solution to this problem:

      • either make this condition effective when it's added to any transition in the workflow
      • or don't allow this condition to be added to any transition, since it has no effect anyway

        1. RequestToBeApproved_CancelStatusShowing.png
          RequestToBeApproved_CancelStatusShowing.png
          406 kB
        2. WorkflowScreenshot1.png
          WorkflowScreenshot1.png
          233 kB
        3. WorkflowScreenshot2.png
          WorkflowScreenshot2.png
          153 kB
        4. WorkflowScreenshot3.png
          WorkflowScreenshot3.png
          99 kB
        5. WorkflowScreenshot4.png
          WorkflowScreenshot4.png
          97 kB
        6. WorkflowScreenshot5.png
          WorkflowScreenshot5.png
          106 kB
        7. WorkflowScreenshot6.png
          WorkflowScreenshot6.png
          223 kB

            [JSDSERVER-6467] Make the "Block transition until approval" condition work for any transition in the workflow

            Also, I feel like this used to work just fine in 2020-- if there was a pending approval, even in transitions with "All", you could /not/ move it out of status to something else. I have it set up where the approval step is set up both on all statuses and on the transitions, but it still doesn't work.

            Rabbit Stoddard added a comment - Also, I feel like this used to work just fine in 2020-- if there was a pending approval, even in transitions with "All", you could /not/ move it out of status to something else. I have it set up where the approval step is set up both on all statuses and on the transitions, but it still doesn't work.

            Dana Frost added a comment - - edited

            The state of workflow design in JIRA and as its somewhat now associated with JSM (and different project types etc.) has just become a complicated mess. The fact that, even if you purchase JSM, you can not also use single or multiple approval within your custom workflows for Software projects etc. is a shame. There are even plugins to add approval schemes to base jira but, at this point, there should be a single approval scheme to rule them all. I am working on a 2 review workflow and I saw this in the "conditions" for a standard JIRA project (not JSM) and was, at first hopeful, and then after finding this.... back to disappointed.

            Dana Frost added a comment - - edited The state of workflow design in JIRA and as its somewhat now associated with JSM (and different project types etc.) has just become a complicated mess. The fact that, even if you purchase JSM, you can not also use single or multiple approval within your custom workflows for Software projects etc. is a shame. There are even plugins to add approval schemes to base jira but, at this point, there should be a single approval scheme to rule them all. I am working on a 2 review workflow and I saw this in the "conditions" for a standard JIRA project (not JSM) and was, at first hopeful, and then after finding this.... back to disappointed.

            Agreed, this is definitely a bug.  I would like this work on "ALL" transitions, so I can have a status be available from any status UNLESS it's waiting on an approval.

            Erin Blomert added a comment - Agreed, this is definitely a bug.  I would like this work on "ALL" transitions, so I can have a status be available from any status UNLESS it's waiting on an approval.

            This is annoying and should be a bug instead of a suggestion...

            Maik Winter added a comment - This is annoying and should be a bug instead of a suggestion...

              Unassigned Unassigned
              jrey Julien Rey
              Votes:
              57 Vote for this issue
              Watchers:
              20 Start watching this issue

                Created:
                Updated: