Tags

Comment créer une relation N-N dans Planisware ?

Les développeurs qui travaillent depuis un certain temps avec Planisware savent que créer une relation N-N peut s’avérer fastidieux. En effet, dans les anciennes versions de Planisware, il était nécessaire de coder manuellement le mapping entre les différentes tables. C’est pourquoi, depuis la P5SP2, Planisware a mis à disposition une méthode de création simplifiée de relation N-N. Cette méthode se base sur la création en script d’un champ de type ring attribute qui va s’occuper de créer automatiquement les lignes de la relation N-N.

Lire la suite…



Relation inverse : quelle syntaxe en OJS sous Planisware  ?
Relation inverse : quelle syntaxe en OJS sous Planisware ?


Problématique Les relations inverses permettent de « récupérer » facilement et de manière optimisée tous les objets qui possèdent une relation avec un objet donné. Par exemple une relation inverse permettra de parcourir la liste des affectations portant sur une activité donnée. Cet article apporte un éclairage sur la manière d’utiliser une relation inverse et complète un précédent billet sur ce sujet. Comme vous pourrez le voir le nommage est loin d’être unique… et pour une même relation inverse on pourra avoir plusieurs possibilités.

Lire la suite…



Planisware : comment afficher la table des projets en client lourd ?
Planisware : comment afficher la table des projets en client lourd ?


Affichage des objets d’une classe – cas général Planisware Pro permet de consulter les objets Planisware d’une classe donnée (affectations, formules nommées, etc..). Par exemple on peut ouvrir une fenêtre affichant un tableau d’activités via le menu Données > Afficher tâches & sous-projets.   Exemple de tableau d’activités : Ces tableaux sont très utiles pour créer des styles personnalisés (styles de paramétrage) qui permettront de définir l’affichage des tableaux de données dans les rapports par exemple.

Lire la suite…



Bonnes pratiques relatives à la gestion des scripts

L’objectif de cette article est de partager des bonnes pratiques relatives la gestion des scripts dans Planisware. Cet article se concentre sur l’agencement général des scripts et ne traite pas des règles de nommage ou des bonnes pratiques concernant le code en lui même. Ces bonnes pratiques sont issues de mon expérience et de celle de mes collègues. Elles ont pour but de : Retrouver rapidement les modifications effectuées dans une version.

Lire la suite…



Planisware : focus sur les bonnes pratiques de nommage
Planisware : focus sur les bonnes pratiques de nommage


Problématique Lorsque l’on s’attache à mettre en œuvre des bonnes pratiques de nommage sous Planisware, 2 grandes familles d’objets sont à prendre en compte : les objets d’environnement Planisware (formules nommées, tables, champs supplémentaires…) les variables, fonctions et méthodes définies en script OJS Le respect de normes dans le développement est fondamental car il permet la maintenabilité du code au cours de la vide d’une application. Le non respect de conventions pour le nommage des objets et l’écriture du code rendra les corrections et évolutions plus couteuses (en temps et en énergie) et augmentera les risques de régression (dus en général à une mauvaise compréhension du paramétrage).

Lire la suite…



Planisware : comment optimiser le parcours d’une classe avec la relation inverse ?
Planisware : comment optimiser le parcours d’une classe avec la relation inverse ?


Problématique Il est fréquent en script Planisware (OJS) d’avoir à rechercher des éléments dans une classe donnée (affectations, tâches, dépenses etc…). La performance de cette recherche dépend principalement de deux facteurs : La volumétrie totale des objets de la classe parcourue La manière dont les objets de la classe sont parcourus Pour optimiser ce deuxième point, Planisware met à disposition un outil permettant de parcourir des ensembles d’objets restreints : les relations inverses.

Lire la suite…



Qu’est ce qu’un virtual dataset sous Planisware ?
Qu’est ce qu’un virtual dataset sous Planisware ?


Problématique Le progiciel Planisware comme la plupart des solutions de gestion de projets est destiné à traiter un grand nombre de données (tâches, affectations, dépenses, ressources etc…) ainsi qu’à réaliser des calculs en temps réel sur ces données. Planisware a donc mis en place des moyens techniques pour permettre des traiter et calculer ces données de manière performante et rapide : les Datasets et leur extension les Virtual Datasets. Mais qu’est-ce donc qu’un virtual dataset ?

Lire la suite…



Inspect() : afficher les attributs d’un objet en OJS
Inspect() : afficher les attributs d’un objet en OJS


Problématique Lorsque l’on développe en langage script Planisware (OJS), il peut être utile d’afficher les attributs d’un objet ainsi que leur valeur à un instant donné. Pour ce faire nous pouvons utiliser les fonctions alert(), writeln() et inspect(). Une première solution basique consiste à afficher la valeur d’un champ en utilisant les instructions alert (pour un affichage en popup à l’écran) et writeln (pour un affichage dans le fichier de log ou dans la console Planisware selon si l’on est connecté en client léger ou en client lourd).

Lire la suite…



Planisware : erreur sur l’évaluation du FORMULA_CACHE
Planisware : erreur sur l’évaluation du FORMULA_CACHE


Problématique Lors d’une montée de version applicative sous Planisware (standard Processes ou paramétrage spécifique) on a parfois des erreurs d’évaluation de formules au démarrage. En effet, si l’on a par exemple modifié le format des arguments d’une fonction et que celle-ce a déjà été évaluée et stockée dans la table FORMULA_CACHE, on aura à chaque démarrage des erreurs dans les logs. Exemple d’erreur : [02/01/2015 10:08:35.296] - Main process - Formule incorrecte: GetCurrentDashboardClass() = "DATASET" de type BOOLEAN sur l'entité Rapport, erreur: Mauvais nombre d'arguments à l'appel de la fonction GETCURRENTDASHBOARDCLASS Dans cet exemple c’est la modification des arguments de la fonction GetCurrentDashboardClass() entre Processes 5.

Lire la suite…



Planisware : changer la couleur d’un type de tâche
Planisware : changer la couleur d’un type de tâche


Couleur par défaut d’une activité Sous Planisware il est possible de définir la couleur par défaut allouée à un type d’activité donné. Pour rappel le type d’activité est un attribut des activités permettant de les caractériser en fonction de catégories prédéfinies. On pourra par exemple définir un type « jalon de livraison » ou même « avant-projet » etc… Ces types d’activité sont utilisés notamment dans le modèle Stage-Gate.

Lire la suite…