Skip to main content

ProjectPublish - ReportingProjectChangeMessageFailed - FOREIGN KEY constraint "FK_MSP_EpmTaskBaseline_ProjectUID_TaskUID"

I often recieve this error message at our customers, 9 out of 10 times it is because the Project Server Reporting database is out of sync with publish database.
The solution is to rebuild the database. See below.

Error message from queue:
 •     Reporting message processor failed:   
 o     ReportingProjectChangeMessageFailed (24006) - The INSERT statement conflicted with the FOREIGN KEY constraint "FK_MSP_EpmTaskBaseline_ProjectUID_TaskUID".   
 The conflict occurred in database "ProjectServer_Reporting", table "dbo.MSP_EpmTask". The statement has been terminated.. Detaljer: id='24006' name='ReportingProjectChangeMessageFailed'   
 uid='05540895-3c37-41ca-a02b-8572d0d3ab68' QueueMessageBody='Project UID='f12dced7-1d84-47e0-86ee-4049dbd9b1cd'. PublishType='ProjectPublish'' Error='The INSERT statement conflicted with   
 the FOREIGN KEY constraint "FK_MSP_EpmTaskBaseline_ProjectUID_TaskUID". The conflict occurred in database "ProjectServer_Reporting", table "dbo.MSP_EpmTask". The statement has been   
 terminated.'.   
 o     ReportingProjectChangeMessageFailed (24006) - The INSERT statement conflicted with the FOREIGN KEY constraint "FK_MSP_EpmTaskBaseline_ProjectUID_TaskUID".   
 The conflict occurred in database "ProjectServer_Reporting", table "dbo.MSP_EpmTask". The statement has been terminated.. Detaljer: id='24006' name='ReportingProjectChangeMessageFailed'   
 uid='5313a512-da56-481d-a9b0-7bf8ebcbf564' QueueMessageBody='Project UID='f12dced7-1d84-47e0-86ee-4049dbd9b1cd'. PublishType='ProjectPublish'' Error='The INSERT statement conflicted with   
 the FOREIGN KEY constraint "FK_MSP_EpmTaskBaseline_ProjectUID_TaskUID". The conflict occurred in database "ProjectServer_Reporting", table "dbo.MSP_EpmTask". The statement has been   
 terminated.'.   
 o     ReportingProjectChangeMessageFailed (24006) - The INSERT statement conflicted with the FOREIGN KEY constraint "FK_MSP_EpmTaskBaseline_ProjectUID_TaskUID".   
 The conflict occurred in database "ProjectServer_Reporting", table "dbo.MSP_EpmTask". The statement has been terminated.. Detaljer: id='24006' name='ReportingProjectChangeMessageFailed'   
 uid='b12c9639-f86c-47e3-af28-9b016b5f576a' QueueMessageBody='Project UID='f12dced7-1d84-47e0-86ee-4049dbd9b1cd'. PublishType='ProjectPublish'' Error='The INSERT statement conflicted with   
 the FOREIGN KEY constraint "FK_MSP_EpmTaskBaseline_ProjectUID_TaskUID". The conflict occurred in database "ProjectServer_Reporting", table "dbo.MSP_EpmTask". The statement has been   
 terminated.'.   
 o     ReportingProjectChangeMessageFailed (24006) - The INSERT statement conflicted with the FOREIGN KEY constraint "FK_MSP_EpmTaskBaseline_ProjectUID_TaskUID".   
 The conflict occurred in database "ProjectServer_Reporting", table "dbo.MSP_EpmTask". The statement has been terminated.. Detaljer: id='24006' name='ReportingProjectChangeMessageFailed'   
 uid='cc89ca62-5edb-4c8b-b129-1e75e3792ef5' QueueMessageBody='Project UID='f12dced7-1d84-47e0-86ee-4049dbd9b1cd'. PublishType='ProjectPublish'' Error='The INSERT statement conflicted with   
 the FOREIGN KEY constraint "FK_MSP_EpmTaskBaseline_ProjectUID_TaskUID". The conflict occurred in database "ProjectServer_Reporting", table "dbo.MSP_EpmTask". The statement has been   
 terminated.'.   
 o     ReportingProjectChangeMessageFailed (24006) - The INSERT statement conflicted with the FOREIGN KEY constraint "FK_MSP_EpmTaskBaseline_ProjectUID_TaskUID".   
 The conflict occurred in database "ProjectServer_Reporting", table "dbo.MSP_EpmTask". The statement has been terminated.. Detaljer: id='24006' name='ReportingProjectChangeMessageFailed'   
 uid='b0519801-3d0b-4405-a10e-de73103e5913' QueueMessageBody='Project UID='f12dced7-1d84-47e0-86ee-4049dbd9b1cd'. PublishType='ProjectPublish'' Error='The INSERT statement conflicted with   
 the FOREIGN KEY constraint "FK_MSP_EpmTaskBaseline_ProjectUID_TaskUID". The conflict occurred in database "ProjectServer_Reporting", table "dbo.MSP_EpmTask". The statement has been   
 terminated.'.   
 o     ReportingProjectChangeMessageFailed (24006) - The INSERT statement conflicted with the FOREIGN KEY constraint "FK_MSP_EpmTaskBaseline_ProjectUID_TaskUID".   
 The conflict occurred in database "ProjectServer_Reporting", table "dbo.MSP_EpmTask". The statement has been terminated.. Detaljer: id='24006' name='ReportingProjectChangeMessageFailed'   
 uid='5a1493b2-e725-41e0-b315-42e76309b7a3' QueueMessageBody='Project UID='f12dced7-1d84-47e0-86ee-4049dbd9b1cd'. PublishType='ProjectPublish'' Error='The INSERT statement conflicted with   
 the FOREIGN KEY constraint "FK_MSP_EpmTaskBaseline_ProjectUID_TaskUID". The conflict occurred in database "ProjectServer_Reporting", table "dbo.MSP_EpmTask". The statement has been   
 terminated.'.   
 •     Queue:   
 o     GeneralQueueJobFailed (26000) - ReportingProjectPublish.ReportProjectPublishMessageEx. Detaljer: id='26000' name='GeneralQueueJobFailed' uid='4c4a3d86-cdc6-485b-adde-289cb3c563f1'   
 JobUID='e575ba26-9256-417d-86d8-95280e4f66a4' ComputerName='XXX-XXXXX' GroupType='ReportingProjectPublish' MessageType='ReportProjectPublishMessageEx' MessageId='1' Stage=''.   
 Der er flere oplysninger i ULS-logfilerne på computeren XXX-XXXXXXX for poster med Job-UID e575ba26-9256-417d-86d8-95280e4f66a4.   

