À propos de KTNN

SharePoint à Montréal.

Nouveau Stream en 2022

Les premières étapes: https://ktnnsharepoint.wordpress.com/2021/05/03/nouveau-stream/

Finalement, c’est le 30 août 2021 que les enregistrements des réunions Teams sont déposés obligatoirement dans OneDrive ou SharePoint.

Ces pages ont été mises à jour avec les nouveautés: https://docs.microsoft.com/en-us/stream/streamnew/new-stream

Lien vers le nouveau Stream

https://stream.office.com/

https://www.office.com/launch/stream?auth=2

On peut ajouter ce lien dans les applications de la gaufre. Plusieurs options sont disponibles.

https://docs.microsoft.com/en-us/stream/streamnew/start

WebParts sur les pages SharePoint

En attendant, un nouveau WebPart, il est possible d’utiliser les WebParts File viewer ou Highlighted Content.

Microsoft Stream: Stream web app
https://www.microsoft.com/en-us/microsoft-365/roadmap?featureid=93294

Roadmap

https://www.microsoft.com/fr-ca/microsoft-365/roadmap?filters=Microsoft%20Stream#owRoadmapMainContent

Voici quelques nouveautés remarquables:

Microsoft Stream: Record a new video on the Stream Start page in Office
https://www.microsoft.com/en-us/microsoft-365/roadmap?featureid=88522

Microsoft Stream: Timeline markers in Teams meeting recordings for when you left or joined meetings
https://www.microsoft.com/en-us/microsoft-365/roadmap?featureid=93298

Microsoft Stream and SharePoint: Inline playback of videos in Hero web part
https://www.microsoft.com/en-us/microsoft-365/roadmap?featureid=93351

Exporter une liste vers Excel ou CSV

Il y a deux choix d’exportation:

Exporter dans un fichier CSV

À l’exportation, chaque colonne est séparée par une virgule. Pour que le contenu apparaisse séparé dans Excel, il faut que le séparateur de liste soit une virgule aussi.

Région > Paramètres supplémentaires

Notes: Choisir ‘Américain’ pour le ‘Système d’unité de mesure’ rend la règle en pouces dans Word.

Les caractères avec des accents ne sont pas convertis correctement. Donc il faut ouvrir le fichier dans le Bloc-notes puis enregistrer sous en format ANSI.

Ensuite, il faut ouvrir le fichier CSV dans Excel, puis l’enregistrer sous en format XLSX.

Il n’y a pas de connexion dans ce fichier. C’est-à-dire qu’il n’y aura pas de synchronisation entre le fichier Excel et la liste.

Exporter vers Excel

Lorsqu’on exporte vers Excel, il n’y a pas de problème de format.

Cela exporte vers un fichier query.iqy. Ce fichier contient une connexion.

Tout sur le partage (Share)

Je fais le point sur le partage dans M365.

D’abord, voici tout ce que j’ai écrit à ce sujet:

La documentation officielle se résume à:

https://docs.microsoft.com/en-us/sharepoint/turn-external-sharing-on-or-off#change-the-organization-level-external-sharing-setting

https://docs.microsoft.com/en-us/microsoft-365/admin/create-groups/manage-guest-access-in-groups

File Request https://support.microsoft.com/en-us/office/create-a-file-request-f54aa7f8-2589-4421-b351-d415fc3b83af

Share Files and Folders https://support.microsoft.com/en-gb/office/share-sharepoint-files-or-folders-1fe37332-0f9a-4719-970e-d2578da4941c

Set to Read Only and Remove permissions in SharePoint 2013 with PowerShell

After migrating a SharePoint 2013 site to Microsoft 365, we need to put all its content in read only so users don’t continue updating the content in the old site.

A few months later, it’s necessary to remove all permissions to ensure that all the links to the old site won’t work anymore (favorites and links in documents) and that users don’t refer to content that is obsolete.

# Remplace toutes les permissions par lecture dans tout le contenu (site, ses sous-sites, listes, dossiers, éléments) à chaque bris d'héritage

# inspiré de https://www.c5insight.com/Resources/Blog/tabid/148/entryid/729/use-powershell-to-set-permissions-on-all-sharepoint-libraries-folders-and-files.aspx

# à cause des accents, il faut convertir le format en ANSI
$systemlibs =@("Style Library", "Bibliothèque de styles", "Contenu réutilisable", "Rapports sur le contenu et la structure", "Tâches de flux de travail", "Images de la collection de sites")

