Aggregated completion calculation

In case you set Aggregated parent properties option on, parent completion is calculated according to task Duration and cannot be manually edited. Following text explains how exactly aggregated completion is determined.

This is an easy case. Parent completion is calculated as sum of all subtask completion divided by number of tasks. It's a simple average function.

Example 1:

Completions: 50%, 20%, 0% and 0%

Parent completion:

(50% + 30% + 0% + 0%) / 4 = 20%

Application makes a corrections based on task durations. Basically, it's same as in first example except completions are multiplied by durations.

Example 2:

Completions: 0% and 50%

Durations: 1h and 2h

Parent completion:

(0% * 1h + 50% * 2h) / (1h + 2h) = 33%

Some subtasks with durations, some without

This is a specific situation. According to Example 2 formula, tasks without durations ("0h") wouldn't impact aggregated completion at all (X% * 0h = 0). That's why Agenda At Once internally, for this specific calculation, replaces "Zero" with "Almost zero" durations.

Example 3:

Durations: 0h, 0h and 1h

Completions: 100%, 100% and 20%

Parent completion:

(100% * 0.01h + 100% * 0.01h + 20% * 1h) / (0.01h + 0.01h + 1h) = 22%

Note that in this example it doesn't look like serious problem if we just ignored tasks without durations (completion would be 20%), but when more subtasks are involved it can make a big difference.