I created simple web service which implement 2 methods (one (no parameters) return list of object, another (one parameter - upId int) returns simple object with 3 properties (bool, string, and int (same value as upId)) ). After that I created (via SP Designer) external content type (BCS) which call my service (implemented readList and readItem methods which are neccessary). Then i went to CA->BCS service Configuration, picked my external content type and gave all possible rights (4 of them) so that all authenticated SP users can call my web service. I clicked to Default action, enter value for puId, and web service returned correct object to me. Great. After that i went to user profile management, created 3 custom user properties, and mapped them to my ExtContType properties, string on string, bool to bool, int to int. For int field I leaved that users can modify that field because I wanted to use that value as paramater which will be sent to my web service as puId. After that i created BCS connection, and picked my int value as referenced value for sync.

Problem: I entered manually a value in my integer property. I started full sync , everything seems ok (in that small sync log on which you can click on page), - there is no error log, but my user profile fields remain empty. Sync didn't do the job.

Update: I put breakpoints im my web service dll, and result is that if I call service via BDC ("Default action" page) it enters in my service/dll. But via sync it doesn't want to call service even it use that bdc connection which works absolutely good. I really don't have idea where problem lies?!?

Update 2: I tried with sql server table instead of wcf service. Again BDC service returns data to me (for ReadItem operation (which receive input param)) but AGAIN when i start user profile sync it start operation, everything seems ok (sync "work" looks good in Synchronization Service Manager) but there is no query to my database (i monitor it via SQL profiler).

Please any help!!!

(I spent 3 days on this and i really think that this is "User Profile service" bug). A lots of people have same problem, but nobody provide any solution.

My SharePoint version is: SP2010 with enterprise features + SP1 + CU October 2011 (last one)

有帮助吗?

解决方案

After days of debugging I found answer. Problem was in badly configured AD user profile synchronization connection. Precisely, my admin give me wrong information (by mistake) about AD users container so i pick wrong one while configuring AD connection. For that reason my synchronization "failed" (user sync looked as it works ok, but there were no users to sync) primarly for AD which pull also WCF/SQL connections to "failure".

Conclusion: UP sync MUST have correctly configured AD sync connection. In the case that it's badly configured or missing, BDC connections can't sync.

许可以下: CC-BY-SA归因
scroll top