Solution

Log in to the adminstration area for the PWA with Project Server administrator permission.
 - 2013: Central Administration
 - 2010: PWA->PWA Settings
Go to
 - 2013: Central Administration->General Application Settings->PWA Settings->Manage
 - 2010: PWA settings (Server settings in 2010).
Go to Administrative Backup.
Backup all the custom fields.
Go to Administrative Restore.

Restore all the custom fields.
As everything in the reporting database someway has a custom field connected this will cause the whole database to get rebuilded.
Follow the restore in the queue.


Comments

Popular posts from this blog

Sharepoint 2013 - Fullscreen mode/hide quick launch

If you want to hide the quick launch on a SharePoint page or web part page in 2013 you could of cause use CSS scripts as in 2010.
But as a new thing in 2013 the user have the possibility to click on full screen mode. so why not load your page in this mode and then the user can choose to exit the mode if he prefers.

Add a content editor webpart to your page and click on Edit HTML from the ribbon.
Add the following code:

<script type="text/javascript">
window.onload = function()
{
  SetFullScreenMode(true);
}
</script>

Install DLL in GAC - Windows 2008/2012 (Using Powershell, No GacUtil.exe)

If you want to install a DLL in the GAC and do not have the GACUtil.exe available. Powershell is properly the easiest way to procede.

Before Powershell you would properly just drag the DLL file into the C:\Windows\Assembly but this option is usually not available anymore.

Powershell - Add DLL to GAC So to install a DLL file in the GAC simply execute the below Powershell script. Remember you migth want to run the Powershell prompt as an administrator.
[System.Reflection.Assembly]::Load("System.EnterpriseServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")$publish=New-ObjectSystem.EnterpriseServices.Internal.Publish$publish.GacInstall("c:\temp\MyDllFile.dll")iisreset
The first line adds a reference to the assembly we need to be able to mange the GAC.
The second and third lines retrives the GAC object and publish a new DLL file to it.
The last line resets the Internet Information Services. This is only needed if your DLL file is used in a websi…

SharePoint/Project Server - Firewall port open list

Firewall port open list Every time I have to install a new instance of Project Server I forget which ports have to be open.
The ports are divided into 3 lists, one list for the web front end servers, one list for the application server and one list for the SQL server.
These ports are based on a 2013 installation of SharePoint/Project Server. the 2010 installation defer a little bit.


Web Frontend ServerWhen a range is specified all ports between the range must be opened.
     Port(s)ProtocolBoundDescription
-80 TCPInhttp
-443 TCPInhttps/ssl
-25 TCPInSMTP for e-mail integration
-16500-16519TCPInPorts used by the search index component
-22233-22236TCPIn/OutPorts required for the AppFabric Caching Service
-32843-32845TCPInCommunication between Web servers and service applications
-32846TCPIn/OutSharePoint User Code Service
-808-809TCPInOffice Web Apps
-5725TCP