Tasks progress by client and project

[#if tasksreport.dateIntervalStart??] [#if tasksreport.dateIntervalEnd??] ${tasksreport.dateIntervalStart?date} - ${tasksreport.dateIntervalEnd?date} [#else] After ${tasksreport.dateIntervalStart?date} [/#if] [#else] [#if tasksreport.dateIntervalEnd??] Before ${tasksreport.dateIntervalEnd?date} [#else] All dates [/#if] [/#if]



[#if tasksreport.tasks?size == 0]

There is no data available for the selected report settings.

[#else]

[#assign allTasks=tasksreport.filterWithTimeOrMoney(tasksreport.tasks)] [#assign allEstimated = tasksreport.calculateEstimatedTimeAsDecimal(tasksreport.tasks)] [#assign allElapsed = tasksreport.calculateElapsedTimeAsDecimal(tasksreport.tasks)]

Description

Est. Time

Time

Progress

[#list tasksreport.groupClients(allTasks)?sort as client] [#assign clientTasks=tasksreport.filterByClient(allTasks, client)] [#assign clientEstimated = tasksreport.calculateEstimatedTimeAsDecimal(clientTasks)] [#assign clientElapsed = tasksreport.calculateElapsedTimeAsDecimal(clientTasks)]

${client.name}

[#list tasksreport.groupProjects(clientTasks)?sort as project] [#assign projectTasks=tasksreport.filterByProject(clientTasks, project)]

${project.name}

[#list projectTasks?sort as task] [#assign taskEstimated = tasksreport.calculateEstimatedTimeAsDecimal([task])] [#assign taskElapsed = tasksreport.calculateElapsedTimeAsDecimal([task])]

${task.name}

${task.description}

${taskEstimated}

${taskElapsed}

[#if taskEstimated != 0]${(taskElapsed/taskEstimated)?string.percent}[#else]---[/#if]

[/#list]
[/#list]
[/#list]

Total

${allEstimated}

${allElapsed}

[#if allEstimated != 0]${(allElapsed/allEstimated)?string.percent}[#else]---[/#if]

[/#if]