Overview
The Contract Performance Report is the primary earned value analysis tool in Dash360. It presents a hierarchical grid organized by Control Account Manager (CAM) and WBS level, showing the full set of EVM metrics (planned, earned, and actual values for both the current period and cumulative to date) along with performance indices, variances, and completion forecasts.
The CPR also drives the variance narrative workflow: cells that exceed your configured thresholds are color-coded and require written explanations before the report can be finalized.
URL: /EarnedValue/CPR/Index
Prerequisites
- Select a project and reporting period. The grid does not load until both are selected.
- Earned value must have been calculated for the selected reporting period. If data appears empty, contact your administrator to run the EV calculation (Admin > Projects > Calculate Earned Value).
Reading the Grid
The CPR grid is organized hierarchically. Rows roll up from work package level through WBS and CAM levels, with group summaries at each level. Variance threshold coloring applies to both data rows and group summary rows.
Row Structure
Rows are grouped first by CAM, then by WBS Level 3 (default). Expand or collapse groups using the group header arrows, the Expand/Collapse All Groups link above the grid, or the right-click context menu on any group row.
Column Groups
The grid is organized into the following column groups from left to right:
| Group | Columns | Notes |
|---|
| Current Period | Planned, Earned, Actual, SV, CV | Performance for the selected reporting period only |
| Cumulative to Date | Planned, Earned, Actual, SV, CV | Performance accumulated from project start through the selected period |
| At Complete | BAC, Estimate, Variance | Forecast columns |
| Planned | % Complete | CTD Budget ÷ BAC |
| Earned | % Complete | CTD Earned ÷ BAC |
| % Spent | Actual | CTD Actual ÷ BAC |
| Balance | Balance | BAC − CTD Actual |
| Indexes | SPI, CPI | Performance efficiency indices |
When the CPRShowFormulas registry setting is enabled, each column header displays its calculation formula in smaller text below the column name (for example, SPI shows “(CTD Earned / CTD Budget)”).
Key Metric Definitions
| Metric | Definition |
|---|
| Planned (BCWS) | Budgeted Cost of Work Scheduled: planned value of all scheduled work |
| Earned (BCWP) | Budgeted Cost of Work Performed: planned value of work actually completed |
| Actual (ACWP) | Actual Cost of Work Performed: what the completed work actually cost |
| SV | Schedule Variance = Earned − Planned. Negative = behind schedule. |
| CV | Cost Variance = Earned − Actual. Negative = over budget. |
| SPI | Schedule Performance Index = CTD Earned ÷ CTD Budget. Below 1.0 = behind schedule. |
| CPI | Cost Performance Index = CTD Earned ÷ CTD Actual. Below 1.0 = over budget. |
| BAC | Budget at Completion: total approved budget |
| Estimate (EAC) | Estimate at Completion = CTD Actual + BAC − CTD Earned |
| Variance (VAC) | Variance at Completion = BAC − EAC. Negative = forecast to finish over budget. |
| Balance | Remaining budget = BAC − CTD Actual |
Additional Columns
These columns are available but hidden by default. Add them via the column chooser:
| Column | Description |
|---|
| WBS Level 1, 2 | Higher WBS levels (Level 3 is visible by default as the second grouping level) |
| WBS Level 4–9 | Deeper WBS levels if your project has them |
| Work Package Number | The work package code only |
| Work Package Description | The work package description only |
| Reporting Period | The reporting period date for each row |
| [Notebook Category] | One column per configured work package notebook category |
Variance Threshold Highlighting
Your administrator configures variance thresholds (by dollar amount, percentage, or both). The four variance cells (Current Period SV, Current Period CV, Cumulative SV, and Cumulative CV) are color-coded on both data rows and group summary rows:
| Color | Meaning | Action Required |
|---|
| Red border | Variance exceeds threshold: narrative explanation required | Click the cell to open the variance narrative modal |
| Yellow border | Manually flagged by an administrator for review | No required action, but worth investigating |
| Green border | Required narrative has been written and saved | No action needed |
| No border | Variance is within threshold | No action needed |
Red-bordered cells must have narratives written before the report period is considered complete. Cells without narratives will remain red until a narrative is saved.
Writing a Variance Narrative
Click any red-bordered or yellow-bordered SV or CV cell to open the Edit Variance Narratives modal. You can click cells on both data rows (work package level) and group summary rows (WBS level); the modal opens for that work package or WBS element.
Modal Structure
The modal has two tabs:
- Current Period: narratives for the current reporting period
- Cumulative to Date: narratives for cumulative performance
Each tab contains:
- A mini CPR data grid showing the EV values for the selected work package or WBS element (for context while writing)
- A Schedule Variance accordion section with the narrative fields for SV
- A Cost Variance accordion section with the narrative fields for CV
- A Comments accordion section for free-form notes
The modal opens with the tab and accordion matching the cell you clicked. For example, clicking a Current Period CV cell opens the Current Period tab with the Cost Variance accordion expanded.
A Copy to Cumulative to Date link on the Current Period tab copies the current period narrative content to the matching Cumulative to Date fields, saving time when the same explanation applies to both.
Saving
Click Save & Close to save all fields on both tabs and close the modal. The cell border turns green once a required narrative is saved.
Users without edit access to this work package see the modal as read-only; the Save button is hidden.
Previous Period Narratives
Within the narrative modal, you can view the narrative history for the same work package from prior periods. Click the link to open the Previous Period Variance Narrative Entries table, which shows each prior narrative with: Snapshot, Reporting Period, Field, Previous Value, Last Updated, and an action to copy a prior entry into the current fields.
CPR Filters
The CPR filter panel appears in the left-side flyout after a project and reporting period are selected. It contains two sections:
Variance Narratives
| Filter | Options | Description |
|---|
| Threshold | Show All Rows | Display all work packages regardless of variance status |
| Show All Rows Tripping a Threshold | Show only rows where at least one variance cell exceeds a configured threshold |
| Show Only Rows with Completed Variance Narratives | Show only rows where all required narratives are written |
| Show Only Rows Missing a Required Variance Narrative | Show only rows with outstanding narrative requirements; useful for finding what still needs to be done |
| Explanations | Hide Explanations | Default: variance narratives are not shown inline in the grid |
| Show Explanations | Each row with saved narratives displays them inline below the row data |
Override the display divisor for this session:
| Option | Effect |
|---|
| None - Use Registry / User Setting | Default: uses the project’s configured currency format |
| Default | Display values in base currency (no divisor) |
| K Value | Display in thousands |
| M Value | Display in millions |
Available Filters
The inline filters appear across the top of the page.
| Filter | Description |
|---|
| Project | Required. Loads reporting periods for the selected project. |
| Reporting Period | Required. Sets the “as of” date for all EV calculations. Populated after a project is selected. |
The WBS, Work Package, and CAM filters are available as secondary filters to narrow the grid view after the grid loads.
Grid Features
| Feature | Description |
|---|
| Expand/Collapse All Groups | Orange link above the grid. Toggles all group rows at once. The label updates to reflect the current state. |
| Column chooser | Add hidden columns: additional WBS levels, Notebook Category columns. Accessible via the grid toolbar. |
| Search panel | Free-text search across all visible columns |
| Filter row | Per-column filter inputs; click Apply Filters to apply |
| Header filter | Click any column header for value-based filtering |
| Filter panel | Shows active filter criteria and allows clearing them |
| Group panel | Drag columns to the group panel to add additional grouping levels |
| Context menu | Right-click a group row to expand or collapse it individually |
Request Variance Narratives Mode
This feature is visible to administrators only.
The Request variance narratives mode checkbox appears in the CPR Filters panel for administrators. When checked, the click behavior on SV and CV cells changes:
- Normal mode (unchecked): clicking an SV or CV cell opens the variance narrative modal to write an explanation.
- Request mode (checked): clicking an SV or CV cell toggles a yellow flag on that cell instead of opening the narrative modal. Use this to mark cells for review without writing a narrative yourself; the yellow flag signals to CAMs that a narrative is required for that cell.
Click the same cell again to remove the yellow flag.
Saved Views
The CPR supports named saved views that preserve your column layout, filters, sorts, and grouping. A System View is loaded by default.
When you are viewing a system view (rather than one of your own saved views), the message “Currently viewing a system view. Changes to the view will not be saved.” appears at the top right of the grid.
- User views are saved per-user and visible only to you.
- System views are created by administrators and available to all users.
Exporting
Click the Download icon in the top right for export options.
Export to Excel
Exports the full CPR grid exactly as currently displayed (including your column layout, grouping, and filters) to CPRExport.xlsx.
Click Export CPR Formats to open the CPR Formats modal. Select a Type from the dropdown and configure the options for that format, then click Export CPR Report.
| Format | Description | Options | Selection Limit |
|---|
| CPR Format 1 | Hierarchical EVM report organized by WBS | Dual-list selector: choose report columns (Work Package, WBS Level 1–9, CAM, OBS, Notebook categories) | Up to 10 columns |
| CPR Format 2 | OBS-based hierarchical report | Fixed to OBS structure (no additional selection needed. Requires OBS to be configured for the project. | ) |
| CPR Format 3 | Calendar time-phased EVM report | Dual-list selector: choose calendar periods from the project’s fiscal calendar | Up to 5 periods |
| CPR Format 4 | OBS + calendar time-phased report with resource data | Dual-list selector: choose calendar periods; also select Resource Result (FTE or Hours). Requires OBS to be configured. | Up to 5 periods |
| CPR Format 5 | Variance narratives export | Options dropdown: All / Work Package / WBS Level 1–9 (controls grouping level). Requires variance narrative entries to exist for the selected reporting period. | : |
Each format exports to an .xlsx file named after the format (e.g., cpr_format_1.xlsx).
Format 2 and Format 4 require an OBS file to be configured for the project. If OBS is not set up, the Export button is disabled and a warning appears. Contact your administrator to configure the OBS file under Admin > Projects.
Format 5 requires at least one variance narrative entry to exist for the selected project and reporting period. If no entries exist, the Export button is disabled.