05 April, 2014

Access denied by Business Data Connectivity - BCS - Resolved

Create an External Content type based on backend SQL Server Database and create an External list based on it.

Open the Site in SharePoint Designer 2010: http://portal.contoso.com

Provide username and password in the promotion for open the site

Opening the site http://portal.contoso.com by communicating with the Web service

Retrieving External Content type Report

Create new external content type: Define General Properties for External Content type

Content type name: Contact; Name Space: http://portal.contoso.com; Office Item Type: Contact; Enable offline Sync to External list 

External System: Click here to discover external data sources and define operations 

Add Connection 

Managing Connections to external data sources and the operations for this external content type

External Data Source Type Selection: SQL Server -> Open the SQL Server Connection

SQL Server Connection: Populate the Database Server and Database name in the box

 Navigate to the appropriate database (AdventureWorks) and scroll through the required table (Contact)  

Table: Verify the available operations for that table

Operations for External content type means action that can be performed on the data associated with the external system -> Click on Create all Operations

Specify the parameters for the Operation

Example: Get the “Last Name” parameter-> Office property: Last Name; Check the Show in Picker box.

Filter Parameter Configuration

Add Filter Parameter: Add a Limit filter to the Query Item List Operation

Add Filter Type: Limit (Strongly Recommended to add a filter of type ‘Limit’ for this operation type)  

Filter Filed: None; Default value given as “100” for the limit filter type

Save the Content type to the Business Data Connectivity Metadata Store

Create an External List for the External Content type

External List : Business Contacts ; System Instance : AdventureWorks

External List: Business Contacts Created

Set Business Connectivity Store Permissions

List and Libraries -> External List-> Business Contacts -> Open Preview in Browser

Access is being denied by Business Data Connectivity Service (Reason: There is no permission for viewing this list)

Set the permission: Open CA->App mgmt. ->Manage Service Applications-> Business Data Connectivity Service->Manage->Set Metadata Store Permissions 

 Add Contoso\Administrator and feed all the (Edit, Execute, Selectable in Clients, Set Permissions) permission to the user.

Propagate permissions to all BDC Models, External Systems and External Content types in the BDC Metadata Store.

Work with External Content type in the Browser: Navigate to the http://portal.contoso.com

List will display with the no permission error now

Edit Item: Edit any of the lists and include any data in the list.

Example: Data Included in one of the List

If you have any queries/questions regarding the above mentioned information then please let me know. I would be more than happy to help you as well as resolves your issues, Thank you.

Product Applies To:
- SharePoint 2010
- SharePoint 2013

04 April, 2014

The site template requires that the Feature be installed in the farm

I was facing one issue while creating a new site from site template in our customer environment. This site was created in our local environment and I saved it as a template.

Below is the screenshot for the error what customer are facing.

After investigating with this feature id, I found that, there is a hidden feature named “WACustomReports” at site collection label, that need to be deactivated before saving the site as template.

Error Message: The site template requires that the Feature be installed in the farm or site collection. Troubleshoot issues with Microsoft SharePoint Foundation.

Resolution is very simple:
Please activate this feature "Web Analytics Customize Reports functionality" on the root site where you are trying to create the site based on this template. Here is the exact name - WACustomReports

OR Here is the command to activate that feature (Any feature which is missing): Enable-SPFEATURE WACustomReports –URL http://sitecollectionURL

But here is the END USER reply that I received from the end user:
“In our environment, we don’t have any access. We are only sharing the templates with instructions. Client is having only Site Collection Admin rights, not central admin rights. That’s why I deactivated this HIDDEN feature from our dev environment. Took a backup and will share with customer today.”

So bottom line: No direct access to do these things which has suggested above.

So what’s the next action plan?

Here is the resolution for this-

- Save the wsp to your desktop

- Renamed it to the .CAB file

- Extract the contents

- You will see four folders underneath ( adminListInstances, adminModules, adminPropertyBags and adminWebTemplate)

- Go for adminWebTemplate

- Go inside the "admin" folder

- You will see "ONET.XML"

- Edit with notepad

- Control F and search for WACustomReports (please refer the following screenshot) to get more clarity
- remove the lines which are for the above feature

- Save the notepad.

- Repackage the files again and save as .WSP

How to repackage it? Here are the steps:
1.   Rename WSP file to CAB and extract all the files
2.   Modify the necessary files
3.   Rebuild the correct directory structure for the solution
4.   Copy the files into that directory structure (in the right place)
5.   Create a DDF file indicating name and location of all files to be in WSP file
6.   Run MakeCab using created DDF file to create cab, and then rename cab to WSP

Reference of MakeCab:

If you have any queries/questions regarding the above mentioned information then please let me know. I would be more than happy to help you as well as resolves your issues, Thank you.

If you find a different solution, please report it as a comment to this post. Be sure to double-verify it: undo your solution and verify that the problem comes back, then redo it and verify that the problem goes away.

SharePoint Timer Service Delays

Timer job plays a very vital role in the SharePoint environment as so many task’s, jobs, schedules as well as workflows are depend on it.

Bottom line (important one):
1.    Clearing the timer job history
2.    Recycling the timer service
3.    Workflows

Microsoft SharePoint Server 2010 uses the Windows SharePoint Services Timer V4 (SPTimerV4) service to run most system tasks.

How you will conclude that the timer jobs are not working as expected?
Here is the list:
o   Alerts are not working
o   Workflow: either not running / taking a long time to update
o   Updates to the farm configuration are not synchronized to the local server.

Make sure / Resolution:
a)   Start-> Run -> services.msc -> will open the services console.
b)   Press ‘S’ in the list of services and it will show you the list of SharePoint Services
c)    Right click on ‘SharePoint Timer Service” and Restart it.

d)   Ensure- it gets started successfully. If not then use the following way

e)   Start ->Run- >cmd ->it will open the console window -> net start sptimerv4

f)     If the service does not start, ensure the following parameters are correct:

g)    It should be a domain user account and is a member of the following:
·         dbcreator fixed SQL Server role
·         securityadmin fixed SQL Server role
·         db_owner fixed database role for all databases in the server farm

h)   If the account has sufficient permissions, confirm the password by typing the password for the account, retyping the password in the Confirm password box, and then clicking OK.

If the workflows are taking long time to complete then please change the frequency:
stsadm -o setproperty -propertyname "job-workflow" -propertyvalue "every 1 minutes between 0 and 59" -url http://webapplication
For more information, please see http://technet.microsoft.com/en-us/library/cc424970.aspx. The default value is "every 5 minutes between 0 and 59"
If you have any queries/questions regarding the above mentioned information then please let me know. I would be more than happy to help you as well as resolves your issues, Thank you.