Hi Dave,
This technical document is retired as the bug CLRT-37564 Pending actuals not removed when a task is removed from an unposted timesheet when the project is overwritten by OWB/MSP
is fixed in 13.0
Description:
A task is on an un-posted timesheet with pending actuals. The Project manager then opens the project in OWB and saves the project as an rmp file without retain locks. The PM then tries to save the project back to Clarity over the original project and gets the warning: You are overwriting project NIKU\XXXXX in Clarity with this project. The contents of the Clarity project will be lost. Are you sure you want to continue?
If they answer yes then the original project is purged from Clarity except for tasks with actuals or pending actuals. The tasks with pending actuals are removed from the timesheet, but the pending actuals are not deleted and should be.
Steps to Reproduce:
- Create a project in Clarity
- Add a resource
- Assign a resource to a task
- Create a timesheet and enter time on it for the task
- Submit and Approve the timesheet
- Open the project in OWB
- Save As without retain locks to an rmp file
- Close and re-open the rmp file
- Save as and select the project in Clarity
- Click Ok and you get: You are overwriting project NIKU\XXXXX in Clarity with this project. The contents of the Clarity project will be lost. Are you sure you want to continue?
- Answer Yes
- View the timesheet and note the task is missing
- Open the project back in OWB
- Note the task is now under the Deleted Task Phase and has pending actuals.
Expected: The pending actuals to be removed when the task is removed from the timesheet.
Actual: The task now has pending actuals and is not on a timesheet.
Solution:Workarounds:
- If the task does not have posted actuals and you want to delete it, then go ahead and delete the task since it is duplicated.
- If the task has actuals you cannot delete it so below is a query the dba can run which will sync the pending actuals with tasks on un-posted timesheets.
(be sure to test on a development instance and back up data prior to testing)
Query to fix incorrect pending actuals:
UPDATE prassignment SET prpendactsum = (SELECT SUM (te.practsum) FROM prtimeentry te, prtimesheet ts WHERE te.prassignmentid = prassignment.prid AND ts.prid = te.prtimesheetid AND ts.prstatus < 4 AND ts.pradjustedid IS NULL) WHERE prid IN ( SELECT DISTINCT a1.prid FROM prassignment a1, prj_resources r1, prtask t1 WHERE a1.prresourceid = r1.prid AND r1.prtrackmode = 2 AND r1.prisopen = 1 AND a1.prtaskid = t1.prid AND t1.pristask = 1 AND t1.prismilestone = 0 AND t1.is_open_te = 1)
Status/Resolution: This issue has been documented as CLRT-37564 and fixed in 13.0
Regards
Suman Pramanik