function FixPerms($permissions) {
    $ReadRole = $web.RoleDefinitions["Read"]
    
    foreach ($assignment in $permissions) {
        
    #write-host $assignment.Member.Name $assignment.RoleDefinitionBindings.Name
    #write-host $assignment.Member.Name $assignment.RoleDefinitionBindings.Count

# Création d'un tableau qui contient toutes les permissions à supprimer
$TousRoles = New-Object System.Collections.ArrayList

foreach ($autorisation in $assignment.RoleDefinitionBindings) {
	#write-host $autorisation.Name
	if (($autorisation.Name -ne "Read") -and ($autorisation.Name -ne "Limited Access") -and ($autorisation.Name -ne "Restricted Read")) {

	#$TousRoles.Add($autorisation.Name)
	$TousRoles += $autorisation.Name

	}
}

foreach ($Role in $TousRoles) {

	$assignment.RoleDefinitionBindings.Remove($web.RoleDefinitions[$Role])

if (!$assignment.RoleDefinitionBindings.Name -match "Read") {
	$assignment.RoleDefinitionBindings.Add($ReadRole); 
}
	$assignment.Update()  
}
    }    
}
#End function Fix Perms------------------------------------

function ToutleContenu($siteweb){

foreach ($list in $siteweb.lists) {

if ($systemlibs -contains $list) {continue;}
if ($list.Hidden -eq $true) {continue;}

 if ($list.HasUniqueRoleAssignments -eq "True") {
        write-host "Need to fix list perms:" $list.Title -fore yellow
	$permissions = $list.RoleAssignments
	FixPerms($permissions)
    }

#le dossier AB922... se trouve dans la liste Microflux
foreach ($folder in $list.folders) {
        if (($folder.HasUniqueRoleAssignments -eq "True") -and ($folder.Name -ne "AB922B82-8406-4E49-B17B-9057BDF09503")) {            

            write-host " Need to fix folder perms:" $folder.Name -fore green
	$permissions = $folder.RoleAssignments
	FixPerms($permissions)
      
        }
    }

foreach ($item in $list.items) {
        if ($item.HasUniqueRoleAssignments -eq "True") {
            write-host "  Need to fix item perms:" $item.Name -fore darkyellow
	$permissions = $item.RoleAssignments
	FixPerms($permissions)
        }
    }
}

}
#---end function ToutleContenu

function TouslesSites($web) {

ForEach($subsite in $web.Webs) {
	
if($subsite.HasUniqueRoleAssignments -eq "True") { 
     write-host "Need to fix subsite perms:" $subsite.url -fore cyan
$permissions = $subsite.RoleAssignments
FixPerms($permissions)
ToutleContenu($subsite)
TouslesSites($subsite)
}

}

}
#---end function TouslesSites


$web = get-spweb "URL of the site"


if($web.HasUniqueRoleAssignments -eq "True") { 
	write-host "Need to fix site perms:" $web.url -fore cyan
$permissions = $web.RoleAssignments
FixPerms($permissions)
ToutleContenu($web)
}

#Commenter la ligne suivante si seulement le site principal doit être mis en lecture
#Pour tous les sous-sites
TouslesSites($web)

Only the function FixPerm needs to be changed to remove permissions.

function FixPerms($permissions) {
    $ReadRole = $web.RoleDefinitions["Read"]
    
    foreach ($assignment in $permissions) {
        
    #write-host $assignment.Member.Name $assignment.RoleDefinitionBindings.Name
    #write-host $assignment.Member.Name $assignment.RoleDefinitionBindings.Count

	$assignment.RoleDefinitionBindings.RemoveAll()
	$assignment.Update()  
}
  
}
#End function Fix Perms------------------------------------

Ref.

https://www.c5insight.com/Resources/Blog/tabid/148/entryid/729/use-powershell-to-set-permissions-on-all-sharepoint-libraries-folders-and-files.aspx

The Complete SharePoint 2013/2016 Site Collection Permission Report using PowerShell – SharePoint Diary

List properties (Microsoft.SharePoint.Client) | Microsoft Docs

about Logical Operators – PowerShell | Microsoft Docs

about Comparison Operators – PowerShell | Microsoft Docs

sharepoint-server Module | Microsoft Docs

Office préversions, versions préliminaires

Microsoft 365

Admin > Paramètres > Paramêtres de l’organisation > Profil de l’organisation > Préférences de publication

Teams Version préliminaire publique (public preview)

Admin Teams > Teams > Teams update policies > Global (Org-wide default)

‘Follow Office Preview’ dépend de ‘Office Current Channel (Preview)’.

https://docs.microsoft.com/en-us/microsoftteams/public-preview-doc-updates

