Monday, October 12, 2015

Project Server 2013 and manually entered baselines not saving to database

**Quick publish article.  Further tests follow**
**Update:  Only appears to apply to on-premise installs.  Project Online is unaffected**

Issue:  When manually editing Baseline(0-10) timephased data via task usage in MS Project Client, data is not saved to database.

Tested on:  SEPT 2015 PU (Server and Client)

Prep:
-------------------------------------------------------
Create a project with one task on it.  
add a resource from pool and assign to the task at 100%
Set Baseline (0)
Publish plan

Test:  Query DB and see timephased data populated correctly



Issue 1 Repro
-------------------------------------------------------
Edit Baseline Work values in Task Usage view
Save and Publish

Test:  Query DB and see timephased data is not changed



Issue 2 Repro
-------------------------------------------------------
Add Baseline 10 to task usage view
Manually enter values into timephased cells for Baseline10
Save and Publish

Test:  Query DB and see timephased data is not changed




Issue 3 Repro
-------------------------------------------------------
Close MSP file
Remove from Cache
open file

Test:  See that previously edited values in Baseline 0 and Baseline 10 are missing.  Original Baseline data (set using Set Baseline) is displayed


Summary findings
-------------------------------------------------------
It looks like manually edited baseline values are not moving from Cache to Database on Save and therefore the reporting db isnt being updated.




SQL Script for test:
-------------------------------------------------------

--Baseline 0
SELECT         b.TimeByDay, b.AssignmentBaselineWork
FROM (SELECT * FROM MSP_EpmProject WHERE ProjectName = 't1bltest') P
INNER JOIN MSP_EpmAssignment A 
         on           p.projectuid = a.projectuid
INNER JOIN MSP_EpmAssignmentBaselineByDay B 
         on           a.AssignmentUID = b.AssignmentUID
WHERE          b.BaselineNumber = 0

--Baseline 10:
SELECT         b.TimeByDay, b.AssignmentBaselineWork
FROM (SELECT * FROM MSP_EpmProject WHERE ProjectName = 't1bltest') P
INNER JOIN MSP_EpmAssignment A 
         on           p.projectuid = a.projectuid
INNER JOIN MSP_EpmAssignmentBaselineByDay B 
         on           a.AssignmentUID = b.AssignmentUID
WHERE          b.BaselineNumber = 10

1 comment:

  1. I think this is an issue I've run into before. You need to change the scalar value, i.e. the total work or some field for the baseline in question. That's what triggers MPP to see that the baseline has changed and will then cause it to save the timephased values. See if that works.... (http://azlav.umtblog.com/2012/01/10/capturing-custom-timescaled-data-in-project-professional-part-i/)

    ReplyDelete