Showing posts with label BDC. Show all posts
Showing posts with label BDC. Show all posts

Tuesday, 19 November 2013

The metadata object that has Name has a Property with name ‘AuthenticationMode‘ and value . This value indicates that the runtime should revert to the identity of the application pool, but reverting to the application pool must be explicitly enabled for the service application by a farm administrator. On Sharepoint 2010

This problem normally comes when the RevertToSelfAllowed is set to false, and this is because we don’t have elevated privileges for our Application Pool. To set this to true, get the name of your “Business Data Connectivity Service” which normally is called “Business Data Connectivity Service”, but to be sure you can check it on Administration->Application Management->Manage service applications  and check the name of the service, in my case it is called “BDC Service”:

image

Go Powershell and open Powershell as Administrator.

Execute this code:

$bcsServiceApp = Get-SPServiceApplication | where {$_ -match "BDC Service"} 
$bcsServiceApp.RevertToSelfAllowed = $true; 
$bcsServiceApp.Update();


This will do the job, good luck!

Friday, 15 March 2013

“external content types are not available. Contact your system administrator” in Business Connectivity Services on Sharepoint 2013.

I remember spending one or two days trying to sort out this issue. It was quite annoying, mainly because the hardest part was already developed in Visual Studio 2012, and I couldn’t see the content type from my BCS connexion.

Right, I think it will be useful to show what to do if you have this problem, the problem is basically that our External Content Type Picker is empty:
image

Option 1
Go to “Central Administration->Manage Service Applications->Business Data Connectivity Service”. Be sure you BDC Connexion is there. If it is, select it, and go to “Set Object Permissions” and set “All Authenticated Users” enable for Edit, Execute, Selectable In Clients and Set Permissions. Tick “Propagate permissions to all methods of this external content type. Doing so will overwrite existing permissions.”.
After doing this, everything should work an look like this:
image

Option 2
If you have removed the Method “ReadItem” it will be deployed but not showed it. Be sure your BDCModel has the two main methods “ReadList” and “ReadItem”:
image

 

 

 

 

 

 

 

 

Option 3
If you still having the same problem… be sure when you go to your “BDC Explorer” under Visual Studio 2012, select TypeDescriptor and the “Identifier” is select it. That is the main link between the class and the entity. For example here, I select BaseUri TypeDescriptor and I link it with BaseUri from the class.
image

Conclusion
There are more problems related. but I think this is a good start point.

Wednesday, 21 September 2011

SpecificFinder vs Finder in Business Data Connectivity (BDC)

I was trying to find the difference between SpecificFinder and Finder. I am not going deep inside the subject in this article, but if you really need know more about it, please visit this MSDN article.

A SpecificFinder can return a single entity instance by creating a Specific Finder method. The Business Data Connectivity (BDC) service executes the Specific Finder method when a user selects an entity in a Business Data Web Part or External list.

Anyway, the issue here is that we can use Finder as well… so what is the difference. Well, I will go deeper and deeper in this subject…but there is a superb explanation from Jonathon Palmer, so if you don’t mind I am going to reuse it.

- SpecificFinder is meant to find "one specific  instance" of the entity:

Customer GetCustomer(int id);


- Finder is meant to find "zero, one or more instances" for an entity:

Customer[] GetCustomers(string filter);