Teams Version préliminaire pour développeur (Developper Preview)

https://docs.microsoft.com/en-us/microsoftteams/platform/resources/dev-preview/developer-preview-intro

Prérequis: Upload custom apps

Teams Admin > Teams apps > Setup policies > Upload custom apps = ON

Teams

Une fois que tous les paramètres sont sélectionnés correctement, chaque utilisateur peut activer les versions préliminaires.

https://support.microsoft.com/en-us/office/get-early-access-to-new-teams-features-a6e387fe-1cad-4f90-ad78-1a311c77b36d

Apps Update Channels

Admin > Paramètres > Paramètres de l’organisation > Office options d’installation

https://docs.microsoft.com/en-us/deployoffice/overview-update-channels

Approbations et leurs modèles dans Teams

https://support.microsoft.com/en-us/office/what-is-approvals-a9a01c95-e0bf-4d20-9ada-f7be3fc283d3

Création d’un modèle d’approbation dans Teams

Qui peut créer un modèle: un propriétaire d’équipe ou un administrateur M365. L’écran suivant n’est disponible que pour un administrateur M365.

Il faut être administrateur M365 pour créer une approbation de portée ‘Toute l’organisation’ ou ‘Personnes spécifiques’. Il faut être propriétaire d’équipe afin de créer un modèle dont la portée est une équipe Teams. Les administrateurs ne voient pas les approbations d’équipe dont ils ne sont pas propriétaires.

L’étendue (ou l’instance) d’une approbation peut être changé de ‘Toute l’organisation’ à ‘Personnes spécifiques’ ou vice versa.

À la création d’un modèle pour toute l’organisation (org-wide) la première fois, il faut approuver la création d’un groupe AAD de sécurité nommé ‘Approvals App Admin team’. Seul un administrateur M365 peut créer un modèle pour toute l’organisation.

Gérer un modèle (modification ou suppression)

Tous les propriétaires d’une équipe peuvent modifier ou supprimer les modèles de l’équipe.

Utiliser les modèles

Les modèles peuvent être utilisé à partir de:

  • L’application Approbation de Teams -> permet de choisir parmi les modèles d’entreprise, des équipe ou celui de base.
  • Une conversation privée -> permet de choisir parmi les modèles d’entreprise ou celui de base.
  • Une conversation d’équipe -> permet de choisir parmi les modèles de l’équipe ou celui de base.

https://docs.microsoft.com/en-us/microsoftteams/approval-admin

Customize People Card Microsoft 365

First let see what fields show automatically in the profile card.

The content of only those fields that are showing on the Profile Card can be found.

User documentation about Profile cards: https://support.microsoft.com/en-us/office/profile-cards-in-microsoft-365-e80f931f-5fc4-4a59-ba6e-c1e35a85b501

Customize the Profile Card

Le mode Beta a été lancé en mars 2020: https://techcommunity.microsoft.com/t5/microsoft-search-blog/new-profile-card-customization-through-microsoft-graph-beta/ba-p/1216517

https://docs.microsoft.com/en-us/graph/add-properties-profilecard

Microsoft 365 profile card customization using Microsoft Graph API | JiJi Technologies

Enrich Microsoft 365 profile card with extensions and custom attributes – JanBakker.tech

Customizing the Office 365 Profile Card with Graph Explorer – Office 365 for IT Pros (office365itpros.com)

Permissions needed: User.ReadWrite, User.ReadWrite.All

The custom attributes are in Exchange Properties: Admin Center > Users > Active users > Mail > Edit Exchange properties.

Other methods

Profile customization with AAD and Microsoft Graph connectors – Microsoft Tech Community

Person-Card component in the Microsoft Graph Toolkit – Microsoft Graph | Microsoft Docs

https://adoption.microsoft.com/extensibility-look-book/products/sharepoint/extensibility-profile-card-properties

Question: https://docs.microsoft.com/en-us/answers/questions/803076/graph-how-to-add-properties-on-profile-card.html

Search: https://www.youtube.com/watch?v=QdbLDEVpQGs&t=1s 20 min ‘People search results are not customizable yet.’ October 2021

This search link doesn’t allow to see the profile card with the custom properties https://energir.sharepoint.com/_layouts/15/search.aspx/contact

This search link shows the profile card with the custom properties https://www.office.com/search/people?auth=2

This search link allows to open the people card compared to the previous one https://energir.sharepoint.com/_layouts/15/search.aspx/people

Ideas

Microsoft Search

En décembre 2021, les règles de requête avec des résultats promus sont dépréciées pour les requêtes limitées à l’organisation au profit des réponses Bookmark et Q&A dans les expériences de recherche modernes.

