Check out my new blog at

Thursday, February 04, 2010


If you get the error message CustomReportingCustomFieldMetadataChangeMessageFailed after calling UpdateCustomFields, make sure you actually changed something on each custom field row or call GetChanges on the dataset before passing the CustomFieldsDataSet to UpdateCustomFields (which, by the way, is standard practice unless you think you have changed every row).  I THOUGHT I was making a change on each row, but it turns out I wasn’t and I was seeing this in ULS:

02/04/2010 11:55:28.94     Microsoft.Office.Project.Server (0x2328)    0x229C    Project Server                    Project Server Reporting          9dyq    Critical    Standard Information:PSI Entry Point:   Project User: SUPERDEV\administrator  Correlation Id: 85cc626e-252e-41e7-b72a-927f87b1fe87  PWA Site URL: http://monsterdev/PWADev  SSP Name: SharedServices  PSError: ReportingCustomFieldMetadataChangeMessageFailed (24002) RDS: The request to synchronize change(s) to custom field CustomFieldTypeUID='f5d9befe-1e11-4b41-a0ff-baec4adcae9e'. ChangeType='Alter' failed.  Message: 'ReportingCustomFieldMetadataChangeMessageFailed'  Error:Unable to transfer the custom field metadata change. The custom field 'EVMS Entity Type' was subjected to an unsupported change. Undefined, ModificationDate    85cc626e-252e-41e7-b72a-927f87b1fe87

The interesting bit is this “Undefined, ModificationDate”, which was on the custom field that wasn’t actually changed.  It appears that the last modified date was undefined (DB Null) on the dataset, which I found odd because that field is modified by the system, not by the caller to the PSI.  So, the fix is to ensure you only pass the PSI custom field records with changes or by the time the reporting database metadata processor gets to it, it finds a custom field that was “updated” (but not really, because the record had no changes and therefore the last modified date wasn’t change and in fact is null), and it throws up.




Content on this site is provided "AS IS" with no warranties and confers no rights. Additionally, all content on this site is my own personal opinion and does not represent my employer's view in any way.