psi ? Corruption of a project RRS feed

  • Question

  • Hi:

    This is for Project Server 2007, Sql Server 2005 and Sharepoint 2007.

    I wrote an application to update actual work cost using psi for all of our projects on a nightly basis.   This process is being ran as a job on sql server 2005.  All of the projects seems to be updated correctly.  Except one.  The process finished successfully.  But when the users tried to open the project in project client.  It basically gave a message that the project was corrupted.  And it could not be opened at all.  We had to restore from the backup.   I tried it twice.  Same issue. 

    I used this project and save as to another new project name.  I ran my process it worked perfectly.  The expeneses were updated and I was able to reopen it in the client.  No corruption at all. 

    The project that is in question.   I used uls log viewer to log the error messages. I saw quite a few entries that said SSP: Formula Evaluation Failed!  Not sure if this is the cause of the corruption of the project. 

    07/13/2011 18:12:39.95 Microsoft.Office.Project.Server (0x0D04) 0x158C Project Server Project Server-side Project Ope 9dxo Medium PWA:http://xxxx:8082/PWA, SSP:ProjectServer, User:xxxx\xxxxxx, PSI:   SSP: Formula Evaluation Failed! - trying to continue - (System.ArgumentException: Column 'TASK_BCWP' does not belong to table Task.     at System.Data.DataRow.GetDataColumn(String columnName)     at System.Data.DataRow.get_Item(String columnName)     at Microsoft.Office.Project.Server.BusinessLayer.FormulaDataProvider.GetTaskData(Guid nodeId, Int32 fieldId)     at Microsoft.Office.Project.Server.BusinessLayer.FormulaDataProvider.GetProjectData(Guid nodeId, Int32 fieldId, Boolean canChangeEntity)     at Microsoft.Office.Project.Server.BusinessLayer.FormulaDataProvider.GetDataInternal(Int32 entityId, Guid nodeId, Int32 fieldId, Boolean canChangeEntity)     at Microsoft.Office.Project.Server.BusinessLayer.FormulaDataProvider.GetData(Int32 entityId, Guid nodeId, Int32 fieldId)     at Microsoft.Office.Project.Server.BusinessLayer.Formula.FieldExpression.Evaluate(IFieldEvaluator context, Guid nodeId)     at Microsoft.Office.Project.Server.BusinessLayer.Formula.FormulaEvaluator.Evaluate(PlatformContext context, Expression formula, Int32 entityId, Int32 fieldId, Guid nodeId, SummaryInfo summaryInfo)) + -- FieldId = 190873674 -- NodeId = b609f1c9-b034-4589-9f6e-9b58d887a02c -- Formula = [MSPJ188743692] e4e949a2-cb35-4c63-9b2b-e718e5bd99ff

    Is there a way to fix this problem?  What really cause the corruption of this project?  Is it because of the psi call that is causing it? 

    We really do not want to recreate the project.  Not only this is a huge project.  We have other processes are currently tied to this.  Timesheet  and importing task process to another system.  We still want actual cost to be updated automatically through the job.  We just don't want to deal with the corruption of the project constantly. 


    Any idea. 






    Thursday, July 14, 2011 5:47 PM

All replies

  • Hello KKmick,

    Do you have any Task/project level formula field to calculate any stuff on Project? If yes, just before you open the project, set the automatic calculation off & the open the project. See if that works.
    If That doesn't work, also, you said that issue is only with one project, keeing in mind that project is corrupted. You may need to save project as XML & then import as  anew project which actually removes any binary data corruption from project.

    It doesn't seem to be a PSI update issue on a first look.

    Thanks, Amit Khare |EPM Consultant| Blog:
    Friday, July 15, 2011 5:52 AM
  • Sorry for the late reply. I will try it and let you know what happen.

    Thanks again.



    Monday, July 25, 2011 1:30 PM