Monday 13 July 2020

This article clearly outlines what the prefered Microsoft approach is with respect to authentication within SharePoint Online....that being to use "Azure AD application registration".

(Over "SharePoint App only" or any of the legacy approaches using user names and passwords from key vaults or config files)

One further point to note to perhaps the less experienced out there, is that you must always consider your customer. Just because microsoft have a new way of doing it, that doesnt mean that the customer estate will want you to use that approach. Its important to run these sorts of things past the customer before you build it negate the risk of reengineering it in the future. Obvsiouly you will present the most modern approach but perhaps there are limitations as to why they cant do it. :) https://docs.microsoft.com/en-us/sharepoint/dev/solution-guidance/security-apponly

Friday 5 June 2020

My Client list to date

I wanted to create a post which contains the majority of my client work to date so here it is.  It doesnt include any of the internal strategy, mentoring or practice development activities out side of paid for work but it is nice to see where I have been hehe.

(July 23 – Oct 23) Microsoft 365 Solution Architect – The Environment Agency - Permit classification system - Microsoft 365 / SharePoint Online / PowerBi
(May 23 – July 23) Microsoft 365 Solution Architect – The Environment Agency - Permit classification system Managed Service coverage - Microsoft 365 / SharePoint Online
(Mar 23 – April 23) Principal Consultant – Vehicle Certification Agency - Digital Transform Consultancy- Microsoft 365 / SharePoint Online / Teams / Purview
(Sept 22 – Feb 23) Microsoft 365 Solution Architect / Team Lead – The Environment Agency - Permit classification system Continuous Improvement Phase 2022 - Microsoft 365 / SharePoint Online
(July 21 – Jun 22) Microsoft 365 Solution Architect / Team Lead – Quilter Wealth Management - Intranet / M365 Develooment Pracitce Framework - Microsoft 365 / SharePoint Online / Microsoft Teams / OneDrive / Forms
(Jan 20 – July 21) Microsoft 365 Solution Architect / Team Lead – The Environment Agency - Permit classification System - Microsoft 365 SharePoint Online / Azure 
(July 19 – Jan 20) Solution Architect / Principal Consultant  – Air / Rail Accidents Investifation Branch - Document Management solution for Incident Management system - Microsoft 365 SharePoint Online / Dynamics 365
(July 19 – Dec 19) Technical Architect – Thames Valley Police - Farm installation - SharePoint Server2019 (hosted in Azure)
(Oct 18 – Jul 19) Solution Architect – Kew Gardens - EDRM - SharePoint Online / Azure
(Dec 17 – Sep 18) Solution Architect – Surrey and Sussex Police - Intranet - SharePoint Server 2013
(Jul 17 – Nov 17) Solution Architect – Security Industry Authority - Corporate website / Custom application update - SharePoint Server 2007 - 2010
(Sep 16 – Jun 17) Solution Architect – Surrey and Sussex Police - Migration - Multiple applications to SharePoint Server 2013
(Nov 15 – Sep 16) Solution Architect – ACAS - Document Management / Collaboration - Office 365 (SharePoint / One Drive)
(May 15 – Nov 15) Solution Architect – Kew Gardens - EDRMS - Office 365 (SharePoint) / Azure
(Aug 14 – May 15) Solution Architect – Nationwide Building Society - Search Enhancements - SharePoint server 2013 
(Aug 14 – May 15) Principal consultant – Nationwide Building Society - Design appraisal - SharePoint Server 2013
(Mar 14 – Jul 14) Solution Architect / Principal Consultant – Department of Energy & Climate Change - EDRM - SharePoint Online
(Nov 13 – Feb 14) Solution Architect / Principal Consultant – Surrey Police - Migration - OpenText to SharePoint 2013
(Sep 13 – Oct 13) Solution Architect / Principal Consultant – HM Treasury - Staff Changes HR SharePoint application Enhancements - SharePoint 2010
(Aug 13 – Aug 13) Solution Architect / Principal Consultant – PepsiCo UK - Migration - SharePoint 2010
(Aug 13 – Aug 13) Solution Architect / Principal Consultant – Maverick TV - Document Management - SharePoint 2010
(Mar 13 – May 13) Solution Architect / Principal Consultant – Medimmune - Collaboration platform - SharePoint 2010
(Mar 13 – May 13) Solution Architect / Principal Consultant – The Electoral Commission - Document Management Archival - SharePoint 2010
(Jun 12 – Mar 13) Technical Architect / Team Lead – HM Treasury - Staff Changes HR SharePoint application - SharePoint 2010
(Dec 12 – Feb 13) Principal SharePoint Consultant – Home Office - EDRM - SharePoint 2010
(Oct 12 – Nov 12) Technical Architect / Senior Consultant – The Electoral Commission - Document Management enhancements - SharePoint 2010
(Mar 12 - Mar 12) Senior SharePoint Consultant – Mencap - Health check - SharePoint 2010
(Jun 11 – Oct 11) Senior SharePoint Consultant - Home Office - SharePoint 2010
(May 10 – Mar 12) Senior SharePoint Consultant / Architect / Team lead - Carbon Trust - Public facing website - SharePoint 2010
(Apr 11 – Jul 11) Senior consultant / Lead developer - Electoral Commission - Intranet - SharePoint 2010
(Mar 11 – Jul 11) Senior consultant / architect - Energy Saving Trust - Extranet - Development in SharePoint 2010
(May 10 – Jul 10) SharePoint Training Consultant - Vehicle Certification Agency - SharePoint 2010
(Sep 09 - May 10) Technical Architect - Heritage Lottery Fund - Public Facing Website - SharePoint 2007
(Oct 09 – Dec 09) Senior Consultant - London Pension Fund Authority - Intranet SharePoint 2007 
(Nov 07 - Oct 09) Lead Developer - ACAS and Central Arbitration Committee - Public Facing Websites - GOSS iCM
(Sep 07 – Nov 07) Developer - Roffey Park - Public Facing Website - SharePoint 2007
(Jan 07 – Mar 07) Developer - National Heritage Memorial Fund - Website Development - SharePoint 2007
(Dec 05 - Jan 07) Developer - Security Industry Authority - Licensing Database - Content Management Server 2002
(Feb 05 - Dec 05) Junior Developer - Heritage Lottery Fund - Public Facing Website - Content Management Server 2002
(Sep 04 - Feb 05) Junior Developer - Security Industry Authority - Public Facing website - Content Management Server 2002
(Jul 04 - Sep 04) Junior Developer - Veterinary Laboratory Authority - Bespoke .net Application 

