I’ve recently started migrating my non-recurring tasks and the one’s which I don’t need notifications to Anytype
I have a Master Tasks set which lists all top level tasks. I’m using the Linked Projects relation that comes with the built-in tasks type to differentiate between top level tasks and sub-tasks. So the Master Task Set has a filter of Linked Project Is Empty which should filter out all the sub-tasks from the set
Each task will then contain zero or more sub-tasks which are added as a list of objects to the Tasks relation of the top level task. Each tasks page also contains a link to a separate Set which lists the sub-task of this particular task. In this case, The Accounts to be deleted task links to an Accounts to be deleted Set which lists the sub-tasks of this task. I’m hoping to replace this link to the set with an Inline set once it is available
The linked set will then contain the list of sub-tasks along with other information for each sub-tasks. I’m using the filter Linked Project Is Accounts To Be Deleted which lists only the sub-tasks of the Accounts to be Deleted tasks
It is actually the inverse. I create separate sets to display only sub-tasks of the parent task
The minimum relations required for this workflow is:
Parent Task: Link to a parent task; Empty if parent task / root level task. This was the Linked Projects relation from my original post
Sub Tasks: List of sub-tasks; Empty for leaf level task. This was the Tasks relation from my original post
I’ve renamed the above relation names to better understand the workflow You can then add any number of relations you require such as the description, assigned to, etc.
Creating a Task without any sub-tasks
Create a new page of the task type
Fill meta data such as title and any optional relations you’ve added
The parent task relation should be empty since this is a root level task
The sub tasks relation should also be empty since this does not have any sub-tasks
Creating a Task with sub-tasks
Create a new page of the task type. Let’s say the name of the parent task is X
Fill meta data relations
In the sub tasks relation, add the list of task objects that are sub-tasks to this task. You can add one if already available or create a new one if required. Creating a sub-task
1. Create a new page of task type
2. Fill meta data relations
3. In the parent task relation, add a link to the parent task of this task. i.e, the parent task relation of each sub task should contain a link to the page X since that is the parent task of this task
4. The sub tasks relation should be empty since this does not contain any sub tasks.
The parent task of this should be empty since this is a parent task
The trick here is that each sub tasks should be pointing to the parent task by assigning it to the parent task relation
Creating a set of Parent / Root level tasks
Create a set of task type. This would now display all tasks including sub tasks
Add a new filter as: Parent task is Empty to filter out all sub-tasks since sub tasks will have a link to a parent task and only parent task objects have this relation empty
Creating a set to display only sub tasks of a particular task(X)
Create a set of task type. This would now display all tasks and sub tasks
Add a new filter as: Parent task is <X>. This would then only display objects which has the parent task value set to X
Now, to answer your question, since sub-tasks are actually added to the sub tasks relation of the parent task, they are getting listed when opening the task page. I’m planning to remove that and replace it with an inline set of sub-tasks once they get released I’ll update this post with screenshots once updated.
You can use the above technique to create sub-tasks of any level. So sub-tasks can inturn have several subtasks themselves
Adding links to the parent task in each of the sub tasks is something that is important to this workflow and something that has to be done manually for each new sub tasks. However, once backlinking ( In the roadmap ) is released, this would be automated so creating tasks and sub tasks would become much more easy and intuitive.
I hope this made it clear, if not, kindly let me know and I’ll update the post with a screen recording later
This system would solve my problem because my current task/subtask system (where I simply have a relation called “subtasks” that point to task objects) doesn’t allow for clicking on the subtasks. So when I’m in a task, I can see the subtasks, but without easily navigating to them (or marking them as done for that matter).
I might implement your system by creating a new template for the Task type; but there is no way for the subtask set, in the template, to automatically point to the subtasks of that particular task, correct? You must manually fill in the filter to only show subtasks of that task?
UPDATE: I just noticed I actually can click on a subtask in the relation field. It just requires clicking twice: once to open the values in the field, and a second time to open the specific object I’m trying to open. Not very convenient but workable for now.