Combination of Validatiors

Issue #925 resolved
Johannes Tegethoff created an issue

The validator I use at the moment avoids changing the status of an issue as long as it's linked issue type is not closed. The linked issue has been created via handover transition in another project earlier in the workflow. This works fine. But if somebody creates the same link (implements) between two issues, it is not possible to change either of the issues statuses anymore. The user then should be able to close the issue. I already tried the "any but current project" but this does not work.

Is it possible to combine two validators for the same linked issue type? 2017-12-06 10_14_17-Transition_ Complete.png

Comments (9)

  1. Fidel Castro Armario repo owner

    Hi @johannestegethoff,

    I'm not sure I have correctly understood your problem, but please try the following 2 changes:

    • Select "any project" for condition about projects.
    • Empty parameter "Filtering by field values". I find very strange the boolean expression you are using here.

    Let me know whether these 2 changes fix your problem.

  2. Johannes Tegethoff reporter

    It should compare a triggered issue with the same summary, but I think this is not the problem here. I also tried "any project" but this does also not work.

  3. Fidel Castro Armario repo owner

    With your current configuration all issues linked to current one with "is implemented by" or "implements" issue links types should also have the same summary, otherwise the validator fails.

    Try unchecking parameter "Filtering by field values".

    If this solution doesn't solve your problem, please, describe your requirement using other words. I'm sure we can implement the validator.

  4. Johannes Tegethoff reporter

    Alright, let me explain the workflow: We have a Demand1 in Project1. If I fire a handover transition in this project for this demand1 demand1(copy) is created in Project2 . the link type between demand1 and demand1(copy) is "implemented by". The validator should check if demand1(copy) is set to the status "complete" because otherwise demand1 cannot be set to "complete". So demand1(copy) has to be set to complete before demand1.

    For this, the validator works fine BUT if someone sets the link issue type between let's say demand1 and demand2 within project1 manually to "implements/is implemented by" the validator does not allow to set the status to "complete" for either of those.

    Do you get my problem? It would be nice, if you could help.

    Thank you

  5. Fidel Castro Armario repo owner

    Hi @johannestegethoff,

    Try using "Boolean validator with math, date-time or text-string terms" with the following boolean expression:

    count(filterByPredicate(linkedIssues("is implemented by, implements"), ^%{00018} != %{00018} AND ^%{00016} not in~ ["Work Done", "Completed", "Rejected", "Closed", "Resolved", "Implemented", "Done", "Accepted", "Executed"])) = 0
    

    where %{00018} is field code for Project key, and %{00016} is field code for Issue status.

  6. Johannes Tegethoff reporter

    You are awesome. It works perfectly fine as far as I can see. Thank you very much, @fcarmario.

  7. Log in to comment