Tuesday 14 April 2020

Top tips on teams for remote workers

Some cool pointers to remember on teams from typcial remote users:

  1. Using commands in the search box "/"
  2. Utilising multiple cloud storage options including drop box etc.
  3. You can blurr out your background. :)
  4. There are tonnes of app available.

#phildoesteams

Thursday 2 April 2020

Creating SharePoint Document Library folders with a specific Content Type and metadata

A script that demonstrates how to create lots of folders in a document library with a specific content type and metadata. This approach uses pnp.

#Folder script to provision yearly folders with specific content type and metadata.
#Note this will also update existing folders

#Connect to tenant
Connect-PnPOnline -url https://mytenant.sharepoint.com/sites/SiteCol -UseWebLogin
$years = @("2020","2019","2018","2017","2016","2015","2014","2013","2012","2011","2010") 

function Provision-YearlyFolders {
        Param($folderName)
        #Get folder
        $query = "<View><Query><Where><Eq><FieldRef Name='Title'/><Value Type='Text'>"+ $folderName +"</Value></Eq></Where></Query></View>"

        $folder = Get-PnPListItem -List incident -Query $query

         #Create folder if it doesnt exist
         if(!$folder) {
                 Add-PnPFolder -Name
                 $folderName -Folder incident
                 $folder = Get-PnPListItem -List incident -Query $query
         }
         #Update content type and set year order column
         Set-PnPListItem -List incident -Identity
         $folder.Id -ContentType "Yearly Folder" -Values @{"YearSortOrder" = $folderName}
         Write-Host "Provisioned" $folderName
}
#loop through yearly folders
foreach($year in $years)
{
    Provision-YearlyFolders $year
}

Monday 27 January 2020

Gulp sequence for creating a solution


Its probably a good idea to run these when doing a build.

gulp clean
gulp build --ship
gulp bundle --ship
gulp package-solution --ship

Tuesday 14 January 2020