Le Post Infeeny

Les articles des consultants et experts Infeeny

#SPC2012 : SharePoint 2013 Workflows : architecture and configuration

Session de 10h45 à 12h animée par Mauricio Ordonez

Petit résumé:

Intéressant, on voit clairement que les workflows sont plus puissants. Et SharePoint designer permet de faire de choses plus poussées.

Cependant, côté architecture, avec un serveur à part, c’est assez complexifié. Le prix à payer pour avoir des wf plus puissants j’imagine.

// slide : what’s new

Il ont mis l’accent sur :

  • aller plus loin avec SharePoint designer et les workflows déclaratifs
  • des wf prêts pour les cloud avec le nouvel app model (on prem ou cloud)
  • ne plus faire tourner les wf sur SharePoint afin de pouvoir gérer de gros volumes

 Les wf dans SharePoint :

  • liés aux people : tâches et notifications
  • liés aux contenus : documents et items et sites
  • liés à la logique métier : event driven, long running, déclaratifs

// démo : les nouveautés

Un site SharePoint avec une doc lib et des document dedans.

Il veut soumettre les document pour review. Un wf est déjà prêt.

Il ajoute un fichier, le wf se lance et créé un tache d’approbation au manager, le document est « ready for review ».

Il ouvre maintenant un nouveau navigateur et ouvre le my task du manager. La tâche apparait. (on voit ici l’intérêt de la page « my task » cela évite d’aller fouiller ses projets pour chercher la liste de tâches).

Il approuve la tâche.

Il revient à la vue de l’IW et voit le document approuvé.

Il ouvre SharePoint designer et montre le wf.

On peut créer des wf SharePoint 2010 ou SharePoint 2013, 2 modèles existent. Quand on créé un wf, un stage est créé par défaut.

On peut maintenant maitriser la transition entre les stages et faire un goto vers une autre étape et même faire un go back vers une étape précédente, applaudissements de la salle…

Il ajoute une tâche aux manager, on peut customiser de façon beaucoup plus poussée la tâche et l’email envoyé.

Autre nouveauté, on a une vue visuelle du wf dans SharePoint designer, applaudissements de la salle encore, y a des fans ! C est vrai que c’est sacrément plus sympa.

// architecture

Dans SharePoint 2010, people, content, sharing, event et wf étaient dans SharePoint. C’était le moteur classique.

Maintenant, on a un workflow manager qui fonctionne à part. C’est un serveur séparé. On a un service bus qui gère les communication entre SharePoint et wf manager.

Enfin, on a un wf service manager sur la ferme SharePoint (nouveau service application et service app proxy dans la centrale d’admin SharePoint). Ce service gère les communications avec le wf manager. Tout est géré par échanges de messages à travers le bus.

Il y a d’ailleurs déjà des apps type wf designers sur le store qui utilisent cette architecture (nintex, etc.).

Pour créer des wf custom : SharePoint designer et visual studio.

// démo : accès a des données externes

Il a une liste SharePoint qui montre la météo selon la ville.

Il ajoute une liste de villes et on voit qu’un wf appelle un webservice pour récupérer la météo et ensuite compléter les colonnes « météo » pour chaque ville. Pas mal.

Dans SharePoint designer, on a une nouvelle action « call » qui fait une méthode GET pour récupérer des données REST.

Il utilise ensuite « get item from dictionnary », pour lire le JSON et stocker les valeurs dans des variables SharePoint designer.

Ensuite il peuple les fields avec les valeurs recupérées.

Il va ensuite sur un stage waiting qui attend une heure.

Ce stage reboucle sur la mise a jour après 1h.

Pas mal non plus.

// on repasse à des slides 

Comme on a 2 serveurs, que se passe-t-il si on perd la connectivité?

On a un système de retry qui est fait pour et qui réessaie . Mais en tant que développeur, il faut y penser. Partie difficile à expliquer, les slides sont bien faits pour expliquer le flux des appels entre SharePoint et les wf, il faudra les récupérer!

// authorization

Pour SharePoint 2010, on pouvait faire tourner des wf en tant qu’initiateur ou publisher.

Pour SharePoint 2013, chaque apps a une identité propre et comme les wf sont des apps, chaque wf a une identité
propre. Par défaut, les permissions de l’utilisateur sont utilisées.

Démo : quand on va sur site settings > site app permission, on voit les apps et leurs droits.

Donc dans la liste où le wf tourne, le wf modifie les items et laisse ce type de trace « modified by workflow on behalf of john doe ». En gros, il récupère les droit de l’utilisateur qui fait l’action.

Par contre avec SharePoint designer, on peut ajouter un « app step » qui élève les droits. Il faut que la feature « wf can use app permission » soit activée. Dans ce cas, la trace est « modified by workflow ».

// SharePoint app hosting

Pour rappel, on a 3 types d’apps :

On a des :

– cloud hosted apps :

  • provider hosted app : bring your own server
  • autohosted : azure

– SharePoint hosted app : client side technologie

Démo :

Il a créé une app dans visual studio.

C’est une SharePoint hosted apps, il y a du html, js et un wf déclaratif.

Il fait la démo, pas clair du tout. Il faudra creuser dans notre coin.

// Topology

On peut faire un cluster de wf manager pour partager celui ci avec plusieurs fermes SharePoint. Un load balancer devra être mis avant le cluster.

Un wf manager client devra être installé sur chacun des serveurs SharePoint.

// Installation

Wf manager s’installe à part de SharePoint, il faut le télécharger à part.

Des commandes powershell sont a exécuter pour paramétrer le lien entre SharePoint et wf manager : Register-SPWorkflowService -SPSite xxx -WorkflowHostURl yyy.

Cela requiert du SSL en production.

Fabien

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s

%d blogueurs aiment cette page :