ALERT: Some images may not load properly within the Knowledge Base Article. If you see a broken image, please right-click and select 'Open image in a new tab'. We apologize for this inconvenience.

Allocation, % allocation, and availability calculation overview

book

Article ID: 22795

calendar_today

Updated On:

Products

Clarity PPM SaaS Clarity PPM On Premise

Issue/Introduction

How are Allocation, % Allocation, and Availability calculated? These are seen on the Resource, Projects and detail pages. How are these values computed and where are they stored in the database?

Environment

Release: All
Component: Clarity Resource Management

Resolution

Availability and Allocation

The Resource Availability Rate field and the Allocation fields are computed and stored in a BLOB Curve fields in the database.  These fields cannot be queried directly.  The data can be found in Time Slice tables.

The Allocation and Availability dates are computed according to the following rules: 

start date = max(project start, resource doh, team prAvailStart, assignment actthru).

The 'start date' for the curve is determined by the latest date compared among the following attributes: 

  • Project Start Date (cannot be null)
  • Resource Date of Hire (doh)
  • Resource Team Available Start Date (prAvailStart)
  • Resource Assignment Actuals Thru Date (actthru)
  • finish date = min(project finish, resource dot, team prAvailFinish)

The 'finish date' for the curve is determined by the earliest date compared among the following attributes:

  • Project Finish Date (cannot be null)
  • Resource Date of Termination (dot)
  • Resource Team Available Finish Date (prAvailFinish)

The only attribute that can't be null is the project start and project finish dates.

% Allocation

The % Allocation field is calculated as follows:

if (availability > 0) pct = allocation / availability
else pct = 0

  • allocation = resource availCurve * allocation curve clipped to start and finish and converted to proper units (seconds, etc.) based on resource type and then rounded using Math.round().
  • availability = resource availCurve summed from start to finish and converted to proper units (seconds, etc.) based on resource type.

Additional Information

See also: