AXOPEN

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 ?

Dataset et projet

Dans Planisware, les données et les fonctionnalités sont généralement construites autour de la notion de projet. C’est un élément fondamental de la conception du logiciel techniquement et fonctionnellement. En effet, sur le plan fonctionnel, le projet est l’élément central. Un chef de projet va devoir gérer un ensemble de moyens et de contraintes dans le but d’atteindre un objectif précis. Techniquement dans Planisware le projet va permettre de regrouper ensemble toutes les données métier (WBS, affectations, dépenses etc…).

Quel est le lien avec le Dataset ? Un Dataset est tout simplement un projet dans Planisware, c’est-à-dire le conteneur des activités, affectations, dépenses… On le distinguera donc du fichier commun (common file) qui contiendra des données communes, partagées par plusieurs projets comme par exemple l’arborescence des ressources.

Le projet possède un certain nombre de macro informations dont celles relatives aux droits d’accès aux données qu’il contient.

Dataset et virtual dataset

Afin d’optimiser les performances d’affichage et de traitement des données Planisware met en place un fonctionnement permettant de restreindre les calculs à un sous ensemble des données de l’application.

Ce sous-ensemble sera la plupart du temps défini à la maille d’un projet et il sera nécessaire de sélectionner un sous ensemble pour « entrer » dans un module applicatif. Par exemple pour rentrer dans le module Projet je dois d’abord sélectionner un projet (ou dataset) pour que l’ensemble des affichages et outils disponibles dans le module puissent rester performants.

En conséquence, à l’intérieur du module, toute les données affichées sur les rapports n’itèreront que sur le Dataset et non plus sur l’ensemble des données de la base.

L’utilisation de Dataset est très recommandée par l’éditeur et est un élément fondamental de la conception du progiciel.

Mais alors qu’est-ce qu’un virtual dataset ?

Si un dataset représente un et un seul Projet Planisware on peut avoir besoin de travailler sur un périmètre qui n’est pas strictement celui d’un projet. Par exemple :

  • Je veux travailler sur plusieurs projets en même temps
  • Je veux travailler uniquement sur un sous ensemble d’un ou plusieurs projets car je suis responsable d’un ou plusieurs lots de travaux.

Le principe du Dataset ne s’applique pas lorsqu’une partie ou plus d’un projet est sélectionnée. Dans ce cas on pourra définir un Virtual Dataset. Il se comportera de manière similaire à un Dataset (ouverture, fermeture, optimisation des calculs et des affichages) mais sera comme son nom l’indique « virtuel ». Il ne sera donc disponible que pendant une durée limitée  et ne sera pas stocké en base de données.

Ce principe est très utilisé dans Planisware. A titre d’exemple on le retrouve dans les modules standards suivants :

  • Projet (ouverture de plusieurs projets ou d’un portefeuille de projets)
  • Ressources (ouverture des activités possèdant des affectations sur une ressource donnée)
  • Lots de projets ou Workpackage (ouverture d’un sous-ensemble d’activités correspondant aux lots délégués à un responsable donné)

Voici un schéma explicatif permettant visualiser simplement la différence entre un dataset et un virtual dataset.

dataset shema

Dataset et rapports

Afin de s’assurer qu’un rapport itère bien sur un Dataset, il suffit de l’ouvrir en mode édition.

Dans votre client lourd, cliquez sur cet onglet pour rentrer en mode édition. Puis sélectionnez votre rapport.

mode edition

Si le type de votre rapport est « Fichier » alors oui, il utilise le Dataset et n’itère pas sur toutes les données de l’application.

fichier

En revanche s’il est de type « Contexte OPX2 » et uniquement dans ce cas, votre rapport ignorera le Dataset ou Virtual Dataset et itérera sur l’ensemble des données de votre application.

.contexte

On utilisera par exemple la définition de bloc de rapport sur le Context OPX2 dans le module Administration pour afficher toutes les données d’une classe donnée (arborescences communes, tables supplémentaires).