Setup Matomo Analytics to SharePoint Online

Matomo is one of the best alternative (in terms of ease of implementation and basic features, not in terms of advanced features) in Europe for GDRP compliant analytics solution 🚀.

Matomo comes in two flavours :

  • Cloud Hosting (prices here – with commercial plugins included)
  • Self-Hosted with manuel installation (open source/free of licence cost – no commercial plugins included)

Once you have your Matomo environment ready, take the train :

Prerequisites

  1. Create your website in Matomo and get your « tracking site ID »
  2. Check your account have the right permission to add a solution to your Tenant App Catalog (if you deploy to your tenant app catalog => https://docs.microsoft.com/en-us/sharepoint/use-app-catalog) or in your Site collection App Catalog (if you deploy your tracking custom action to a site collection, or on a per site collection basis => https://docs.microsoft.com/en-us/sharepoint/dev/general-development/site-collection-app-catalog)
  3. Install Pnp PowerShell by following these steps : Installing PnP PowerShell | PnP PowerShell
  4. Download the addin and the setup script zip archive here (lastest is v1.1.0 now) : Releases · Microsoft SharePoint / SPFx / Matomo Analytics · GitLab (lsonline.fr). Feel freee to modify the source to add whatever features you need (ex : custom dimensions, …).

Add and setup the Matomo SPfx custom action

  1. Open a PowerShell console prompt
  2. Connect to your tenant with : Connect-PnPOnline -Url https://<your_tenant_name>.sharepoint.com -Interactive
    • Interactive parameter is for MFA authentication. If you don’t use MFA, omit this parameter
  3. Unzip the zip archive previously downloaded in the prerequisites
  4. Execute the following command at the root of the unzipped folder : .\setup.ps1 -siteUrl https://<your-tenant_name>.sharepoint.com -trackingUrl https://matomo.mydomain.com -trackingSiteId ‘<my_tracking_site_id>’ -tenantSolutionDeployment
    • In this case, I deployed on the entire tenant (all site collections). You can omit this parameter to deploy only on a site collection.
  5. Crack your favorite webbrowser, connect to your Matomo instance, your SharePoint is already recording user actions.

Happy analytics 👍😎

PnPJS 3.2.0 est sortie et liste des projets PnP recommandés

Ce n’est pas tout frais, mais ça valait le coup de s’arrêter quelques minutes dessus. Comme tout développeur SharePoint, la librairie PnPJS est l’une des pierres angiulaires de nos projets => pnp/pnpjs: Fluent JavaScript API for SharePoint and Microsoft Graph REST APIs (github.com)

C’est avec plaisir que la version 3.2.0 est sortie corrigeant quelques petites coquilles que j’avais pu voir lors de mes derniers projets, et apporte aussi quelques nouveautés qui nous faciliteront la vie pour la suite, je vous laisse consulter le CHANGELOG pour voir de quoi il en retourne spécifiquement.

Je vous partage aussi quelques uns des projets de PnP que je suis activement :

SharePoint maintenance mode to track webpart issue

As a SharePoint consultant, I often bump into issues with pages in SharePoint OnPrems and Online. To resolve these cases, we – SP consultants – need to deploy our super magic powers (what our clients think we have) 🙂

Most of the page, an error in a page is due to a bug in a webpart raising an exception, sometimes it’s a delegate control but this is another story for another blog post. Here is one magic trick to debug the pages and identify which webpart is running wrong.

SharePoint OnPrems / Classic

Starting from SP 2010, and for next version of OnPrems installation, just add ?contents=1 at the end of the page URL. This will open the page in maintenance mode and display all webparts in this page.

Modern SharePoint

Like a lots of developers I tried the old way and failed … thanks to this Microsoft support article, it gives you the right URL suffix to add to your URLs to enter the web part maintenance mode

In the address line of your browser, append ?maintenancemode=true to the end of the URL for the page. Checkout the Environment property in the mainten

You can find more documentation on these links ➡️ Maintenance mode for client-side web parts | Microsoft Docs and ➡️ Open and use the web part maintenance page (microsoft.com)

Bonus : how to disable SPFx web parts ans extensions

Ayt the end of this nice Microsoft article there is a golden tips ➡️ « If you need to troubleshoot a SharePoint page to see if there is a SharePoint Framework extension or web part causing issues you can append ?disable3PCode=1 to the URL to disable loading of SPFx components » that helped me a lot recently, so I share it to you.

Master piece : all useful SharePoint URLs

You can find every useful SharePoint URLs to save your life every day with SharePoint developement :Useful SharePoint URLs – SharePoint Stuff

SharePoint Framework 1.8 is out !

As the main development framework for SharePoint, the latest 1.8 version of the SharePoint Framework just become generally available with the following additions for developers :

  • SPFx development of Teams Tabs : Yeah !!!!
  • App Pages : Yeah !!!
  • Web parts in Isolated Domains
  • Library Components (preview)
  • Support for TypeScript 2.7, 2.9 and 3.x
  • Support for Section background styling on modern pages
  • Deprecating legacy Fabric CSS consumption

You can read all the additions on the release note located here.


Le premier Afterworks MS à Koné

La première édition des Afterworks MS en Province Nord se sont déroulés à Koné ce Lundi 07/08. Devant l’engouement des personnes présentes pour ce type d’événement, les Afterworks sur Koné devraient être réitérer avec un contenu plus spécifique (et moins dense) dans une prochaine édition.

Un grand merci à la CCI de Koné pour le prêt de la salle (et pour nous avoir attendu en fin de journée) et pour accompagner ces initiatives communautaires depuis maintenant plus d’un an.

Comme convenu, nous avons pu partager notre expérience et expertise des technologies Office 365, SharePoint 2016, Visual Studio & .NET, Docker et Windows Container.
Si vous avez des questions sur ces technologies, si vous souhaitez savoir comment nous les déployons chez nos clients ou dans nos sociétés, n’hésitez pas à nous contacter.

Speakers : Sylver Schorgen (SF2i) et Julien Chable (NC IT – MVP Office Server et Development)

Les slides des sessions sont disponibles ci-dessous :
• Office 365 : https://fr.slideshare.net/secret/16KvWXBVppVgUG
• Nano Server : https://fr.slideshare.net/…/prsentation-nano-server-ms-afte…
• SharePoint 2016 : https://fr.slideshare.net/…/prsentation-sharepoint-2016-786…
• Visual Studio et .NET Core : https://www.slideshare.net/…/visual-studio-2017-launch-keyn…
• Docker :
https://www.slideshare.net/…/introduction-devops-containari…
https://www.slideshare.net/…/lcosystme-docker-pour-les-dev-…

Image may contain: one or more people, people sitting, table, living room and indoor

SharePoint 2016 project templates missing on Visual Studio 2015

imageWhen you open Visual Studio 2015 (with Update 3) on a SharePoint 2016 developer machine, it may occurs that the SP 2016 templates are missing (it displays only SP 2010 and 2013 templates). In that case, don’t panic ! Just follow the following process :

  1. If you don’t have a version of Office Developer Tools for Visual Studio 2015, download “Microsoft Office Developer Tools Preview 2 for Visual Studio 2015” with the following link : https://www.microsoft.com/en-us/download/details.aspx?id=51683  (don’t go to aka.ms/officedevtoolsforvs2015 , the link is broken)
  2. Install the Microsoft Office Developer Tools Preview 2 for Visual Studio 2015 on your machine
  3. Open Control Panel > Programs > Programs and Features
  4. Uninstall SharePoint Client Components (with the version number 16.0.xxx)
  5. Download the SharePoint Server 2016 Client Components SDK from www.microsoft.com/en-us/download/details.aspx?id=51679
  6. Start developing your successful SharePoint Addins !

SharePoint 2016 en version finale (RTM)

Ce jour marque l’annonce de la version finale (RTM – Release To Manufacturing) de SharePoint Server 2016 et de Project Server 2016. Cette version que l’on attendait bien évidemment pour ses nombreuses améliorations aussi bien pour les utilisateurs que les IT devrait donc être disponible très bientôt (surveillance sur MSDN quotidienne dès demain !).

L’une des caractéristiques importantes de SP2016 est sa capacité d’hybride Cloud/On Premises que j’aurais le plaisir de tester dans les prochaines semaines afin d’agrémenter ce blog.

Sinon en quelques lignes pour rappel, SharePoint Server 2016 c’est aussi :

– Des limitations repoussées : des millions de documents par bibliothèque, un index de 500 millions d’éléments par serveur d’application de recherche, 100 000 collections de sites par bases de données (x20 par rapport à SP2013), des bases de contenu de plusieurs Tera (au lieu de 200 Go), des affichages de listes importantes moins contraignantes (> 5000 éléments), une taille de fichier max jusqu’à 10 Go, etc.

– Déploiement : installation de la ferme par rôle (MinRole), Patching avec 0 downtime (appliqer une mise à jour ou un fix ne fera plus tomber dramatiquement votre SLA), la création de collections de sites ultra rapide (1 seconde avec l’utilisation de modèle), DLP (Data Loss Protection) pour la sécurité des données, etc.

sharepoint-2016-minroles

– L’occasion de découvrir ou redécouvrir : OneDrive for Business, Office Graph et Delve dans SharePoint, des espaces de collaboration connectés à O365, le nouveau menu de lancement d’App (extensible …), SharePoint Insight pour mieux surveiller votre ferme, des transferts de fichiers optimaux avec BITS (fiabilité, économie bande passante, performance), les permaliens (le lien reste le même, que vous renommiez ou déplaciez votre document), etc.

– Une expérience “Mobile first” : HTML 5 et le Responsive sont partout dans SharePoint 2016 …

Vous connaissez déjà le programme du prochain Afterworks@Nouméa

SharePoint 2016 atteint la Release Candidate

imageC’est dans ce billet que l’équipe SharePoint annonce la mise à disposition de la Release Candidate de SharePoint 2016. La RC indique que les fonctionnalités n’évolueront plus pour cette version 2016 et que les partenaires peuvent démarrer leur phase de tests intensifs du produit en vue d’un déploiement de la plateforme ou d’une migration.

Pour rappel, l’une des principales caractéristiques de cette version 2016 est l’intégration en profondeur du mode hybride Cloud avec Office 365. Cela permettra aux entreprises de tirer le meilleur partie des services en ligne O365 tout en gardant leur environnement installé sur leurs serveurs pour leurs besoins.

Pour les testeurs, la bonne nouvelle est que la RC est une mise à jour et par conséquent que vos environnement Beta 2 pourront être mis à jour vers la RC sans avoir à tout réinstaller/configurer (je n’ai pas encore testé, nous verrons si cela est concluant).

Il est important de noter que SharePoint Designer 2013 est la dernière version du produit, il n’y aura pas de SharePoint Designer 2016 avec cette version de SharePoint. SharePoint Designer 2013 continue d’être supporter par SharePoint 2016 et Office 365. Tous les workflows créés avec SPD 2013 seront supportés par SharePoint 2016 jusqu’en 2026 (fin du support de SharePoint 2016).

Concernant le support d’Infopath Forms Services, dont la présence dans SharePoint 2016 était longtemps resté dans l’ombre quant à sa continuité au sein du produit, sera bien de la partie dans cette version (et la question se pose à nouveau pour la prochaine version), . L’hébergement de ce service est supporté jusqu’à la fin du suport SharePoint 2016. Le support dans Office 365 continue lui aussi. De la même façon que pour SharePoint Designer 2013, il n’y aura plus de nouvelle version d’Infopath, Infopath 2013 étant la dernière en date.

“SYSTEM.IO.FILENOTFOUNDEXCEPTION: COULD NOT LOAD FILE OR ASSEMBLY ‘MICROSOFT.SHAREPOINT.CLIENT. WORKFLOWSERVICES”

Vous lancez votre application ou solution SharePoint utilisant CSOM et Workflow Manager 1.0(WorkflowServicesManager, Workflow Definition), vous avez le message suivant qui s’affiche : “System.IO.FileNotFoundException: Could not load file or assembly ‘Microsoft.SharePoint.Client.WorkflowServices, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c’ or one of its dependencies. The system cannot find the file specified.”

Solution 1 (application seulement) :

Vous copiez les DLLs suivantes à la racine de votre applications (si c’est une solution SharePoint, cette solution n’est pas applicable) :

  • – Microsoft.SharePoint.Client.dll
  • – Microsoft.SharePoint.Client.Runtime.dll
  • – Microsoft.SharePoint.Client.WorkflowServices.dll

Solution 2 :

Si gacutil.exe n’est pas sur votre serveur de production/qualification, copiez depuis le répertoire de votre machine de développement “C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6 Tools” (ou d’un répertoire v8.0, v8.1A) les fichiers suivants :

– gacutil.exe
– gacutil.exe.config
– 1033\gacutlrc.dll

Ouvrez une console en tant qu’administrateur. Depuis l’emplacement où vous avez copier gacutil.exe (ou depuis n’importe quel emplacement si vous avez mis gacutil dans le PATH), saisissez :

gacutil -i “C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\ISAPI\Microsoft.SharePoint.Client.dll”

gacutil -i “C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\ISAPI\Microsoft.SharePoint.Client.Runtime.dll”

gacutil -i “C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\ISAPI\Microsoft.SharePoint.Client.WorkflowServices.dll”

Pour chaque commande, vous devriez avoir le message suivant : Assembly successfully added to the cache

Toutes les DLLs requises pour votre solution utilisant CSOM / Workflow Manager sont maintenant disponibles dans le GAC et votre solution devrait fonctionner.

Flux de travail SharePoint 2013 non disponible dans SharePoint Designer

Lors de la préparation de quelques démos en vue d’une présentation sur le développement de workflow avec SharePoint 2013, l’installation en standalone a tendance à créer un proxy d’application de service pour workflow non fonctionnel (en général c’est aussi le cas d’autres services…).

Par conséquent, si vous faites un tour dans SharePoint Designer 2013 et que vous essayez de créer un flux de travail, vous n’aurez que le choix du type ‘Flux de travail SharePoint 2010’, la version 2013 n’étant pas disponible :

post_workflow_spd2013 (1)

Il suffit d’aller dans l’administration centrale pour constater du non appareillage du service Workflow Manager avec votre ferme SharePoint 2013 (naviguez dans Gestion des applications > Gérer les services > Workflow Service) :

post_workflow_spd2013 (2)

Pour résoudre ce problème, il suffit de supprimer puis de recréer un proxy du service de Workflow. Néanmoins, si vous essayez de créer ce proxy depuis l’Administration Centrale, vous risquez de tourner en rond assez longtemps car le type de service n’est pas proposé par l’interface :

post_workflow_spd2013 (3)

Voici la procédure pour venir à bout de ce problème :

  1. Dans la fenêtre des services, supprimer le service ‘Workflow Service’
  2. Exécuter la ligne de commande PowerShell suivante dans une console SharePoint 2013 Management Shell : Register-SPWorkflowService –SPSite “http://devcontoso/” –WorkflowHostUri “https://devcontoso:12291″ –AllowOAuthHttp

Note : mon serveur Workflow Manager 1.0 (version Refresh nécessaire si vous êtes sur Windows Server 2012) est hébergé sur le même serveur que SharePoint 2013, j’autorise donc la communication http avec le paramètre –AllowOAuthHttp. Consulter la documentation technet pour d’autres types de topologies et protocoles : http://technet.microsoft.com/en-us/library/jj658588%28v=office.15%29.aspx

Remarque : si vous déjà enregsitré un scope « SharePoint » dans votre serveur Workflow Manager, un message d’erreur s’affiche. Dans ce cas, forcez l’enregistrement avec le paramètre -Force pour écraser l’ancien scope :

post_workflow_spd2013 (4)