Friday, 24 November 2017

Connect to Outlook option greyed out

Issue : Connect to Outlook option greyed out

Checklist to resolve the issue:

      1. Connect to outlook feature is available only to these type of lists:  Calendar, Tasks, Project Tasks,         Contacts, Document Library and Discussion Boards.
2.       Make sure that "SharePoint Stssync Handler" is enabled in browser add-ons. (IE >> Tools >> Manage Add-ons)
3.       Check the client-integration option of web application settings
4.       This feature works only when you have 32-bit version of office installed in your client machine!
5.       The "Web Client" Service must be running in services console of the client machine!
6.       Try adding your SharePoint site to "Trusted sites zone", Also uncheck "Enhanced Protected Mode" for the zone.
7.       Logged user must have at least "Read" permissions to SharePoint.
8.       Prior to Service pack 1:  If your SharePoint site has Minimal Download Strategy feature enabled, Refresh the current page. You'll get connect to outlook button enabled! Disabling MDS feature is not a good idea.
9.        If you have Service pack 2: then you can disable the Minimal Download Strategy and refresh the page. You’ll get connect to outlook button enabled.

Steps to disable the MDS feature on a site collection:
·         Go to Site settings
·          Click on manage site features under Site actions.
·         Click on Deactivate button which will be next to Minimal download strategy feature
·         Then confirm disable minimal download strategy by clicking on deactivate this feature.

PowerShell to disable the MDS for entire web Application.

$webApp = Get-SPWebApplication -Identity
$sites =$webApp | Get-SPSite -limit all

foreach ($site in $sites)
$webs = $site | Get-SPweb -limit all
foreach ($web in $webs)
$url = $web.URL
Disable-SPFeature -Identity  "87294c72-f260-42f3-a41b-981a2ffce37a" -url $url -Confirm:$False


PowerShell to Enable the MDS for entire web Application.

$webApp = Get-SPWebApplication -Identity
$sites =$webApp | Get-SPSite -limit all

foreach ($site in $sites)
$webs = $site | Get-SPweb -limit all
foreach ($web in $webs)
    $url = $web.URL
    Enable-SPFeature -Identity  "87294c72-f260-42f3-a41b-981a2ffce37a" -url $url -Confirm:$False


Hope this helps!
Happy SharePointing :)

Wednesday, 6 September 2017

Legacy Site Detected Error - Resolved

While working on SharePoint Migration from 2010 to 2016, I thought it to be smooth because the environment didn’t have any customizations and neither I had any custom solution deployed on it.
So, I started the migration from SharePoint using Content DB. I have migrated Content DB from SharePoint 2010 to 2013. After creating a web application and running “test-spcontentdatabase” PowerShell command (No errors in output), I mounted the content database successfully without any issue.
SharePoint site was working as expected. I have also done the visual upgrade of SharePoint sites without any error. Now, it's time to move to SharePoint 2016. Again, I have to follow the same approach I did in SharePoint 2013.
Moved and restored the Content Database on SQL Server from SharePoint 2013 and created the web applications but when I ran the “Test-Spcontentdatabase” Powershell command, I got an error that I never faced after doing around 10 migrations.
“Legacy Site Detected”

So, I have 2 sites which are still using SharePoint 2010 experience.
Error - “Legacy Site Detected”
Follow the below steps.
  1. Launch SQL Server Management Studio (SSMS).
  2. Connect to the offending content database.
  3. Execute the following query,
    1. SELECT, als.PlatformVersion, aw.Title, aw.FullUrl, aw.ProductVersion, als.Deleted  
    2. FROM dbo.AllSites als  
    3. INNER JOIN dbo.AllWebs aw  
    4. ON aw.Id = als.RootWebId  
  1. Locate the entry that doesn’t have product version 15 or Platform version It will look like the below screenshot.

  1. Note the GUID associated with the site you identified causing the issue.
    (This will be the id column)
  2. Run the following query using SSMS connected to the content database,

    1. UPDATE dbo.AllSites  
    2. SET PlatformVersion = ''  
    3. WHERE id = GUID"
Verify again by running the query at step 3 and once all platform version is, go to SharePoint Server and run the “Test-SPContentDatabase” again.
The legacy issue will be fixed and we are good to go with our SharePoint migration.
Hope this will help you. Happy SharePointing!!!

