Blog — Read and Understood for SharePoint Online

Paul Reeve

Microsoft Flow Template for SharePoint Approval, where Major and Minor versioning is used, does not Publish the File

What’s the Issue?

The out of the box approval flow template for SharePoint is missing a vital part of the process to get the File Metadata - ETag and then setting it when the item is approved. ETag is a special identifier for the Item version.

Solution

The article below is an excellent solution to the problem experienced by one of my clients, hopefully it can help other is you get stuck with the same problem…

https://blog.leitwolf.io/approve-a-sharepoint-document-with-flow-set-content-approval/

Microsoft New Employee Onboarding hub with Read and Understood Onboarding

Microsoft New Employee Onboarding hub with Read and Understood

In October 2020 Microsoft released the New Employee Onboarding hub for SharePoint online to:

‘…help organizations improve their onboarding process and experience the benefits of a well-planned new employee onboarding process‘.

The information below is taken from the Microsoft Article on New Employee Onboarding hub article on the importance of onboarding new employees:

Why invest in a new employee onboarding site?

New employee onboarding (NEO) should be a strategic process that integrates new employees into an organization and its culture while providing the knowledge and tools needed to become fully contributing team members. NEO processes often fall short for both the new hires and the organization. Only 12% of employees strongly agree their organization does a great job of onboarding new employees. An engaging and well organized NEO process can make all the difference in helping a new hire navigate through an exciting – but stressful - career journey, and it can have major organizational benefits.

Strategically planned NEO experience can:

Improve new hire performance and time to productivity - Organizations with a standard onboarding process report 50% greater new-hire productivity.

Improve new employee retention - Based on our research, 69% of employees are more likely to stay with a company for three years if they had a great onboarding experience. Employees who have a negative onboarding experience are twice as likely to look for new opportunities in the near future.

Onboarding with Read and Understood

Building on the NEO site template, use the new Read and Understood Onboarding feature to increase productivity, ensuring new employees read the documents that are important to your company and equally important to help them fulfil their new role.

A Quick Introduction to Read and Understood

Read and Understood targets some or all documents within SharePoint libraries using ‘Reading Categories’. The Reading Categories define who should be Notified when documents have been added / updated. Reading Categories also:

  • Select the employees required to ‘Acknowledge’ reading documentss

  • Set an ‘Owner’, who report on employee document Acknowledgements

  • Set the duration (days) by which employees are required to acknowledge updated documents

  • Send reminders at intervals to prompt those employees who have yet to complete the Acknowledgement

How Onboarding Works for Employees

Read and Understood tracks employee membership of SharePoint and/or Azure Active Directory Groups. When a new employee is added to a group, a Notification (email) is generated for each current document version targeted by a Reading Category. When a new employee completes an Acknowledgement request, their comments are recorded in Read and Understood against that document version.

Keeping existing employees Notified of new or updated documents is equally important as informing new employees. Existing group members are automatically updated as and when documents are changed ensuring all employees read the documents that are important in fullfilling their role.

Not Everything is a Document in SharePoint

It is common for companies to provide training or induction videos. If the videos are in SharePoint then they too can be part of the onboarding process with Read and Understood.

Embracing Microsoft Teams Sites

Many companies we work with are embracing Microsoft Teams. Files stored within Microsoft Teams Sites can be used with Read and Understood.

Reports to reduces corporate risk to stay audit ready

A full audit history for each document version of new, though onboarding, and existing employees who did or did not acknowledge reading.

Documents in Other Sites

Files you want onboarding employees to read do not have to reside within the new onboarding hub but can be located in any SharePoint site library. Read and Understood brings information together to make it easier for employees.

Well informed employees make better business decisions

Enable SharePoint Site Scripts with PnP PowerShell and a Windows Form

Updates: 25/01/2021

Script now includes support for PowerShell 7 and the latest release of PnP.PowerShell. The script detects if the modules are available and if not, installs them, which will require ‘Run as Administrator’.

Introduced ThreadJob to work-a-round an issue with PnP.PowerShell (7) when getting a connection to the tenant, it just hangs. Problem only occurred using credentials or -UseWebLogin from within a form. FYI. Start-Job deserialized the connection response so wasn’t usable.

A simple System.Windows.Forms.ListBox is used to display messages and errors.

Background

Occasionally with SharePoint, we need to enable Custom Scripts for a Site (Site Collection). In the old admin centre we were able to enable the option, as you can see in the image below:

Old admin centre - enable Custom Scripts

Old admin centre - enable Custom Scripts

SharePoint admins cannot be reliant on customising SharePoint through the UI and instead have to result to using PowerShell. Two tools I particularly like to use are:

The latter I like to use if I’m providing a client with a more friendly UI to interact with PowerShell, however, while the tool provides a mechanism to output an exe file, my preference is to give them something they can, should they wish, tweak when they become more familiar with SharePoint PS Admin.

Enable/Disable Custom Script

There are many articles on the internet that demonstrate how, using the command-line, admins can enable or disable custom scripting for Sites in SharePoint. This article summarises how a more user friendly user interface was created using a windows form over the top. A copy of the script I produced is here:

Overview of how it works

Much like many of the scripts online, it simply connects to the Tenant, retrieves all sites and organises them into two lists, those enabled and those disabled.

Having downloaded my copy of the script, you can either manually install the required scripts or, run the PowerShellFormSiteScripting.ps1 as an Administrator and it will install the required components. Unzip my script file where you will see there are three files…

Date modified are likely to be newer as it gets updated.

Date modified are likely to be newer as it gets updated.

Right click on the PowerShellFormSiteScripting.PS1 file and click Run with PowerShell.

Note: if using PowerShell 7 the option is slightly different and says ‘Run with PowerShell 7’

Note: if using PowerShell 7 the option is slightly different and says ‘Run with PowerShell 7’

First thing you must do is authenticate. Provide a User Name, Password and your Tenant Domain Name:

You only need to provide your tenant domain name not the complete URL.

You only need to provide your tenant domain name not the complete URL.

Once the details are entered, click the

Click the button. You can use  this button to refresh the lists at anytime.

Click the button. You can use this button to refresh the lists at anytime.

Assuming the details are entered the two lists will be populated with Site URLs where Custom Scripts is either enabled or disabled. If any of the information provided is incorrect then a warning will appear at the bottom of the form.

powershell_Site scripts enabled disabled.png

Enable or Disable Custom Script for Site

Simply select the Site you wish to Enable or Disable and click the arrow in the directional arrow. The video below demonstrates it working…

Under the hood

As i mentioned at the beginning there are many articles on this subject and the approach I take only really differs by the use of a Form.

First, it checks that the PnP modules are installed… if not the script will attempt to install them for you.

Next, when the user clicks Query SharePoint sites for Script Enablement, get all tenant sites, I chose to filter those out that had a different domain name e.g. My Sites.

Note: for PS 7 it’s using as ThreadJob to get the connection. This a work-a-round to an issue within using Connect-PnPOnline with Credentials within a Windows Form.

Note: for PS 7 it’s using as ThreadJob to get the connection. This a work-a-round to an issue within using Connect-PnPOnline with Credentials within a Windows Form.

Unlike PS 7 this is example is just doing the connection within the Form itself

Unlike PS 7 this is example is just doing the connection within the Form itself

Previously, when the User click the arrows to either enable or disable scripting we processed the change by executing the code below:

Screenshot+2020-09-13+at+12.35.42.jpg

Instead we can do this in a single line with PnP.PowerShell:

Set-PnpSite -Identity SiteUrl -NoScriptSite True/False -Connection ConnectionVariable