Microsoft cloud engineer - SharePoint, Office 365, Azure, DotNet, Angular, JavaScript.
Microsoft cloud engineer - SharePoint, Office 365, Azure, DotNet, Angular, JavaScript.

July 2012

Central Admin – recommended Top Navigation Links

After creating a new farm, one thing I like to do is add a few simple top navigation links to help move around more quickly.  Service Applications in particular are nested several levels down and when you want to view User Profile status it can be tedious to click through.   Not all pages in Central Admin are viewed with the same frequency, why should they have the same navigation?   Shortcuts help here.

  • SA  (Service Applications)
  • SOS  (Services On Server)
  • SRCH  (Search Administration)
  • PS  (Patch Status)
  • DS  (Database Status)
  • US  (Upgrade Status)
  • MM  (Managed Metadata)
  • UPS  (User Profile Service)

 

image

UPDATE – Populate top nav!

This gives admins a quick way to “jump” between pages without as much navigation effort clicking through default menus.  Enjoy! 

Smile
Add-PSSnapIn microsoft.sharepoint.powershell
function AddTopLink ($webUrl, $linkUrl, $linkTitle, $isExternal) {
	Write-Host "CREATING $webUrl $linkUrl $linkTitle"
	$web = Get-SPWeb $webUrl;
	$newLink = New-Object Microsoft.SharePoint.Navigation.SPNavigationNode -ArgumentList  @($linkTitle, $linkUrl, $isExternal);  
	$web.Navigation.TopNavigationBar.AddAsLast($newLink);
	$web.Update();
}
$caUrl = (Get-SPWebApplication -IncludeCentralAdministration |? {$_.IsAdministrationWebApplication -eq $true}).Url
$caUrl = $caUrl.TrimEnd("/")
$upsID = (Get-SPServiceApplication |? {$_.TypeName -eq "User Profile Service Application"}).Id
$srchID = (Get-SPServiceApplication |? {$_.TypeName -eq "Search Service Application"}).Id

AddTopLink $caUrl "$caUrl/_admin/Server.aspx" "SOS" $true
AddTopLink $caUrl "$caUrl/_admin/BramNuyts/GetCorrelationId.aspx" "ULS" $true
AddTopLink $caUrl "$caUrl/Lists/HealthReports/AllItems.aspx" "HM" $true
AddTopLink $caUrl "$caUrl/_admin/Solutions.aspx" "WSP" $true
AddTopLink $caUrl "$caUrl/_layouts/15/ManageUserProfileServiceApplication.aspx?ApplicationID=$upsID" "UPS" $true
AddTopLink $caUrl "$caUrl/SearchAdministration.aspx?appid=$srchID" "SRCH" $true

FIXED–SharePoint 2010 SP1 is not installed on this computer. You must apply SP1 before using a SQL Server 2012

Today I came across an error when attempting to run the “PowerPivot Configuration Tool” for SQL 2012 Denali.  The strange part is that I had applied both SP1 and June 20120 CU to SharePoint 2010.  The farm build number was clearly shown in PowerShell as 14.0.6123.5000.   After running PROCMON to watch the read/write activity for file and registry I believe I narrowed it down to a REGKEY which still showed the old RTM version number (14.0.4763.1000) for some reason.   For this install I slipstreamed the SP1 and June CU (in that order) to the Updates subfolder of the install media.   The patching was successful and I even ran both the Configuration Wizard and “psconfig -cmd upgrade -inplace b2b –force” to confirm everything was upgraded OK.

Error Message

SharePoint 2010 SP1 is not installed on this computer. You must apply SP1 before using a SQL Server 2012 instance of the Database Engine as the farm’s database server.

Suspected Root Cause

An old version number somewhere in the registry.   Maybe not correctly updated by the slipstream or June CU to reflect the current farm build number.

Workaround

  1. Open SharePoint 2010 Management Shell
  2. Run “(get-spfarm).buildversion”
  3. Modify the registry key “HKEY_LOCAL_MACHINESOFTWAREMicrosoftOffice Server14.0BuildVersion” to match the PowerShell version.  For me that should be “14.0.6123.5000”   The bad value I saw in the registry was “14.0.4763.1000”  (RTM version, very old)
  4. Run PowerPivot Configuration Tool again

 

PowerPivot Log Detail

07/07/12 20:12:13:9051    Log    Verbose:    Running function IsSharePointSP1Installed function to check whether SharePoint SP1 is install
07/07/12 20:12:13:9051    Error    High:    SharePoint 2010 SP1 is not installed on this computer. You must apply SP1 before using a SQL Server 2012 instance of the Database Engine as the farm’s database server.
07/07/12 20:12:13:9051    Log    Verbose:    SharePointEnvCheck;.NeedsExecute
07/07/12 20:12:13:9051    Log    Verbose:    SharePointEnvCheck;.NeedsExecute(True)
07/07/12 20:12:13:9403    Log    Verbose:    Finished running validation
07/07/12 20:12:13:9422    Error    High:    System validation error:
07/07/12 20:12:13:9432    Error    High:    SharePoint 2010 SP1 is not installed on this computer. You must apply SP1 before using a SQL Server 2012 instance of the Database Engine as the farm’s database server.

Screenshots

image
image
image
image
image
image
image
image

 

 

Reference Links

Always open default site with PowerShell ($profile)

Recently I found myself starting each PowerShell window with the same predictable first command (Get-SPSite http://myportalurl).   Knowing that PowerShell supports a start up script ($profile) I thought it may be possible to automate this and save a few seconds each time I need to open a console.   Below is the source code with screenshots.   Hopefully this helps somebody else to save time also.

 

image
image
image
Add-PSSnapin Microsoft.SharePoint.PowerShell
function Get-DefaultSite() { 
  $site = Get-SPSite http://myportalurl/ 
  $web = $site.OpenWeb(); 
  Return $web; 
}

© Copyright 2016
@ SPJeff

Return to Top ▲Return to Top ▲