Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Issue
Developer was trying to use a CAML query and was getting this error:
"One or more field types are not installed properly. Go to the list settings page to delete these fields".
Troubleshooting
Checked the fields and they were fine.
Executed a few other queries and found that they were working fine.
Solution
This was a clear indication that there was something wrong in the query rather than in the list settings. The query had a column "Approval Status". To verify whether it is causing the issue or not execute a small piece of code to get the internal name and check that the internal name of this field is "_ModerationStatus".
Changed the value in the query and it should work fine.
A small piece of code for reference:
SPQuery query = new SPQuery();
String camlQuery = "<Where><Eq><FieldRef Name='_ModerationStatus'/><Value Type='Text'>Pending</Value></Eq></Where>";
query.Query = camlQuery;
SPListItemCollection items = list.GetItems(query);