forge

Reminder: CAML requires internal names

I was reminded today that when constructing CAML queries you must use internal names by this wonderful exception:

Exception caught Microsoft.SharePoint.SPException: One or more field types are not installed properly. Go to the list settings page to delete these fields. —>
System.Runtime.InteropServices.COMException (0x81020014): One or more field types are not installed properly. Go to the list settings page to delete these fields.

Help Your SharePoint User

It’s a pretty ominous message for such a simple issue.

5 replies
  1. Zarko Radevic
    Zarko Radevic says:

    I get the same error, but I have chacked internal names and it stills doesn’t work. Moreover, When I deleted my CAML query,I kept getting the same error even though everything worked before the insertion of that query. What can be the cause of that query disabling others which worked fine? Thanks in advance

  2. Rich
    Rich says:

    I experienced a similar problem when trying to update “Assigned To” in a task List. No matter what I tried, I could not get the update to complete without an error. I tried the Name “Assigned To”, “AssignedTo” and even the name when you check the settings of the field in SharePoint “Assigned%5Fx0020%5FTo”. For some reason none of the values would allow the update. To solve the situation I deleted the Assigned To filed from the task list and re-created it as “AssignedTo” then edited the settings of the field and changed the name to “Assigned To”. What this did was to establish the internal name as “AssignedTo” and when you edit the name field after creation that is what is displayed as the title in the list. Finally, I was able to update the field using the internal name “AssignedTo”. Wow, that was really difficult to find a solution for.

Comments are closed.