Dans cet article


Offres d'emploi

Tags

Paramétrer le comportement du clic dans un tableau sous Planisware – clic handler

Problématique

Lorsque l’on implémente des écrans sous Planisware il est souvent demandé de paramétrer le comportement d’un clic sur un élément affiché. Dans un tableau par exemple, quel sera le comportement de l’application lorsque je clique sur telle ou telle cellule ?

En général le clic déclenche l’affichage du formulaire de l’objet considéré. Par exemple lorsque l’on clique sur le nom d’une tâche on veut afficher le formulaire de la tâche en mode popup.

Il existe plusieurs moyens de répondre à ce besoin sous Planisware en fonction de l’écran concerné et du type d’action que l’on souhaite réaliser :

  • via les rapports définissant les liens
  • via les clic handlers

Cet article présente 2 méthodes permettant de définir le comportement de Planisware lors d’un clic sur un élément graphique (tableau, tableau de charge, élément d’un GANTT…).

Les rapports définissant les liens

L’utilisation des rapports paramétrant les liens est la méthode par défaut à utiliser pour afficher le formulaire d’un objet lorsque l’on clique sur l’un de ses attributs dans un tableau. Le paramétrage se fait directement dans le formulaire de l’objet graphique à paramétrer (tableau par exemple). Le principe est de préciser le nom d’un rapport dans lequel on aura défini quels liens hypertextes sont disponibles sur quels attributs.

Les clic handlers

Dans des cas plus complexes les rapports définissant les liens ne permettent pas de réaliser l’action souhaité. On pourra alors utiliser un clic handler.

Dans l’exemple suivant nous voulons afficher sous forme de popup le formulaire de l’activité de rattachement d’une affectation en cliquant sur le champ « ACTIVITE » d’un tableau d’affectation. Ce formulaire aura pour identifiant « XXX_RE_FORM_ACT ».

Nous définissons dans un premier temps la fonction permettant de vérifier que l’attribut (c’est à dire la colonne) de l’objet sur lequel on clique est bien la colonne activité.

function IsActivityColumn(slot)
{
  var result = false;
  var column_name = slot.descriptor.name.tostring();
  if(column_name == "WBS-ELEMENT")
  {
    result = true;
  }
  return result;
}

Nous définissons dans un second temps la fonction du handler qui va réaliser l’action suite au clic :

function DisplayAllocationActivityForm(slot)
{
  if(IsActivityColumn(slot))
  {
    var my_act = this.Activity;
 
    //Define link
    var link = new hyperlink ("fformula","formula",my_act.printattribute(),"editortype","XXX_RE_FORM_ACT","popup",true);
 
    //Open link
    If(link != undefined)
    {
      link.go("useless");
    }
  }
}

Note : dans un cas réel il faudra bien sûr rajouter des vérifications préliminaires pour vérifier l’existence de l’affectation et de l’activité de rattachement.

Ensuite il suffira de rajouter l’appel de ce handler depuis le formulaire de paramétrage du tableau d’affectation via une commande du type :

this.grid.AddClickHandler("DisplayAllocationActivityForm");

Ainsi lorsque l’on cliquera sur le champ « ACTIVITE » de l’une des affectations du tableau Planisware va afficher le formulaire « XXX_RE_FORM_ACT » sur l’activité de rattachement de l’affectation.

 

L'équipe AXOPEN

Voir aussi les articles suivants

Priorités des contraintes de planification sous Planisware
Problématique Dates souhaitées, dates effectuées, contraintes de début, etc… Quelles sont les priorités des contraintes de planification sur les éléments de planning sous Planisware ? Ce billet fait le point sur l’ordre de prise en compte de ces contraintes dans un planning. Priorités des contraintes L’ordre de priorité des éléments impactant la planification est le suivant (du plus fort au moins fort) : Contrainte la plus forte
Lire l'article

Planisware : afficher la console java

Planisware : afficher la console java

Le 12/08/2014 par Thibault Gonin

Problématique Où sont tracées les actions réalisées sur un poste utilisateur par Java ? Comment afficher les informations relatives à l’applet Java sur le poste client ? Cet article précise comment afficher et consulter la console Java des traitements Planisware sur un poste utilisateur. Afficher la console utilisateur de Planisware Pour rappel il existe 2 modes de connexion au progiciel Planisware en client léger : java ou ajax. Dans certains cas (pour résoudre un problème technique par exemple) il peut être nécessaire d’afficher la « console java ».
Lire l'article

Planisware : ouvrir plusieurs sessions simultanées

Planisware : ouvrir plusieurs sessions simultanées

Le 31/07/2014 par Thibault Gonin

Problématique Lorsque l’on utilise une application sous Planisware on peut avoir besoin d’ouvrir plusieurs sessions sur un même poste. Par exemple : un même utilisateur travaille sur plusieurs environnements différents (sur un environnement de production et sur un environnement de formation par exemple) plusieurs connexions sur un même environnement avec des utilisateurs différents Pour éviter tout conflit entre les 2 connexions il est recommandé de suivre les précautions suivantes.
Lire l'article