in

didierdanse.net

Site personnel de Didier Danse
Didier Danse's Personnal Website
Microsoft Most Valuable Professional SharePoint

didierdanse.net - Les news Developpement

December 2008 - Posts

  • SharePoint: Spécifier l'utilisateur utilisé dans l'historique d'un workflow

    Cette question m'est revenue plusieurs fois déjà. Ainsi, je prends quelques minutes pour mettre la réponse par écrit.

    Dans l'historique d'un workflow, vous retrouvez des valeurs "System Account" à chaque ligne.

    workflow_userid_ko

    Cette information est ainsi peu utile et il serait bien plus intéressant d'indiquer l'utilisateur qui a provoqué une action de laquelle résulte l'élément présent dans l'historique.

    Pour cela, voici rapidement la procédure:

    • Dans le code de votre workflow, si vous n'avez pas suivi l'un des différents articles du net, rajoutez la première ligne (afin de récupérer l'élément courant) du code ci-dessous en global ainsi que la seconde ligne (qui serait la variable dans laquelle on stocke l'ID du user courant de type entier) dans tous les cas:

    VB:

    Public workflowProperties As New Microsoft.SharePoint.Workflow.SPWorkflowActivationProperties ()
    Public CurrentUserId As Integer = -1

    C#:

    public Microsoft.SharePoint.Workflow.SPWorkflowActivationProperties workflowProperties = 
          new Microsoft.SharePoint.Workflow.SPWorkflowActivationProperties ();
    public int CurrentUserId = -1;
    
    
    • Si ce n'est déjà fait, ajoutez une activité Code avant l'activité LogToHistoryListActivity. Dans cette activité, ajoutez les lignes suivantes qui permettent de récupérer l'ID de l'utilisateur au sein de SharePoint:

    VB:

    CurrentUserId = workflowProperties.Item("Editor").ToString().Substring( _
           0, workflowProperties.Item("Editor").ToString().IndexOf(";#"))

    C#:

    CurrentUserId = workflowProperties.Item("Editor").ToString().Substring(
           0, workflowProperties.Item("Editor").ToString().IndexOf(";#"));

     

    • Les activités d'un Workflow sont constituées d'un ensemble de propriétés qu'il est possible (voire nécessaire) de spécifier. C'est également le cas pour la LogToHistoryListActivity. Au delà des propriétés explicites telles que HistoryDescription que vous avez certainement déjà remplis (sans quoi, il serait dur d'avoir des logs...), il existe la propriété UserId. C'est cette propriété qui indique l'utilisateur à afficher dans l'historique. Elle requiert une valeur entière qui correspond à ... vous l'aurez compris, la valeur que nous avons récupéré dans le point précédent. Ainsi, il ne reste plus qu'à cliquer sur le bouton "..." et de sélectionner la variable :

     

    userid_1

    userid_2

     userid_3

    • Dernière étape: déployez votre workflow et vérifiez! Désormais l'utilisateur affiché est bien le bon

    workflow_userid_ok

  • Le Service Pack 2 de Vista en beta, c'est pour cette semaine!

    Alors qu'il y a un an presque jour pour jour je vous annonçais la venue du SP1 de Vista, voici désormais le SP2 en beta!

    Comme pour son prédécesseur, il corrige certes quelques bugs, failles de sécurité et autres incohérences qui persisteraient après le SP1 mais il ajoute de nouvelles fonctionnalités / possibilités.

    Pour le télécharger, il vous faudra attendre le:

    • 2 décembre pour les abonnés MSDN et Technet;
    • 4 décembre en téléchargement publique sur MSDN et Technet.

    Les nouveautés les plus importantes de ce Service Pack:

    • Support de types d'hardware émergeants:
      • Support du Bluethoot 2.1;
      • Possibilité d'enregistrer des données sur des supports Blue-Ray;
      • ...;
    • Amélioration de l'administration;
    • Amélioration des performances:
      • Windows Search 4 qui améliore les performances d'indexation et améliore la qualité des résultats;
      • Diminution des ressources nécessaires pour les gadgets de la toolbar;
      • Hyper-V.

    Des améliorations concernant la compatibilité entre des logiciels tels que ZoneAlarm et Vista sont présentes. Par ailleurs, Microsoft annonce que toute application qu'il n'y aura pas de régression de la compatibilité lors du passage au SP2 (heureusement ceci dit...).

    On notera aussi qu'un outil pour nettoyer les fichiers devenus obsolètes après l'installation du SP2 est fourni.

    N'hésitez pas à poster vos feedbacks à ce sujet et n'oubliez pas, il s'agit d'une version beta, il n'est pas conseillé de l'installation pour une installation en "production".

More Posts
L'auteur du site ne peut être tenu responsable des dommages que les informations fournies pourraient entraîner. Tout est cependant mis en oeuvre pour éviter tout désagrément.
Powered by Community Server (Non-Commercial Edition), by Telligent Systems