SharePoint Tabs

Business Requirements
In SharePoint Online, end-users would like to:

  • Create a new web page where they can interactively add 1 or more web parts onto the different web part zones on the page;
  • Display multiple web parts under specified tabs. For example in the first tab, display 3 web parts. Then in the second tab, display 1 web part; and
  • Have a UI that offers no code experience for end user to configure the tabs.

There are two recommendations to meet the business requirements.

 

1. Recommendation – SPELL Tabs v1.1
Use SPELL Tabs 1.1 developed by Christophe Humbert in 2014 for SharePoint Online. SPELL Tab is a replacement and successor of Easy Tab (Go to SharePoint User Toolkit page and then navigate to Easy-Tabs-v5) on premise solution for SharePoint 2010 & 2007. Follow the instructions below to implement the solution.

SPELL Tabs v1.1 has two versions available to clients. There is the i) basic entry level version which is free at no charge and ii) commercial version purchase for a retail price of $99 USD. Both versions are distributed by distributed by User Managed Solutions LLC and comes with a free user manual.  Clients can download and read the SPELL Tab v1.1 user guide PDF file from this site. Please note that the SPELL Tab v1.1. user guide is for the installation of the full commercial license version.

Free version
The basic version of SPELL Tabs comes with:

**NOTE:
The free sample of SPELL Tabs comes with http://usermanagedsolutions.com/SPELL/Downloads/SPELLv0.9.2TabsAppModeDemo.aspx. To use the SPELLv0.9.2TabsAppModeDemo.aspx file follow the steps:

  1. Download the SPELLv0.9.2TabsAppModeDemo.aspx page with the associated JavaScript file SPELLv0.9.2CoreTemplateWPNav.js

2. Upload the SPELLv0.9.2TabsAppModeDemo.aspx and SPELLv0.9.2CoreTemplateWPNav.js to the same folder location at the site asset document library in SharePoint Online.

3. Create a blank new web page and add your own specific 1 or more web part contents into any of the web part zone.

4. Add a page viewer web part and point/link the relative URL to: /siteassets/SPELLv0.9.2TabsAppModeDemo.aspx

5. In the page viewer web part properties, update chrome field to: None. Then apply the Page Viewer web part changes, save and publish the page.

By default due to the limitation of the free version, the SPELLv0.9.2TabsAppModeDemo.aspx will display each web part as it’s own separate tab. There are also other tabs being displayed, i.e. the links tab, “+” expand tab, “-” minimise tab and the “[] ” print tab. Unfortunately user do not have any control over the other tabs.

Commercial version
The commercial version of SPELL Tab v1.1 can be purchase for a retail price. The paid version will come with a User Interface by adding the out of the box Page Viewer web part that references the Spell tab UI page, so t hat user does not need any code experience.

However please contact [email protected] to confirm the following:

  • Is the price  $99 USD for the commercial version v1.1?
  • After downloading the free SPELL Tab v1.1 user guide PDF file from this site will Christophe provide client with access to download the five SPELL components as mention in the instruction section of the user manual?
  • What are the support level agreement for commercial license in terms of i)support coverage 24×7 ii)support response time ?
  •  Are there any annual additional cost that client need to renew the license every year?

 

2. Recommendation – Hillbilly Tabs
This is a free version of Hill Billy Tabs that will work in SharePoint online platform. To get started follow the instructions at of version 2 at https://www.markrackley.net/2014/11/25/sharepoint-tabbed-web-partshillbillytabs2-0/

There is also version 3 published in at https://www.markrackley.net/2015/08/16/sharepoint-tabbed-web-partshillbillytabs-3-0/

However the recent version 4 is the latest release at http://www.markrackley.net/2018/04/08/the-return-of-hillbillytabs-part-4/

The steps to implement the Hill Billy tabs are:

1. Create a new JavaScript file (e.g. tab.js) and copy and paste the code from one of the above Hill Billy blog site

2. Upload the JavaScript file to the site asset document library in SharePoint online.

