Budget Spent Reports with different rates by activity type per Project

In this article ,we describe how to configure different types of activities (time spent records) in your projects and calculate total time spent per each activity type on user stories and bugs level and per projects as well.

In Targetprocess it is possible to charge different rates from different clients and projects. The solution allows to set up custom hourly rates per different types of activities that can vary across your projects. And it calculates total budget spent (cost summary) per user story, bug, project using custom rates by activity type.

Use Case

In a project, we'll introduce 3 types of activity: Rate A, Rate B, Rate C. We'll charge different rates per these activity types. We'll specify selected type of activity in every time spent record.

We will use money custom fields for projects to input rates and drop-down custom field to select type of activity for time spent records.

We will build summary calculations using Custom Graphical Reports. Charts with total numbers can be added to your dashboards. Also totals from charts can be exported to CSV files and viewed in form of spreadsheets further.

Configuration

Set up Rates in Projects

Edit Custom fields settings for the process of your Project. Configure custom fields for Project entity.

We add one field of type Money per each supported type of activity. Add 3 custom fields. Here is how added fields are shown in the fields list:

In Project details view, input rates for each of your Project:

List view for Project entity with customized columns displays all your projects and their rates in the single place. Create such view manually if you don't have it in your account yet.

In this article we will input data into single project only. However, described solution fully supports common setup and reporting for multiple projects at the same time.

Add Activity type field to Time entities

Edit Custom fields settings for the process of your Project. Configure custom fields for Time entity.

Add dropdown custom field for activity type. We'll name it "Rate" and we'll add "RateA", "RateB", "RateC" as three available options.

Here is how added field is shown in the fields list:

Create your backlog

Add user story U1 into project P1.

Input Time spent

Submit several time spent records to user story U1. Rate field appears in the addition form and prompts for activity type selection for each time record.

View your backlog and time records

Hierarchical list view for Worked on > Time entities with customized columns displays all your assignable entities (work items) and their time spent records in the single place. Create such view manually if you don't have it in your account yet.

Reports

We set up all reports below using Custom Graphical Reports.

Reports for Assignable entities (User Stories, Bugs)

Time spent per activity type by user stories

Totals per Activity types captured from Time spent records.

Source type: Entity Reports

Entities: TIMES

X axis: Assignable.Name

Y axis: SUM(Spent)

Color: Rate

Label: SUM(Spent)

Budget spent per User Story

Custom hourly rates by activity type adjusted from Project settings.

Total budget spent

Source type: Entity Reports

Entities: TIMES

X axis: Assignable.Name

For the calculation on the Y axis you should add 3 new fields under "+Add field or formula"

Project Rate A: Project.CustomValues.Number('Rate A')

Project Rate B: Project.CustomValues.Number('Rate B')

Project Rate C: Project.CustomValues.Number('Rate C')

THEN add new calculation on the Y axis:

SUM(CASE WHEN [Rate] == 'RateA' THEN [Spent] * [Project Rate A] WHEN [Rate] == 'RateB' THEN [Spent] * [Project Rate B] WHEN [Rate] == 'RateC' THEN [Spent] * [Project Rate C])

Color: Rate

Budget spent per activity type by Projects

Similar to the previous report on individual User Story, we can calculate total budget spent on a Project.

For this, use Project on the X axis instead of Assignable.Name

Export

Every Report can be exported to CSV file. For this please click Actions -> Export to CSV.