What is the concept behind subtask date incrementing with parent recurrence? Topic is solved

How-to's and other software related queries

Moderator: abstr

Post Reply
Ryan
MVP
MVP
Posts: 760
Joined: Mon Aug 03, 2020 2:47 am

What is the concept behind subtask date incrementing with parent recurrence?

Post by Ryan » Mon Apr 22, 2024 1:59 pm

Sorry for the fuzzy subject line, I had trouble deciding what to call this topic. :?:

I have a relatively complicated project that has to be completed once per year. It has about 50 or more subtasks in its tree. Generally, each of those subtasks retains the same month and day for its start and due date from year to year, only the year gets advanced when the task is completed.

Some time ago I discovered a behavior that I like to use for task trees like this.

Instead of making each individual task recurring, so that it recurs once per year, I only need to make the root parent task recur annually: all the subtasks occur only 'Once'. Then when the project is finished for the year, I only need to set the root parent attribute to completed, and all of the subtasks will automatically advance their 'Start' and 'Due' dates to the next year.

One of the key advantages to this is that when a subtask is completed, instead of advancing its date to the following year, it causes the strikeout line across the task. If it was set to recur, the date would be advanced and there would be no strikethrough line on the task to allow easy visual identification that it was completed for the year.

This has a couple of advantages.

First it allows me to look at each subtask branch and quickly see which subtasks have been completed. It's easy to see, they all have strikethrough font. If they were each set to occur individually this would not be the case and I would have to inspect each subtask carefully to see what year it is set to. I would only know if it was completed if it was set to the current year plus one. (Sidenote...If the project spanned two calendar years then it would really be confusing to figure out which tasks were completed and which tasks were not.).

The second benefit is that the tree and branches retain their sort order when the sort order includes 'Start' and/or 'Due' date. Since the subtasks are not recurring, the completed tasks will appear at the bottom of the tasks in the branch making them intuitively easy to identify. If they were set to recurring, they would follow the sort order which could be confusing since you will have next year's tasks mixed in with this year's tasks and no strike through to identify which ones are done for the year.

It seems clear that this behavior has to do with subtasks inheriting their parents' attributes in some way. But it doesn't seem to completely fit the inheritance concept. I'm fuzzy on this and hoping you can shed some light on it for me.

In addition to the pros, there is a con or two to this method also. But I'd like to try to understand this tree behavior better before explaining that since it's a bit mysterious to me.

My question:
The subtasks don't seem to be "inheriting" their parents' recurrence attributes exactly because they are still only set to 'Once' even though the root parent is set to recurring, but they are inheriting the date increment when the parent is set to completed. Is there a concept that explains this behavior?

Image

User avatar
abstr
Site Admin
Posts: 370
Joined: Sun Jul 28, 2019 12:22 pm

Re: What is the concept behind subtask date incrementing with parent recurrence?

Post by abstr » Tue Apr 23, 2024 12:43 am

Hi @Ryan

Could you possibly provide me with a simple example tasklist which demonstrates the issue you are experiencing pls?

I'm not finding it possible to properly understand the issue just from your words...

Then I'll move the topic to the bug forum, and if it later proves not to be a bug (but you good at finding bugs) I can just move it back.

Ryan
MVP
MVP
Posts: 760
Joined: Mon Aug 03, 2020 2:47 am

Re: What is the concept behind subtask date incrementing with parent recurrence?

Post by Ryan » Tue Apr 23, 2024 1:35 am

Sorry Dan... sometimes I get so wrapped up in thinking about it I forget stuff. I should have posted a file because I agree my verbal description is unintelligible!

Here is an example .tdl file.

The 'Root Parent' task recurs annually. But none of the subtasks have any recurrence attributes set.

Yet when you set 'Root Parent' to completed, all of the subtasks advance their 'Start' and 'Due' dates to current year +1 as if they too were recurring and had the same recurrence settings as 'Root Parent'.

Now... one of my fears is that this IS a bug because I find it a very useful feature! I hope it is not, but I am trying to understand the concept involved here. The subtasks are 'inheriting' 'Root Parent's recurrence settings, but only if you set 'Root Parent' to completed. They will not reflect the recurrence settings if you mark the subtasks completed.

Again, I LIKE this behavior. But I am confused about the concept behind it versus inheritance.

If you can shed any light on this it would be great!
Attachments
Completing recurring parent task with non recurring subtasks.tdl
(5.43 KiB) Downloaded 126 times

User avatar
abstr
Site Admin
Posts: 370
Joined: Sun Jul 28, 2019 12:22 pm

Re: What is the concept behind subtask date incrementing with parent recurrence?

Post by abstr » Tue Apr 23, 2024 7:27 am

The easiest way to answer this is to consider the alternative:
  • You complete the recurring task and its dates move forwards as expected, but its subtasks' dates do not, so they still point to the year before and will appear on the Calendar for the year before.
That outcome seemed (to me) to be so fundamentally wrong that I had to choose the current approach.

And, of course, there's no in between - It's either offset the dates or do not offset the dates.

Really I'm just synchronising the subtasks to their parent task.

Ryan
MVP
MVP
Posts: 760
Joined: Mon Aug 03, 2020 2:47 am

Re: What is the concept behind subtask date incrementing with parent recurrence?

Post by Ryan » Wed Apr 24, 2024 1:45 am

Thanks Dan. That's a relief, I'm glad it wasn't a bug because I wouldn't want to see that behavior change. Definitely sounds right to me. After nearly 30 years of using an Outliner/PIM as my "Task Manager," it seemed a little confusing to me as in general an "outliner" doesn't care about things like that. But it makes perfect sense in the case of TDL.

It's a feature I really like as opposed to making each of the subtasks recurring if they are going to use the same settings as the parent.

But there is one weak spot I'm aware of. If a subtask is locked (and I do like to lock most of them because it is in effect a "template"), it's date will not be changed when the parent is completed. This could cause a task to be left behind when the rest of them are advanced in time. When you have many layers of subtasks that could go unnoticed. So I have to leave them unlocked even though I would prefer to lock them.

User avatar
abstr
Site Admin
Posts: 370
Joined: Sun Jul 28, 2019 12:22 pm

Re: What is the concept behind subtask date incrementing with parent recurrence?

Post by abstr » Thu Apr 25, 2024 12:53 am

Ryan wrote:
Wed Apr 24, 2024 1:45 am
If a subtask is locked it's date will not be changed when the parent is completed.
Tricky, because In addition to offsetting the dates TDL also clears 'Time Spent' and 'Percent Complete' which would also fail if the task were locked.

And there no way of knowing if the subtask has always been locked, in which case it should stay locked, or if it was locked later in its life-cycle, in which case the lock should be removed when the parent recurs...

One possibility would be to display a popup dialog when a recurring task with locked subtasks is completed which would allow the user to resolve all these issues explicitly...

Ryan
MVP
MVP
Posts: 760
Joined: Mon Aug 03, 2020 2:47 am

Re: What is the concept behind subtask date incrementing with parent recurrence?

Post by Ryan » Fri Apr 26, 2024 1:05 am

That's a really good idea.

User avatar
abstr
Site Admin
Posts: 370
Joined: Sun Jul 28, 2019 12:22 pm

Re: What is the concept behind subtask date incrementing with parent recurrence?

Post by abstr » Fri May 03, 2024 6:48 am

Ryan wrote:
Fri Apr 26, 2024 1:05 am
That's a really good idea.
Unless you have a recurring task containing both 'types' of locked subtasks!

ps. If you really want that popup could you create a specific suggestion for that please?

Post Reply