If the identifier of the entity type represents a field in a database table that is not automatically generated, set the Pre-Updater Field property to True. I got this error when I try to insert new record, the ID field cannot be edited. or when I try to modify the existing record.
The workaround (maybe a bug in SharePoint) I found is to unselected the “Read-Only” and “Required” choices for the ID field in “Read Item” operation, remove the list and create the list again.
Then come back to the “Read Item” operation, tick the “Read-Only”choices again, remove the list and recreated.
I followed MSDN blog to create a BCS from SharePoint. Below is the error I received:
1. BDC Access Denied Error
Now that your external list is created, you will certainly like to view the list in SharePoint. When you visit the external list, don’t be surprised if you see the error below:
This is a very common error that many of you might face. This error is due to the current user not having enough permissions to access the BDC entity.
So, browse to your BDC Service Application page: Central Administration | Application Management | Manage service applications | Business Data Connectivity
You should be able to locate your BDC model. For our example, its the External Customers. In the dropdown ECB menu, select on Set Permissions:
In the Set Permissions dialog window, you can now choose your user(s)/group(s) who need access to this BDC entity. For our example, I am choosing Administrator user.
You can also set the type of permission you want to grant. For our example, I have granted all of the permissions available:
3) Selectable In Clients
4) Set Permissions
2. Query against the database error
Now if you refresh your external list page, you might get this error or similar error:
This means that the user has access to the BDC entity, but there is something wrong when the model is trying to fetch the external data. In this case, it is from the database. Our External Customers entity model connects to SQL Server database to retrieve the customers. So, this error clearly tells that there is some problem while fetching that data.
One other useful thing to do when you get this error is to check the Windows Event Viewer logs. BCS logs errors to Windows Event Viewer logs. Here is the cause for our error:
You need to give permission to your apppool account to access the database
3. Data Limit
By searching the log, here is the reason. It only allow 2000 rows by default
Error while executing web part: Microsoft.BusinessData.Runtime.ExceededLimitException: Database Connector has throttled the response. The response from database contains more than ‘2000’ rows. The maximum number of rows that can be read through Database Connector is ‘2000’. The limit can be changed via the ‘Set-SPBusinessDataCatalogThrottleConfig’ cmdlet.
4. If you changed anything in your Data Connection, you will have to do the No 1 that give permission to all user and farm admin to the BCS.