https://docs.microsoft.com/en-ca/microsoftsearch/manage-bookmarks

https://docs.microsoft.com/en-ca/microsoftsearch/manage-qas

Custom Attribut AD

https://www.sharepointpals.com/post/customizing-the-profile-cards-using-microsoft-graph/

https://techcommunity.microsoft.com/t5/video-hub/moving-classic-sharepoint-search-to-microsoft-search/ba-p/1696798

Microsoft Roadmap à surveiller

Voici ce que je surveille dans le Roadmap de Microsoft.

Office app: Create Videos on Office mobile app
https://www.microsoft.com/en-us/microsoft-365/roadmap?featureid=82197

Microsoft Teams: Collaborate in Teams with Excel Live
https://www.microsoft.com/en-us/microsoft-365/roadmap?featureid=96099

Viva Engage
https://www.microsoft.com/en-us/microsoft-365/roadmap?featureid=93409
https://www.microsoft.com/en-us/microsoft-365/roadmap?featureid=93407

SharePoint: Microsoft Lists calendar view conditional formatting https://www.microsoft.com/en-us/microsoft-365/roadmap?featureid=93360

Microsoft Teams: Pairing the channel and the corresponding SharePoint folder name.: https://www.microsoft.com/en-us/microsoft-365/roadmap?featureid=72211

SharePoint Draft https://www.microsoft.com/en-us/microsoft-365/roadmap?featureid=85629

Outlook: New Options for RSVP responses https://www.microsoft.com/en-us/microsoft-365/roadmap?featureid=88535

Remplacé par 93326

Outlook working hours and location https://www.microsoft.com/en-us/microsoft-365/roadmap?featureid=88822

Microsoft Teams: Co-organizer Meeting Role https://www.microsoft.com/en-us/microsoft-365/roadmap?featureid=81391
https://prod.support.services.microsoft.com/en-us/office/add-co-organizers-to-a-meeting-in-teams-0de2c31c-8207-47ff-ae2a-fc1792d466e2

Outlook: Loop components in Mail https://www.microsoft.com/en-us/microsoft-365/roadmap?featureid=93234

Microsoft Planner: Recurring tasks https://www.microsoft.com/en-us/microsoft-365/roadmap?featureid=82028

Microsoft Forms: New Polling App « Polls » in Teams meeting and chat https://www.microsoft.com/en-us/microsoft-365/roadmap?featureid=84567

Whiteboard: External access in Teams meetings https://www.microsoft.com/en-us/microsoft-365/roadmap?filters=&searchterms=66759

Microsoft Teams: Video filters https://www.microsoft.com/en-us/microsoft-365/roadmap?filters=&searchterms=65944

Microsoft Teams: Collaborative Annotation on presenter shared screen https://www.microsoft.com/en-us/microsoft-365/roadmap?filters=&searchterms=86732

Autres:

https://www.microsoft.com/en-us/microsoft-365/roadmap?featureid=65643

Planner Roster https://docs.microsoft.com/en-us/office365/planner/access-planner-roster
https://office365itpros.com/2021/03/19/planner-roster-containers/
https://docs.microsoft.com/en-us/graph/api/planner-post-rosters?view=graph-rest-beta&tabs=http

LANCÉ

Teams Auto expiration des enregistrements : https://www.microsoft.com/en-us/microsoft-365/roadmap?featureid=84580

Microsoft Teams connect https://www.microsoft.com/en-us/microsoft-365/roadmap?featureid=70766

Supprimer les tâches Planner par Power Automate

On peut ajouter un maximum de 9000 tâches par plan. https://docs.microsoft.com/en-us/office365/planner/planner-limits

Cependant, lorsqu’il y a plusieurs milliers de tâches terminées, on perçoit des lenteurs d’affichage. Par conséquent, il sera pertinent de supprimer les tâches les plus anciennes.

Pour supprimer toutes les tâches:

Pour supprimer les tâches dont la date d’échéance est inférieur à une date:

Pour supprimer les tâches dont la date d’échéance est inférieur à aujourd’hui:

Pour supprimer les tâches dont la date d’échéance est inférieur à un mois:

addDays(formatDateTime(utcNow(),’yyyy-MM-dd’), -30, ‘yyyy-MM-dd’)

Attention la date dans la condition ne peut pas être vide. Une erreur survient si une tâche ne possède pas de date d’échéance dans notre exemple.

Au lieu d’appliquer la condition sur la date d’échéance, voici d’autres options de date:

Pour supprimer les tâches dont la date d’achèvement est inférieur à…