Tuesday, 16 May 2017

Features difference between SharePoint 2013 vs 2016

This article is to list out difference between SharePoint 2013 and SharePoint 2016.
As you all know SharePoint 2016 has too much to offer to Administrator or Developer. As an Administrator. I love the changes that Microsoft done in SharePoint 2016.
So, lets gets started ;)

SharePoint 2013 VS SharePoint 2016.

I will try to explain all the Yes in SharePoint 2016 row which are not present in SharePoint 2013.

App Launcher
It helps SP 2016 to match the Office 365 experience by providing users almost identical interface to navigate both SharePoint 2016 and Office 365.

Min Roles
With SharePoint 2016, we can select the specific role of a server and according to the role service will be enabled on that servers. So, we don’t have to worry about individually running SP services on Specific SP Farm.

Min-Role Farm Topology
Six pre-defined role are available for creating a new farm or joining to an existing farm. SP automatically configures the services according to the role selected.

Zero Downtime Patching
In order to take advantage of zero downtime patching your farm must have a High Availability, HA, topology.

Integrated Project Server
Project Server 2016 is installed with SharePoint 2016 but it will be licensed separately.

If you like the article, please comment. Happy SharePointing!!!

Thursday, 4 May 2017

Service Application created using Powershell only

This Article will be focused on the service application in SharePoint 2013 which we can’t create by going to Central Admin > Application Management > Manage Service Application > Click New.

We will be covering the service applications that are created using PowerShell or using a different method.

Below is the list of Service application that we can easily create from GUI (Central Admin > Application Management > Manage Service Application > Click New.)
  •          App Management Service (new in 2013)
  •          Business Data Connectivity Service
  •          Excel Service Application
  •          Managed Metadata Service
  •          Performance Point Service Application
  •          Search Service Application
  •          Secure Store Service
  •          Machine Translation Services (new in 2013)
  •          User Profile Service Application
  •          Visio Graphics Service
  •          Word Automation Services
  •          Access Services App databases (new) (2010 and 2013)
  •       Work Management Service Application

We won’t we talking about the above-mentioned Service application.
The service application we going to created/install are listed below:

  • PowerPoint Automation Services
  •  State Service
  •  Subscription settings
  •  Usage and health Data Collection

There are two ways of creating/ installing these apps
1.      Using Farm Configuration Wizards
2.      PowerShell

Let’s start with the first option.

  •  On the Central Administration, click Configuration Wizards
  •  Click on “Launch the Farm Configuration Wizard”

  •  On Farm Configuration wizard, click on Start the wizard

  •  On the services configuration page, in the Services section, select the Service mentioned above.
  •   Click Next.
  •  Complete any other configuration steps for the server farm.
  •  On the final page of the Farm Configuration Wizard, click Finish.

Let’s talk about the second option which is PowerShell.

Make sure you run SharePoint Management Shell as an Administrator.

  •  PowerPoint Automation Services

New-SPPowerPointConversionServiceApplication -Name "PowerPoint Automation Service Application" -ApplicationPool "App Pool name"

# PowerPoint Automation Service Proxy
New-SPPowerPointConversionServiceApplicationProxy -Name "PowerPoint Automation Service Application Proxy" -ServiceApplication "PowerPoint Automation Service Application" AddtoDefaultGroup

  • State Service
$serviceApp = New-SPStateServiceApplication -Name “State Service Application”
 New-SPStateServiceDatabase -Name “SharePoint_Service_State” -ServiceApplication $serviceApp

   #State Service Proxy
 New-SPStateServiceApplicationProxy -Name “State Service Application Proxy” -ServiceApplication $serviceApp -DefaultProxyGroup

  •  Subscription settings

New-SPSubscriptionSettingsServiceApplication -ApplicationPool “SharePoint Web Services Default” -Name “Subscription Settings Service Application” -DatabaseName “SubscriptionSettingsDB” | New-SPSubscriptionSettingsServiceApplicationProxy

  •  Usage and health Data Collection

New-SPUsageApplication -Name "Usage and Health Data Collection"
$proxy = Get-SPServiceApplicationProxy | where {$_.TypeName -eq "Usage and Health Data Collection Proxy"}

Hope it helps.
Let me know in comments if I missed out on any service application

Happy SharePointing J