Gael's profileGael Duhamel - SharePoin...PhotosBlogListsMore Tools Help

Blog


    January 25

    [Windows Workflow Foundation] Pourquoi mes événements OnWorkflowItemChanged et OnWorkflowItemDeleted ne s'exécute pas...

    Bon tout d'abord, je suis assez nouveau sur les workflows (ce qui explique mes nombreux billets ces derniers jours) et donc, ce billet va peut être faire rigoler les plus aguerris d'entre vous Embarrassed. Mais bon, j'ai quand même "séché" dessus pendant 4 heures et je n'ai rien trouvé sur le net...  Disappointed

    Je m'explique... Mon workflow est en fait une simple succession de taches à approuver par différentes personnes. Celui-ci s'exécutant sur la base d'une liste dans SharePoint. Ces données étant particulièrement sensible, je dois appliquer une sécurité à l'utilisateur sur chaque nouvel item créé.

    Mes événements de création (invocation du workflow, création de la tache) se passent sans problème au contraire de mes événements « OnWorkflowItemChanged » et « OnWorkflowItemDeleted » qui ne s’exécutaient pas. J’ai donc d’abord :

    • Vérifié la cohérence de mes «correlation  token » :
      • OK : chaque tache a sa propre corrélation (events + tache) et mon workflow à lui aussi sa propre corrélation. Nerd
    • Forcé l’exécution de l’événement en implémentant une interface :
      • Ça n’a rien changé… Sad
    • Mis mes événements dans un « state activity » propre :
      • C’est plus joli en mode design, mais ca n’a pas apporté d’eau à mon moulin… Baring teeth
    • Traqué les logs de SharePoint et de Windows (via l’event viewer) :
      • Ça ne génère aucune erreur, j’ai donc juste chopé un mal de crane à décortiquer les logs de SharePoint. Sleepy
    • Vérifié que le workflow de ma liste était configuré pour accepter l’exécution du workflow en mode édition :
      • C’était fait, ce n’était donc pas la cause de mon problème. Disappointed

    Mine de rien ca m’a quand même pris 2 heures… J’ai ensuite tenté de rechercher mon problème sur Google, MSDN, Technet… Sans aucun résultat probant… Confused

    Et puis à force de bidouiller mon code, je me suis dis : « Et si c’était un problème de sécurité », puisque comme je le disais plus haut, devant l’exigence de sécurité j’ai du appliquer la sécurité sur l’item à l’utilisateur près. Ce qui fait que mon compte administrateur en était exclu (pour ceux qui ne le savent pas votre workflow s’exécute avec le compte du pool d’application de votre site web SharePoint). Ce qui ne me choque pas, puisque même si il n’est pas assigne il a tous les droits me suis-je dis… Par acquis de conscience, j’ai ajouté mon administrateur à mon item et... miracle mes événements se sont réveillés comme par magie !!!

    Conclusion, ne pas avoir de certitudes toute faite… Peut maintenant aller me coucher l’esprit apaisé. Hot

    January 23

    [Internet Explorer] IE Developer Toolbar

    Un add-in très pratique et super simple a utiliser lorsque l'on souhaite travailler sur l'intégration de pages HTML est disponible sur le site de Microsoft. Il s'agit d'une toolbar pour developer multimedia : IE Developer Toolbar

    Entres autres choses, vous pouvez:

    • Explorer en DOM votre page;
    • Visualiser des parties de votre code HTML avec le style associé (et ça s'est super sympa quand on bosse sur du design d'un site SharePoint);
    • Utiliser la règle pour mesurer vos objets;
    • Récupérer la couleur d'un élément;
    • Et plein d'autres choses que je vous laisse découvrir...

    DeveloperToolbar

    January 22

    [InfoPath - Forms Service] Récuperer l'utilisateur connecté sans une ligne de code

    Et oui c'est possible Open-mouthed
     
    Merci donc a Itay Shakury pour ce billet des plus interessants.

    [InfoPath2007] Version imprimable de votre formulaire

    Petit appel a la communauté travaillant sur InfoPath 2007... J'ai créé une version imprimable de mon formulaire principal, fais l'association dans les options. Lorsque je lance mon Design Checker, j'obtiens ce message d'erreur:

    PrintView

    Pourtant, après 1000 vérifications (si si j'ai compté Nerd) toutes mes données sont bien liées... J'ai quand même fais le test de vérification/import via mon Forms Services et la surprise pas d'erreurs de remontées... Et mon formulaire fonctionne parfaitement en mode saisie et impression... Étrange non? S'agit-il d'un bug lié a InfoPath 2007? J'ai eu beau cherché sur différents moteurs de recherche, je n'ai rien trouvé a ce sujet... Si quelqu'un a une réponse... Eye-rolling

    January 21

    [Wishes from Dublin] Meilleurs vœux pour cette nouvelle année!

    Meilleurs vœux et bonne année à vous tous!!! En espérant que celle-ci vous apporte joie, bonheur, prospérité et bien d'autres choses encore.
    Pour moi cette nouvelle année est un nouveau challenge, j’ai quitté Altima pour rejoindre une société Irlandaise : PM Centrix. Fini (mais pas adieu) donc Commerce Server 2007, les bars de Lille (avec ses 350 bières), le stadium Lille Métropole (avec ses fabuleux courant d’airs) et le fabuleux LOSC (si, si, pour quelqu’un qui a connu Lille à grimonprez et les joies de la division 2…), t’Oude Wethuis (ah les ribs de Gilles et Évelyne…), ma Flandre natale… Bonjour donc a SharePoint (que je vais enfin pouvoir approfondir comme je le souhaitais), les pubs de Dublin (y en a plus de 1500), le Croke Park Stadium (je me suis inscris dans un club de GAA), le Brazen Head et les charmes enivrant de l’Irlande.
    Voici une photo de ma petite famille devant la célèbre statue de Molly Malone, qui ce joint à moi pour ces vœux.

    Molly Malone et nous!

    January 18

    1jour1pari.com : Le seul risque c'est de gagner des cadeaux

    J'ai un ami qui viens de mettre en ligne un site de paris sur tout un tas de choses (sports, média, actus,...). Je vous recommande donc chaudement d'aller exercer vos talents de parieur et tenter de décrocher les cadeaux mis en place.

    1jour1pari.com

    Pour le petit discours commercial:

    1jour1pari est le premier site de paris généralistes gratuits.

    Sur 1jour1pari, pariez en ligne sur le Sport, la Bourse, les Médias et l’Actualité, cumulez des foz€ et gagnez de fabuleux cadeaux.

    L’inscription est 100 % gratuite, elle vous permet de créditer votre compte de 1000 foz€ (monnaie virtuelle du site).

    De plus, de nombreux concours sont organisés et permettent d'obtenir des cadeaux en cumulant les bons résultats

    January 17

    [Windows Workflow Foundation] Assigner des permissions à une tache en cours de création

    Petite astuce que je tiens à vous faire partager car j'ai perdu 2 heures pour rien... Eye-rolling Je m'explique... Je travaille sur un workflow pour MOSS qui entre autres choses doit me créer une tache spécifique à un groupe d'utilisateur.

    Tout d'abord le code:

    public HybridDictionary LMSSuperUserTaskSpecialPermissions = new HybridDictionary();
    LMSSuperUserTaskSpecialPermissions["MonGroupe1"] = SPRoleType.Contributor;
    // Comme c'est un dictionnaire, il vous suffit d'ajouter des permissions
    // ex:
    // LMSSuperUserTaskSpecialPermissions["MonGroupe2"] = SPRoleType.Reader;
    // LMSSuperUserTaskSpecialPermissions["MonUser"] = SPRoleType.Reader;

    Ensuite, il vous "suffit" d'ajouter votre propriété dans le mode design à la rubrique MISC puis "Special Permissions". La ou c'est drôle, c'est que pour toutes les propriétés, vous cliquez sur les [...]. Et bien la non! Sarcastic Il faut cliquer sur la petite bulle bleue (comme vous le montre mon superbe schéma Hot)

    createTaskAndAssignPermissions