3. Create a new page (https://sagov.sharepoint.com/sites/digiworkuat/Pages/TabDemo.aspx) and add the necessary web part contents you wanted onto any zone on the page.
NOTE: By default of out the box without any programming, each web part content will represent each individual tab. E.g. If you add 1 document web part inserted onto any zone and add another 1 image web part into any zone, then there will be 2 tabs shown, that is Document and image tab.

4. Add OOTB content editor web part onto the very top page.

* Edit the content web part property and enter the URL link to the JavaScript file that was uploaded to the asset library (e.g. /sites/digiworkuat/siteassets/tab.js)

* Edit the Chrome type to select none

 

5. Click “Apply” button and save the page.

6. Check the page and publish the page when tab looks good

SharePoint 2013 Search Returns no Results

Problem:
SharePoint log files generate the following error messages:

  1. SearchServiceApplication::Execute–Exception: Microsoft.SharePoint.SPException: Tried IMS endpoints for operation Execute: Cannot plan query for index system SPfe749b4bb671. Index fragment ‘0’ has no available cells. Cell statuses: [Cell I.0.0 on node IndexComponent1: Cell status is set to ‘not available’ (cell out of sync or seeding)]

Windows Application log generate the following error messages:

  1. Event ID: 6482 – Application Server Administration job failed for service instance Microsoft.Office.Server.Search.Administration.SearchServiceInstance (9023f74a-9fcd-47b2-b73b-6e190b10689b).Reason: An update conflict has occurred, and you must re-try this action. The object SearchDataAccessServiceInstance was updated by SYC\svc_SharePointFarm, in the OWSTIMER (2720) process, on machine SP03. View the tracing log for more information about the conflict.Technical Support Details:
    Microsoft.SharePoint.Administration.SPUpdatedConcurrencyException: An update conflict has occurred, and you must re-try this action. The object SearchDataAccessServiceInstance was updated by SYC\svc_SharePointFarm, in the OWSTIMER (2720) process, on machine SP03. View the tracing log for more information about the conflict.
    at Microsoft.Office.Server.Search.Administration.SearchServiceInstance.Synchronize()
    at Microsoft.Office.Server.Administration.ApplicationServerJob.ProvisionLocalSharedServiceInstances(Boolean isAdministrationServiceJob)

 

Cause:
This issue occurs if the contents of the file system cache on the front-end servers are newer than the contents of the configuration database. This occurs when i)The server had perform windows update and did a server reboot and ii) The SQL Server DB server is potentially running low on HD space to store the crawl Index SQL DB files.

 

Resolutions:
1. Short term:
Clear the file system cache on all servers in the server farm on which the Windows SharePoint Services Timer service is running – https://docs.microsoft.com/en-us/sharepoint/support/server-admin/update-conflict-when-modify-or-delete-alternate-access-mapping

2. Long term:
If there is not enough SQL server HD space to store index crawl DB files, then doing resolution #1 is a temporary fix as issue will occur again in the future if HD space is running low to. Increase that HD space on that disk drive to 80-100GB of free space – https://docs.microsoft.com/en-us/previous-versions/office/sharepoint-2007-products-and-technologies/cc262574(v=office.12)

The steps for resolution #1 are:
1.0 Infrastructure team to do a snapshot VM backup of the SharePoint 2013 servers below:
*  WFE server
* App server
1.1 Infrastructure team to notify SharePoint Administrator when snapshot is done.
1.2 Infrastructure team to be on standby call during outage period for support

2.0 SharePoint Administrator to repeat the following steps below on each SharePoint 2013 servers (WFE and App server)
2.1 Stop the Window SharePoint timer services
2.2 Go to C:\ProgramData\Microsoft\SharePoint\Config folder
2.3 Identify which GUID folder has the cache.ini file and go to that GUID folder
2.4 Back up the cahe.ini file
2.5 Back up all the XML files
2.6 Delete ONLY all the XML files. DO NOT delete the GUID folder!
2.7 Edit cache.ini file and type 1 as the new updated content. Save the ini file
*2.8. Start the SharePoint timer services
2.9 Wait for few minutes for see the system regenerate the xml files again.
2.10 Check the content of cache.ini file. The value should be the previous state or incremented (NOT 1) when it was back up
2.11 Test the search functionality. Check the Windows log application on the server to verify that there are no error message relating to event id 6482
2.12 If there is no search results return from the search query, then do step 2.13 onward. Otherwise skip step 2.13 and go to 3
2.13 Go to Search Application service in Central Administration ->Content Source. Stop any full or incremental search job
2.14 Do an index reset in Central Administration (Manage Service Applications > Search Service Application > Crawling > Index Reset
2.15 Do a full crawl (Manage Service Applications > Search Service Application > Crawling > Content Sources)
2.16 Afterwards test the search and expect search results should work after a full crawl

3. Notify Infrastructure team that testing was successful

*NOTE: Infrastructure may need to reboot the server if SharePoint timer services cannot be started manually in step 2.8

Server or Content Rollback plan
* Infrastructure team to restore the backup snapshot of the SP02 and SP03 server
or content rollback is to manually:
1. Restore the backup cache.ini file
2. Restore the backup XML files

 

References