| Key | Value |
|---|---|
| Table | DS03 Cost |
| Severity | MAJOR |
| Unique ID | 9030315 |
| Summary | Is a root cause narrative missing for this CA where the CV percent is tripping the unfavorable percent threshold? |
| Error message | DS03.CVc % abs((BCWP - ACWP) / BCWP) > abs(DS07.threshold_cost_cum_pct_unfav) & DS11.narrative_RC_CVc is missing or blank (by DS03.WBS_ID_CA & DS11.WBS_ID). |
This DIQ check identifies Control Accounts (CAs) that are significantly over budget but lack an explanation for why costs are higher than planned.
The check triggers when:
Cost variance percentage is calculated as: |BCWP - ACWP| / BCWP
Common reasons for missing narratives include:
To resolve: Add a root cause narrative in DS11 explaining why the CA is over budget (e.g., scope growth, material cost increases, productivity issues, rework).
This test ensures that significant unfavorable cost variances are explained, which is critical for project control:
Unfavorable variances directly impact project success. Without understanding the causes, projects cannot:
As a MAJOR check, this flags critical project control gaps while allowing data submission, recognizing that root cause analysis may take time to complete.
CREATE FUNCTION [dbo].[fnDIQ_DS03_Cost_IsCVPctMissingDS11RCNarrUnfav] (
@upload_id int = 0
)
RETURNS TABLE
AS RETURN
(
with threshold as (
SELECT ABS(ISNULL(threshold_cost_cum_pct_unfav,0)) thrshld
FROM DS07_IPMR_header
WHERE upload_ID = @upload_ID
), CACV as (
SELECT
WBS_ID_CA CAWBS,
ABS((SUM(BCWPi_dollars) - SUM(ACWPi_dollars)) / NULLIF(SUM(BCWPi_dollars),0)) CV
FROM DS03_cost C
WHERE upload_ID = @upload_ID
AND WBS_ID_CA NOT IN (
SELECT WBS_ID
FROM DS11_variance
WHERE upload_ID = @upload_ID AND TRIM(ISNULL(narrative_RC_CVc,'')) <> ''
)
GROUP BY WBS_ID_CA
)
SELECT
C.*
FROM
DS03_cost C INNER JOIN CACV CV ON C.WBS_ID_CA = CV.CAWBS
WHERE
upload_ID = @upload_ID
AND CV.CV > (SELECT TOP 1 thrshld FROM threshold)
)