Problème avec le séparateur “;“ depuis l’installation du CU de février 2012

Bonjour,

Dans le CU de février 2012, nous avons corrigé le problème suivant :

Vous avez un fichier .mpp qui a été enregistré à partir d’un serveur Project Server à l'aide de la commande Enregistrer pour le partage. Lorsque vous essayez de réenregistrer le fichier .mpp sur Project Server dans Project 2010, l'opération échoue, et vous recevez le message d'erreur suivant :

Project Server n'a pas pu trouver la ressource spécifiée. Si le problème persiste, contactez votre administrateur de serveur.

Ce problème se produit lorsque le séparateur de liste est contenu dans les noms de ressources du fichier .mpp sur le client est différent du caractère séparateur de liste sur le serveur.

Nous avons découvert récemment qu’en corrigeant ce problème, nous avions malheureusement changé le comportement d’autres fonctionnalités du produit concernant la gestion du séparateur de liste quand celui-ci est le point-virgule. Cela peut donc potentiellement toucher bon nombre d’utilisateurs en Europe mais aussi en Amérique du Nord (Canada et Québec). Bien entendu, nous travaillons actuellement avec les équipes de développement afin de fournir des correctifs le plus rapidement possible.

Mais en attendant, je voulais partager avec vous les solutions de contournement que nous recommandons de mettre en place si un problème apparait dans l’un des scénarios suivants:

    • Utilisation de la boite de dialogue Information de la Tâche pour supprimer ou ajouter une ressource à la tâche
    • Utilisation de la boite de dialogue Affectation de Ressources pour ajouter plusieurs affectations à une tâche
    • Utilisation de la boite de dialogue Information de la Tâche pour définir les prédécesseurs et successeurs

Je vais maintenant détailler ces scénarios:

1. Le premier exemple illustre ce qu’il peut se passer si vous utilisez le point-virgule en tant que séparateur de liste mais aussi en tant que séparateur entre le nom et le prénom des ressources.
Ainsi, si vous avez une tâche sur laquelle sont déjà affectées les ressources Smith; Brian et Jenkins; Adrian, la boite de dialogue Information de la Tâche est:

image

Puis vous ajoutez la ressource Fiessinger; Christophe et vous cliquez sur OK. Dans l’affichage Diagramme de Gantt, vous avez donc le résultat suivant:

image

Etrangement, vous constatez que l’affichage de la liste de ressources n’est pas correcte. Si vous ouvrez alors la boite de dialogue Information de la Tâche, vous obtenez:

image

Chaque nom de ressource est coupé en deux parties et 6 nouvelles ressources locales ont été créées et affectées. Une précision: Le travail Réel n’est pas perdu pour autant. Toutes les affectations ayant déjà du Travail Réel sont conservées.
Le même résultat apparait si vous supprimez une ressource par l’intermédiaire de la même boite de dialogue. Par exemple, si vous supprimez Jenkins; Adrian, les ressources Smith et Brian seront créées en tant que ressources locales.

La solution de contournement est d’utiliser la colonne Nom des Ressources dans l’affichage Diagramme de Gant et de sélectionner ou désélectionner les noms dans la liste de choix.

2. Le second exemple illustre ce qu’il se produit lors de l’utilisation de la boite de dialogue Affectation des Ressources (c’est pour cela que ce n’est donc pas une bonne solution de contournement pour l’exemple précédent).

Si le nom de la ressource contient le point-virgule (qui est aussi le séparateur de liste), vous ne pouvez pas affecter les ressources à la tâche, le bouton Affecter étant alors grisé:

image

Cependant, si vous choisissez une ressource dont le nom ne contient pas le séparateur de liste, alors le bouton Affecter est accessible:

image

Un autre problème apparait lorsque vous effectuez une sélection multiple de ressources dont le nom ne contient pas le séparateur de liste:

image

Dans ce cas, lorsque vous cliquez sur le bouton Affecter, vous allez voir apparaitre une ressource supplémentaire avec un nom un peu particulier puisqu’il s’agit de la liste des noms de ressources que vous avez sélectionnez:  “adrian jenkins;brian smith;christophe fiessinger” . C’est cette ressource qui, au final, est affectée à la tâche:

image

La solution de contournement consiste à affecter les ressources une par une, ou encore une fois, d’utiliser la colonne Nom des Ressources dans l’affichage Diagramme de Gant et de sélectionner ou désélectionner les noms dans la liste de choix.

3. Le dernier exemple nécessite une nouvelle fois l’utilisation de la boite de dialogue Information de la Tâche. Mais cette fois, il s’agit de définir des successeurs et/ou des prédécesseurs.

Disons que vous avez 3 tâches T1, T2 et T3. Si vous ouvrez la boite de dialogue Information de la Tâche sur la tâche T3, que vous allez dans l’onglet Prédécesseurs et que vous entrez l’identifiant des deux premières tâches, ou que vous les sélectionnez dans la liste comme ceci:

image

Lorsque vous allez cliquer sur OK pour valider, le message d’erreur suivant apparait:

image

La solution de contournement est d’utiliser la colonne Prédécesseurs (ou Successeurs) dans l’affichage Diagramme de Gant et de saisir les identifiants des tâches (1, 2).

 

Bien sûr, il existe une solution de contournement globale pour résoudre tous ces exemples: Ne pas utiliser le point-virgule en tant que séparateur de liste.
Mais l’impact du choix du séparateur de liste étant bien plus large que le simple fait de définir le nom des ressources, ce n’est pas une solution acceptable dans la plupart des cas.

 

En vous priant de nous excuser pour le gêne que cela peut occasionner dans le fonctionnement quotidien de votre plate-forme Project 2010, j’espère que cet article vous sera utile dans l’attente d’une solution définitive qui ne saurait tarder.

Je vous tiendrais informer de l’évolution de la correction et je mettrai à jour cet article dès lors que le correctif sera disponible. En attendant, et comme après la publication de chaque article, n’hésitez pas à laisser vos commentaires sur le blog ou à poser vos questions sur ce sujet.

Bonne journée,

Marc Biarnès