Error when updating SharePoint 2010 list using External Content Type

973 views Asked by At

I'm running into an issue and can't find anything helpful on the net so would really appreciate any help here!

I've created a basic External Content type using SharePoint Designer for SharePoint 2010. I can create all operations and create a list based on it and everything works fine. Three of the fields however are foreign keys for other tables for which I have also created External Content types.

When I create the first Association to a second table / content type it saves and I'm able to update the list and use the lookup functionality in SharePoint to look up the value.

As soon as I add in any of the other two Associations I then get the following error message:

Cannot generate the Microsoft InfoPath Form because Form Services are not available.

Alternatively if I now try to create a new List I get

Could not save changes. Exception from HRESULT: 0x800400F8

The only difference between the last two associations and the first is that they foreign keys are of SQL type NVARCHAR(50) whereas the first is int. Other than that I have no idea where to go next with this. I've recreated all operations from scratch but no joy.

Any suggestions highly appreciated!

1

There are 1 answers

1
Kristopher On BEST ANSWER

I've run into this and unfortunately the answer is to create a meaningless INT key on those tables that you use as your primary/foreign key: http://spsamer.com/2012/05/08/implementing-ects-in-spd-using-stored-procedures/

Each stored procedure needs to provide a unique identifier of type integer. SPD will allow you to have other types of unique identifiers, but you will run into runtime errors if you try to perform any association, create, update, or delete operations. You need these identifiers to avoid issues even if they are completely meaningless to your solution.