Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
4,366,955
Community Members
 
Community Events
168
Community Groups

Update due date of blocked issues if due date changes

Hello!

I do have many issues which block other issues. 

If I change the duedate of an issue, I want the start date and due date of every blocked issue to be changed by the same delta.

 

Example:

Issue1: due date = 10.1.2022 blocks Issue2 (link is set)

Issue2: starte date = 20.1.2022; due date = 14.2.2022

 

Now if Issue1 due date is changed to 15.1.2022 (delta = 5 days) I want Issue2 start date and due date to change by 5 days too.

 

My rule looks as follows:

image.png

with:

{{issue.duedate.plusDays(fieldChange.to.diff(fieldChange.from).days)}} 

and 

{{issue.startdate.plusDays(fieldChange.to.diff(fieldChange.from).days)}}

 

Due date and start date, both endup empty.

 

What is wrong with the calculation?

 

Thanks for your help!

 

1 answer

1 accepted

1 vote
Answer accepted

Hi @Michael Dammerer -- Welcome to the Atlassian Community!

First thing: please think about your edge cases to test and decide how to handle them in the rule:

  1. empty Due Date to empty value (this is possible for some edits)
  2. empty Due Date to non-empty value
  3. non-empty Due Date to empty value
  4. normal case: non-empty Due Date to non-empty value

Next, I wonder if there is a field typing issues, so perhaps try adding toDate before the diff() calls, such as

{{fieldChange.from.toDate}}

If that doesn't work, try explicitly referencing the changed field data with:

{{changelog.due date.from.toDate}}

Kind regards,
Bill

Thanks for your Help. Now it Works.

I had to fix two bugs:

I needed to add toDate as you proposed. 

and "issue.startDate" needs to be "issue.start Date" with a space.

 

which is weard, because "issue.dueDate" is without space.

 

My Automation now looks like this:

image.png

 

with the formulas:

for duedate:

{{issue.duedate.plusDays (fieldChange.from.toDate.diff(fieldChange.to.toDate).days)}}

 

for start date:

{{issue.start Date.plusDays(fieldChange.from.toDate.diff(fieldChange.to.toDate).days)}}

Well done; I am glad to learn you got this to work!

The smart values are case-sensitive and spacing-sensitive, so when in doubt use the information in this how-to article to confirm the smart values: https://support.atlassian.com/cloud-automation/docs/find-the-smart-value-for-a-field/

Also, I note in your rule that you are editing the same issues within the branch multiple times.  That could cause some problems of data getting "walked over" by later edits.  I recommend changing your branch to:

  • branch: on linked issues
    • action: edit the description
    • action: re-fetch  (This will reload the issue data before proceeding, although it will slow down the rule a bit.)
    • condition: due date is not empty
    • condition: start date is not empty
    • action: edit the due date and start date fields with one action (You may select multiple fields for an edit operation)
  • ...

Please let your testing decide if you want to do this change.  If your rule works and the description is still present after the date field edits, your rule is okay as-is.

This automation works really well. Is there anyway to only allow working date and not weekend?

 

Thanks!

Hi @Frank Liang -- Welcome to the Atlassian Community!

You can perform the date diff on business days to exclude weekends: https://support.atlassian.com/cloud-automation/docs/jira-smart-values-date-and-time/

However, that will not account for removing any holidays (non-working days) you have defined; only weekends.

Kind regards,
Bill

Suggest an answer

Log in or Sign up to answer
TAGS

Atlassian Community Events