Quantcast
Channel: Project Server General Questions and Answers forum
Viewing all articles
Browse latest Browse all 7942

Errors with timesheet approvals after unpublishing or deleting tasks

$
0
0

Hello,

We have been having some issues with timesheet approvals in 2013. The approval of timesheets is working well, everything in Single Entry Mode, up to the following scenario :

  • A task update has been approved by the project manager
  • the timesheet is still submitted and is waiting for weeks to be approved
  • The project manager wants to prevent further registration of actuals on specific tasks. He changes the publish column to No.
  • The project manager removes tasks with actuals and balances the actual work to new tasks. But the task with approved actuals is deleted while the timesheet is still submitted.

Apparently this brings the database in an inconsistent state.

  • The team member can suddenly not access that timesheet anymore
  • The timesheet manager cannot load the approval screen. He sees an error on top o f the screen like this : one or more categories could not be loaded

This way the timesheet can never be approved ! And this is bugging us for some weeks now.

When looking deeper in what is happening, analyzing the ULS log, I see the following :

Node Consistency Error: Exception loading Assignment. Uid=6c5a411f-1f80-e211-a2cb-001e37e5967d

[bucketHash:F4424787] Exception occured in method 'TimeSheet.GetTimesheetForGridJsonFromViewUid' System.InvalidOperationException: GetDataForAssignment: Did not find data for assignment. ProjUid=a76ff23c-c766-e211-874c-0050568e3134 AssnUid=6c5a411f-1f80-e211-a2cb-001e37e5967d   

at Microsoft.Office.Project.Server.BusinessLayer.TimePhasedDataAccess.GetDataForAssignment(Guid docGuid, Guid guidAssn)   

at Microsoft.Office.Project.DataEdit.Assignments.AssnCntr.LoadAssnData(ISvrDataAccess dataAccess, Guid docGuid, Guid assnGuid)   

at Microsoft.Office.Project.DataEdit.Assignments.AssnCntr.LoadNode(Guid guid)   

at Microsoft.Office.Project.DataEdit.Assignments.AssnCntr.FindAssnNode(Guid guid)   

at Microsoft.Office.Project.Server.BusinessLayer.Statusing.<>c__DisplayClass43.<ReadStatusTimephasedDataForTimesheet>b__41(KeyValuePair`2 projAssn)   

at Microsoft.Office.Project.Server.Library.PSUtility.Apply[T](IEnumerable`1 enumerable, Action`1 fn)   

at Microsoft.Office.Project.Server.BusinessLayer.Statusing.ReadStatusTimephasedDataForTimesheet(IDictionary`2 projAssignments, DateTime start, DateTime end, Int64 intervalInMinutes)   

at Microsoft.Office.Project.Server.BusinessLayer.Timesheet.ImportActuals(ISet`1 assignmentUids, ISet`1 userImported, Boolean acceptChanges)   

at Microsoft.Office.Project.Server.BusinessLayer.Timesheet.ImportActualsAndCustomFields(IEnumerable`1 assignmentUids, ISet`1 userImported)   

at Microsoft.Office.Project.Server.BusinessLayer.TimesheetLoaderForGrid.Load()   

at Microsoft.Office.Project.Server.BusinessLayer.TimeSheet.GetTimesheetForGridJsonFromViewUid(JsGridSerializerArguments gridSerializerArgs, Guid tsUid, Guid viewUid, String changesJson, String viewOptionsJson)   

at Microsoft.Office.Project.Server.Wcf.Implementation.PWAImpl.<>c__DisplayClass2f5.<TimeSheetGetTimesheetForGridJsonFromViewUid>b__2f4()   

at Microsoft.Office.Project.Server.Wcf.Implementation.WcfMethodInvocation.InvokeBusinessObjectMethod(String businessObjectName, String methodName, IEnumerable`1 actions) StackTrace:

at Microsoft.Office.Project.Server.Native.dll: (sig=85ae470f-554c-4a8c-992e-92aeb657c829|2|microsoft.office.project.server.native.pdb, offset=3C1E)

at Microsoft.Office.Project.Server.Native.dll: (offset=1255D)

Watson bucket parameters: Microsoft Project Server 2013, ULSException14, 070f6ea0 "project server", 0f001181 "15.0.4481.0", 9c2bade2 "microsoft.office.project.server", 0f001199 "15.0.4505.0", 51481b12 "tue mar 19 09:00:18 2013", 00004817 "00004817", 00000047 "00000047", 54e7243f "invalidoperationexception", 00101621 "aeby7"

When looking even deeper in the SQL tracer, I can clearly see that Project Server is fetching assignment records pretty well from its database. So there must really be an exception in the code of the PSI calls. Is this a known problems, and will this be fixed ? We are running the April CU of the 2013 version.

Please help us with this issue.


Viewing all articles
Browse latest Browse all 7942

Trending Articles