I hope Asana supports the “not” operator for conditions in rules.
In the early stage, not all conditions are available for scenarios.
If we have the “not” operator, we can cover a wider range of situations for automation.
For example, I want to change a task status to “undone” when the task status changes to “complete” if all subtasks are not done.
Currently, we only have a condition for “all subtasks are done”. So we cannot create the right condition for that.
Yesterday they released an “otherwise” branch in Rules, did you see?
that’s basically what you need, make a branch with the right condition that does nothing (like multi-home in a dummy project of whatever) and then an Otherwise branch.
Unfortunately, it didn’t work well when a task has no subtask. The task status changed to “incomplete”. In this case, I need another condition for “at least one subtask is incomplete” or “task has no subtask” to achieve what I want.
Finally, I assume the following:
Even if I use the “not” operator, the rule doesn’t work well when “All subtasks are marked as *” doesn’t represent “A task has subtask/subtasks and All subtasks are marked as *”. So, my post might not be a good proposal.
Does someone have a solution for this specific case?
@lpb
Thanks for your comment.
For subtask(s), custom field2 is dummy.
In this case, only custom field2 for parent task(s) is important because rule3 runs on tasks (parent tasks). And the rollup function sets the state of subtask(s) for parent tasks automatically.
In good point of rollup(), it calculates just a value of subtask(s).
When I read the document of it, I strongly felt weird.
‘Why ? it doesn’t calculate values including parent task!’
It would have solved: Check if: not(All subtasks are marked as Complete)
Now I need to choose between All subtasks are marked as Complete and All subtasks are marked as Incomplete.
There may be a workaround possible but it is far from intuitive.
Being able to wrap a condition (or a set of conditions) to an inverse would solve this and many other use cases where the specific variations of the condition options don’t include the exact option I am looking for.