0

I'm upgrading our SharePoint environment, and was just going over over the farm solutions. The past administrators simply added solutions from past versions "Just in case" but I can't find what some of them even do, let alone if they're useful in our new version.

We're upgrading to SharePoint 2016, using 3 servers MS 2016 Servers:

  1. Application with Search server
  2. Front-end with Distributed Cache
  3. SQL server

What do the following farm solutions do? Do they work in SharePoint 2016 (not entirely sure if they even worked in 2013)?

  1. applicationtemplatecore.wsp -- I think its a base for other solutions?
  2. dev4side.sp2010.filteredlookup.wsp -- I know what this does, but does it work in 2016? It just allows the creation of a filtered lookup instead of using custom JS to do the same.
  3. form-allitems.aspx.wsp
  4. projecttrackingworkspace.wsp
  5. usersadbrowser.wsp
1
  • KGlasier, did you find a solution for the projecttrackingworkspace.wsp solution to migrate the SP2016? I hace some site with this template and I can't find a solution to migrate them to SP2016.
    – Zamora
    Commented Aug 8, 2023 at 21:21

1 Answer 1

2

Usually there are features associated with SharePoint solution files. So, if you don’t deploy these solution files some of the features won’t be installed in to the new environment. However, these features are there in content databases and will complain during the upgrade. So, ideally you should deploy these solutions to new environment and you may remove these after the upgrade after doing some further analysis. Otherwise, you should remove these from current environment before the upgrade and make sure there’s no issue, then you don’t have to deploy these solutions to the new environment.

I found below PowerShell Scripts which are very useful to analyze about the solution files.

1.  Display all Solution files

    [void][System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint")
    $farm=[Microsoft.SharePoint.Administration.SPFarm]::Local
    foreach ($solution in $farm.Solutions) 
            {
                if ($solution.Deployed){
                   Write-Host($solution.DisplayName)               
                }          
            }

2.  Identify features in a given solution file

    $packageName = "solutionname.wsp"
    $solId = (Get-SPSolution $packageName).Id
    Get-SPFeature | where {$_.solutionId -eq $solId}|select DisplayName, Scope

3.  Get all solution files and features

    foreach ($grp in Get-SPFeature | Group-Object SolutionId) {
        $sol = Get-SPSolution -Identity $grp.Name -ErrorAction "Continue"
        Write-Host $sol.Name '(ID:' $grp.Name '), Count:' $grp.Count -ForegroundColor Blue
        foreach ($fd in $grp.Group | sort DisplayName ) {
            Write-Host $fd.DisplayName '(' $fd.Scope ')'
        }
        Write-Host
    }

4.  Get all features 

    Get-SPFeature | select DisplayName, Scope , solutionId | Out-File C:\temp\Features.txt

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.