Reading Time: 7 minutes
Introduction
Nous avions tous à une certaines époque des fermes SharePoint on-premise avec des flux de travail pour modéliser nos processus business d’approbation, de partage de document…
Ces processus étaient souvent construit en utilisant le bon vieux SharePoint Designer qui permettait de construire nos flux et les publier sur notre plateforme. Aujourd’hui le Cloud est la et un nouveau service est à notre disposition: Power Automate.
Le but de cet article est de vous guider dans la manière de gérer et planifier la migration de flux SharePoint 2010 ou 2013 dans Power Automate.
Les flux SharePoint 2010 & 2013
Commençons déjà par expliquer le fonctionnement des flux de travail SharePoint 2010 & 2013 afin de bien comprendre la différence avec Power Automate. Si vous maitrisez déjà cet aspect, vous pouvez passer au chapitre suivant.
Les flux SharePoint 2010 étaient publiés sur la plateforme SharePoint Server et exécutés par le runtime SharePoint flux de travail. Les flux SharePoint 2010 ne sont plus supportés par Office 365 depuis Novembre 2020 (SharePoint 2010 workflow retirement – Office Support (microsoft.com) )
Les flux SharePoint 2013 étaient publiés sur la plateforme SharePoint Server et executés dans un processus dédié pour les flux de travail. Ces workflows ne sont plus supporté depuis Novembre 2020 sauf pour ceux qui ont été migrés sur O365 qui sont eux maintenus jusque janvier 2023.
Comme vous l’aurez compris ces 2 types de workflows sont vraiment dépendants de la plateforme SharePoint et nous avions à disposition des outils comme SharePoint 2010/2013 Designer pour développer ces workflows.
SharePoint Designer 2010
Un des points important à souligner également est que sur ce type de workflow, étant executé sur des fermes on-premise nous avions la possibilité de développer des custom activities et les déployer sur notre ferme. Des custom activities ne sont rien de plus que des actions de workflow que vous pouviez développer via une solution visual studio et ensuite déployer sur votre ferme afin de pouvoir les utiliser dans vos workflows. Bien évidemment, ce genre ne choses n’est possible que sur des fermes on-premise.
Et Power Automate alors ? c’est quoi la différence ?
power automate logo
Power Automate est un moteur de workflow totalement indépendant qui fait partie du service PowerPlateform dans Office 365.
Ce service n’est disponible que dans le cloud mais permet d’interagir avec des systèmes on-premise par le biais de solution comme la Data Gateway.
L’avantage de cette solution c’est que vu qu’elle est totalement indépendante, elle vous permet de construire des workflows pour pas mal d’application y compris sans interaction avec SharePoint. Contrairement aux flux de travail SharePoint qui eux ce limitait à des déclenchement à partir de données sur cette plateforme, power automate lui est capable de se déclencher à la reception d’un email dans une boite exchange par exemple.
Cette solution permet donc la modélisation de processus bien plus élargie que ce que nous connaissions avec SharePoint.
L’inconvénient est que cette différence ne permet pas de migrer de manière automatique les workflow SharePoint vers powerautomate. On parle alors plus de réécriture.
Réécriture dans Power Automate
Vous avez encore des workflow 2010 ou 2013 ? je vous conseil vivement donc de passer à la solution power automate si vous planifiez une migration O365 ou si vous êtes déjà sur O365. Si un partenaire dans le cadre d’un nouveau projet vous conseil le développement d’un workflow SharePoint 2013… c’est une erreur! Vous partirez déjà avec une dette technique et une deadline déjà communiquée par Microsoft sur le support de ces workflows.
Vu que nous parlons ici plus de réécriture que de migration, voici les quelques étapes que je considère nécessaire pour que cela se passe bien. Bien évidemment ce n’est pas exhaustif! Chaque projet/contexte est différent et particulier et donc nécessitera peut être des étapes supplémentaires.
Les pré-requis
Avant de faire du power automate, il faut avoir connaissance des pré-requis.
Des licences Power Automate Avoir migré son site dans Office 365 ou installer une datagateway avec une version de SharePoint supportant le modèle Hybride Quelques connaissance sur power automate et son fonctionnement. Un compte de service propriétaire des flux et des connexions
L’inventaire
Tant qu’a réécrire des workflows, c’est le bon moment aussi pour se poser les bonnes questions:
Mon workflow est-il toujours utilisé/nécessaire? Mon workflow est-il toujours en phase avec mon processus business? Mon workflow peut-il être amélioré par des tâches faisable dans powerautomate ?
L’idée est de dresser un inventaire de vos workflows en identifiant les informations suivantes:
Type de trigger Listes dépendantes Colonnes dépendantes Tâches Usage de custom activities ? Dépendance avec une solution de ferme?
Une fois que vous avez l’ensemble de ces informations et que vous en avez profiter pour vous poser les bonnes questions sur vos workflows, vous pourrez ainsi définir votre périmètre de réécriture précis.
L’inventaire peut être sous le format qui vous convient le mieux, pour ma part, j’opte généralement pour un bon vieux fichier excel avec une sheet par workflow afin d’avoir un inventaire clair et complet.
L’optimisation
Power Automate offre d’autres possibilités que les workflow SharePoint. Cela peut vous permettre notamment de répondre à un besoin qui n’était pas faisable en standard ou nécessitait le développement d’une custom activities.
C’est le moment de prendre le périmètre de réécriture et de chercher à optimiser/améliorer vos workflows.
Tout d’abord, concentrez vous sur les custom activities dont nous savons déjà que nous pourrons pas les récupérer. Identifiez ce que fait votre custom activities et intégrez cela à votre workflow. De quel manière je procède personnellement? Pendant l’inventaire, je fais un schéma draw.io me permettant de répertorier toutes les tâches de mon workflow, si je trouve des custom activities, jâintègre des actions power automate remplaçante à la place.
Exemple: Votre custom activities effectue un appel API et fait une mise à jour d’un élément dans SharePoint. ça tombe bien, une action powerautomate vous permet de faire un appel API. Remplacez donc cette custom activities par les étapes power automate qui vous permettrons de reproduire le flux d’origine.
Ensuite, on va rechercher l’optimisation. En effet, power automate permettant de faire pas mal de chose par le biais des conditions, contrôles et actions vous trouverez surement des améliorations à effectuer à votre workflow.
Personnellement je ne fais pas de travail en amont pour cette partie. Généralement je le fais au moment de la réécriture. Néanmoins si besoin, vous pouvez reprendre votre schéma et la liste des tâches power automate disponibles afin d’identifier des améliorations possibles et le prévoir dans votre réécriture.
La réécriture
Passons maintenant à la réécriture, pour cela il vous faut votre inventaire et vos schémas, si besoin vous pouvez garder SharePoint Designer ouvert avec les anciens workflow si ça peut vous aider. Normalement l’inventaire devrait suffire si vous avez mis l’ensemble des informations importantes dans celui ci.
Il vous suffit ensuite d’ouvrir power automate et de reproduire votre workflow, si ce dernier doit interagir avec des systèmes externes comme SharePoint, Exchange ou autre les tâches à disposition effectuerons la création de connecteur. Les connecteurs vous permettent d’avoir une meilleurs expérience power user lors de la construction de votre flux power automate. En effet, les connecteurs vous présente un panel de configuration et d’option adaptées pour la solution cible, derrière cela il ne s’agit que des appels à une API…
Attention, les connecteurs se configurent de basent avec votre identité utilisateur, veillez donc à bien disposer des droits.
Une fois votre flux réécrit, veillez à ne pas avoir d’erreur via le flux checker et effectuez un test via la fonction de test. (je ne vais pas m’étendre ici sur le fonctionnement de power automate, je ferais un article sur le sujet ultérieurement).
Une fois testé enregistrez le et validez le bon fonctionnement avec des utilisateurs.
Vue Power Automate
La configuration
Comme indiqué dans le chapitre précédent, si vous avez utilisé votre compte pour les connecteurs utilisé de votre flux, cela va poser un problème. Mais pourquoi?
Imaginons, votre compte est désactivé ou supprimé. Le flux utilisent votre compte pour les différents connecteurs qu’il utilise mais pire, vous êtes le seul propriétaire du flux! (Bon ok les admin O365 y ont accès mais imaginons qu’ils sont en vacance 🙂 ), Votre flux va tout simplement tomber en erreur ce qui est tout à fait logique.
Mais alors, c’est quoi la bonne pratique?
Pour ma part, je vous conseil un compte de service pour lâexécution de vos flux.
Assignez les droits au site SharePoint ou autre à votre compte de service, puis définissez votre compte de service comme propriétaire du flux par la même occasion. Si besoin, changez les connexions de vos connecteurs pour utiliser l’identité du compte de service.
Panel settings d’une action
La supervision & le monitoring
De base si votre flux est en échec, les propriétaires reçoivent un mail pour prévenir de lâéchec en mentionnant le nombre dâoccurrence.
La power plateforme vous permet également d’avoir quelques dashboard au format Power BI des executions, du statut etc…
Flow analytic dashboard
Vous pouvez au sein de powerautomate, consulter l’historique des executions mais aussi pour chaque execution consulter l’historique des tâches exécutées afin que si un échec est survenu, comprendre pourquoi, sur quelle tâche et avec quelles données en entrée et l’erreur retournée.
Il n’existe à ce jour malheureusement pas d’intégration avec Application Insight comme nous pouvons l’avoir avec les PowerApps, néanmoins les données de vos flux sont consultables via API et donc on peut imaginer intégrer votre outil de supervision préférer afin dâexécuter un PowerShell pour récupérer le statut des executions et provoquer une alerte si il y a des échecs.
La gouvernance
De manière générale, power automate & power apps sont des services cloud qui peuvent vite se transformer en Shadow IT. En effet, des power user qui auraient des droits pourrais très vite fabriquer des flux ou des apps indispensables au sein du SI sans que cela soit visible ou répertorié. Souvenez vous de la bonne époque des applications access indispensables au business…
Pour ce faire, Microsoft à mis à disposition un Kit COE: Kit Center of Excellence Microsoft Power Platform – Power Platform | Microsoft Docs
Je vous conseil grandement de le mettre en place au sein de votre organisation si vous comptez utiliser la powerplateform. Ce kit est composé d’une combinaisons de flux, apps et rapports vous permettant d’avoir une vision complète sur l’utilisation de la powerplateform au sein de votre tenant. Ce kit est bien évidemment customizable et peut donc être adapté en fonction de vos besoins. Je reviendrais sur ce sujet dans le cadre d’un autre article sur la mise en place de ce kit.
Conclusion
Power Automate est un composant formidable sur lequel il faudra investir rapidement surtout pour les entreprises disposants de flux SharePoint. Mais attention à l’opacité de la powerplateform de base! Voici ma manière d’aborder une réécriture de flux et comme spécifié, la manière d’aborder un problème dépend de la complexité et de son contexte, j’espère néanmoins vous donner des bases pour préparer vos réécriture au mieux 🙂
J’aime ça : J’aime chargement…
Articles similaires
juin 2, 2014 @ 4:33 pm
merci
juin 17, 2014 @ 11:42 am
Bonjour,
Documentation claire, mise en Åuvre simple… mais … il y a 2 mais….
1- quand je vais dans « gérer le catalogue d’applications/Afficher les paramètres du site » (ou un clic sur l’URL) , je reçois un « Dites pourquoi vous voulez accéder… »
2- Dans « ajouter une application / Sharepoint Store » j’obtiens « Désolé… Ce site ne prend pas en charge les applications, mais vous pouvez en acquérir et les ajouter sur dâautres sites »
Probablement un problème de compréhension du fonctionnement du SharePoint App ?
Merci de vos réponses
juin 21, 2014 @ 1:46 pm
Bonjour à vous,
Oui, vous avez surement loupé une étape.
Votre premiére erreur est un probléme de droit. il faut bien evidemment faire toute la configuration avec le compte de ferme.
Le 2 éme message veut tout simplement dire que la configuration n’a pas été effectuée correctement et tant que celle ci n’est pas faites vous ne pourrez pas utiliser le SharePoint App Store.
Je vous conseil de vérifier donc le compte que vous utiliser et les authorisations dessus puis de renouveller la configuration.
Normalement vous ne devriez pas avoir de problémes en tout cas vous êtes la premiére personne à en avoir avec ce tuto.
Bon courage,
Valentin
novembre 12, 2014 @ 10:19 am
Bonjour, j’ai juste une question bête : Qu’est que le « compte de ferme » recquis dans les cmd pwershell ???
Le (get_spfarm).id ou .name ne va pas…
Merci d’avance.
novembre 12, 2014 @ 12:47 pm
J’ai pu créer et activer tout ce qu’il faut, mais avec un nouveau compte de ferme…
Je n’en avais pas à priori…
J’ai pu téléchargé une appli, et elle est bien dans le catalogue. malheureusement je ne la voit pas dans mon site d’application et ne voit pas comment l’ajouter sur un sous site existant…
novembre 12, 2014 @ 1:38 pm
Bonjour à vous,
Normalement pour installer SP vous devez obligatoirement avoir un compte de ferme.
Si vous voulez ajouter une application à un site existant, il suffit d’acceder à votre site d’aller en haut a droite connecté sous un compte admin sur l’icone pour les paramétres, puis ajouter une application. selectionner l’application soit dans votre catalogue ou soit directement via le store et de faire ajouter sur l’application.
Elle apparaitra ainsi dans « contenu du site » et suivant les applications vous pouvez avoir d’autres contenus comme des webparts par exemple.
Krgds,
Valentin
juin 3, 2015 @ 8:37 am
bonjour,
tout d’abord merci pour ce tuto.
je pense avoir tout ce qu’il faut.
1)DNS semble OK car je ping bien apps-dfgqdfqsdfqsdf.mondomaine.fr
2)installation de SP en standalone donc pas de compte ferme mais j’en ai rajouté un, puis j’ai ajouter les services avec le powershell et je n’ai pas eu de message d’erreur et après vérification les 2 services sont bien lÃ
3)j’ai suivi le reste du tuto pour l’URL
mais lorsque je veux rajouter une application à partir du SharePoint Store j’ai le message d’erreur :
Désolé… Il semble que nous ne puissions pas nous connecter à SharePoint Store. Veuillez réessayer dans quelques instants.
une piste ?
juin 9, 2015 @ 11:17 pm
Bonjour à vous,
Malheureusement sans détails je ne peux pas vous aider.
Le tuto est plutot pour la config final des infra mais ça devrait fonctionner aussi sur un standalone.
Pouvez vous isoler la partie de log qui correspond à l’erreur du store ?
Vous devriez trouver ça dans l’ULS.
Avec quelque logs je devrais pouvoir vous aider avec plaisir 🙂
Bien à vous,
Valentin
juin 10, 2015 @ 8:40 am
bonjour, merci pour votre retour. Voici les logs:
Getting Error Message for Exception Microsoft.SharePoint.SPException: Désolé… Il semble que nous ne puissions pas nous connecter à SharePoint Store. Veuillez réessayer dans quelques instants. à Microsoft.SharePoint.Marketplace.OfficeProxy.OfficeProxy.GetConfigProperties(Dictionary`2& configProperties) à Microsoft.SharePoint.Marketplace.OfficeProxy.OfficeServiceUrls.Init() à Microsoft.SharePoint.Marketplace.OfficeProxy.OfficeServiceUrls.GetUrlFromProperty(String key) à Microsoft.SharePoint.Marketplace.OfficeProxy.OfficeProxy.MakeRequestMarkets(String userIp) à Microsoft.SharePoint.Marketplace.OfficeProxy.OfficeProxy.GetMarkets(String userDefaultBillingMarket, String userDefaultContentMarket, String userIP, List`1& markets, Boolean& validDefault) à Microsoft.SharePoint.ApplicationPages.StorefrontBase.GetOfficeMarkets(HttpRequest request, List`1& markets, Boolean& validDefaults) à Microsoft.SharePoint.ApplicationPages.StorefrontBase.TaskGetOfficeMarkets() à Microsoft.SharePoint.ApplicationPages.StorefrontBase.TryRunTask(TryGetOutput taskMethod)
An exception was thrown while running task ‘GetOfficeMarkets’. Microsoft.SharePoint.SPException: Désolé… Il semble que nous ne puissions pas nous connecter à SharePoint Store. Veuillez réessayer dans quelques instants. à Microsoft.SharePoint.Marketplace.OfficeProxy.OfficeProxy.GetConfigProperties(Dictionary`2& configProperties) à Microsoft.SharePoint.Marketplace.OfficeProxy.OfficeServiceUrls.Init() à Microsoft.SharePoint.Marketplace.OfficeProxy.OfficeServiceUrls.GetUrlFromProperty(String key) à Microsoft.SharePoint.Marketplace.OfficeProxy.OfficeProxy.MakeRequestMarkets(String userIp) à Microsoft.SharePoint.Marketplace.OfficeProxy.OfficeProxy.GetMarkets(String userDefaultBillingMarket, String userDefaultContentMarket, String userIP, List`1& markets, Boolean& validDefault) à Microsoft.SharePoint.ApplicationPages.StorefrontBase.GetOfficeMarkets(HttpRequest request, List`1& markets, Boolean& validDefaults) à Microsoft.SharePoint.ApplicationPages.StorefrontBase.TaskGetOfficeMarkets() à Microsoft.SharePoint.ApplicationPages.StorefrontBase.TryRunTask(TryGetOutput taskMethod)
J’arrive bien à me connecter au Store avec IE https://store.office.com/appshome.aspx?productgroup=SharePoint
juin 17, 2015 @ 3:26 pm
bonjour et bonne nouvelle, j’ai réinstallé mon SharePoint 2013 sur un autre serveur virtuel et là miracle j’ai accès à Sharepoint App Store. Donc aucune explication sur le pb précédent car j’ai fait la même install.
Maintenant j’ai pu installé une application sur mapage et je la visualise bien mais si un autre utilisateur se connecte sur cette page il n’a pas accès à l’appli car ça demande un identifiant et password, malgré que j’ai un contrôle total sur mon site.
une piste ?
juin 17, 2015 @ 3:36 pm
Bonjour à vous,
Effectivement bonne nouvelle, justement j’ai essayé de reproduire votre probléme mais sans succès.
Vous avez créé un App Catalog?
As t il les autorisations dessus ?
N’oubliez pas de ne pas utiliser le compte de ferme pour l’app store, le compte de ferme n’a pas les droits de télécharger des App!
Les pistes donc,
– vérifier les autorisations à la fois sur le App Catalog et le site ou vous souhaitez ajouter l’app
– Utiliser un compte utilisateur classique autre que le compte de ferme.
– Vérifiez également que votre alternate access mapping est ok dans l’admin centrale car ça peut venir d’un probléme d’authentification intégré windows ou alors d’un probléme sur le Secure Token Service qui ne réutilise pas le token de votre site.
Quelques infos officielles au besoin: http://blogs.technet.com/b/mspfe/archive/2013/01/31/configuring-sharepoint-on-premise-deployments-for-apps.aspx
Bien à vous,
Valentin
juin 17, 2015 @ 3:59 pm
oui j’ai créé un App Catalog et le compte de ferme a bien les autorisations dessus.
J’ai vérifié les autorisations sur le site et je les ai bien puisque j’ai pu rajouter une app.
J’ai avancé sur le diag puisque si je vais sur un autre PC avec un autre login j’affiche bien l’appli après avoir saisi mon password donc c’était parce que je faisais l’essai à partir du compte de ferme.
Maintenant pourquoi suis-je obligé de saisir ce password à chaque fois ? sauf si je met le site http//*.monnomdedomaine.fr (qui correspond à l’url « Domaine dâapplication » lié au « Préfixe d’application ») dans les sites de confiance de IE et en cochant « Connexion automatique avec le nom d’utilisateur et le mot de passe » dans les sécurités IE ?
dans tous les cas merci pour le coup de main
juin 17, 2015 @ 4:28 pm
Ah oui effectivement avec le compte de ferme ça ne fonctionnera pas ^^
Concernant l’authentification, il faut que les web app soit configuré en claim pour afin un SSO like
https://msdn.microsoft.com/en-us/library/ff359102.aspx?f=255&MSPPError=-2147217396
juin 24, 2015 @ 1:30 pm
comportement vraiment bizarre ce Store SP2013
je pensais avoir résolu le pb puisque ça fonctionnait et comme j’ai fait plein d’essais sur mon site j’ai voulu refaire complètement ma machine virtuelle donc j’ai tout recommencé, réinstalle de Windows 2012 puis de Sharepoint 2013 et le store ne fonctionne plus, pourtant je pense avoir fait comme lorsque ça a fonctionné, j’ai vérifié un peu tout, rien à faire
â vérifier les autorisations à la fois sur le App Catalog et le site ou vous souhaitez ajouter lâapp
â Utiliser un compte utilisateur classique autre que le compte de ferme.
â Vérifiez également que votre alternate access mapping
juin 24, 2015 @ 3:09 pm
Bonjour à vous,
Oui généralement quand il est configuré il ne faut pas y toucher 🙂 d’ou l’interet d’avoir fait ce blog post car beaucoup de problémes de configuration…
Pouvez vous regarder dans les logs ULS Ã la recherche d’une erreur qui pourrait donner une piste de recherche ?
Bien à vous,
Valentin
juin 24, 2015 @ 3:29 pm
si vous voulez bien, je peux vous envoyer les logs (une trentaine de ligne) du moment où j’ai l’erreur, si vous me donner une adresse mail
sinon une question pour se connecter au Store, SP a-t-il besoin de mon identifiant de mon compte Microsoft car mon SP est un intranet donc connexion avec un compte de domaine ?
juin 24, 2015 @ 4:22 pm
Je vous communique mon mail sur le votre.
Concernant SP Store à savoir.
Il faut effectivement un compte Microsoft (certaines applications sont payantes donc ce compte permet d’acheter des applications et d’associer les licences applicatives à ce compte.Si elles sont gratuite même principe une licence est décernée malgres la gratuité de l’application).
Vous avez forcement besoin d’une connexion internet sinon le store fonctionnera pas.
Derniére chose, pas besoin de compte microsoft si vous ajoutez une application interne à votre société via le AppCatalog.
février 19, 2019 @ 5:31 pm
Bonjour,
J’ai créé une page « tracking » de différents sujets en I-Share mais la visualisation de dashboard n’est pas facile. Du coup, j’ai besoin de changer la largeur de colonnes et je ne sais pas comment faire. Pourriez-vous m’aider svp?
Merci d’avance.
avril 21, 2019 @ 5:52 am
Bonjour,
Sharepoint est un ECM pas un outil de BI, je vous conseil de vous orienter sur des solutions comme powerBI que vous pouvez intégrer à sharepoint afin d’effectuer vos dashboard.
Cdt,