Salut,
quelle est la meilleure façon de déclencher JSL lorsque je sélectionne un point de données dans Graph Builder ?
par exemple, pour mettre à jour des parties du tableau de bord en fonction de la sélection actuelle
Il y a le Gestionnaire d’état de ligne .
Mais c'est une propriété de la table de données. Ainsi, le code JSL sera même déclenché après la fermeture du tableau de bord.
Il faudrait donc que je prenne soin de le retirer par la suite.
J'ai remarqué qu'un Gestionnaire de changement de filtre d'un filtre de données local peut agir comme un gestionnaire d'état de ligne - il se déclenchera même lorsque la souris touche un point de données.
"Cool" - cette fonctionnalité est-elle "telle que conçue". Il semble être toujours disponible dans Jmp18 - mais j'imagine qu'il sera désactivé ultérieurement :
Améliorer les gestionnaires d'état de JMP (étiquette de survol, gestionnaire d'état de ligne, gestionnaire d'état de filtre, planificateur, ...)
New window("test", Data Filter Context Box(
V List box(tb = Text Box ("hello"),
H list Box(
ldf = dt << data filter(local),
gb = dt << Graph Builder(
Variables( X( :height ), Y( :weight ), Overlay( :sex ) ),
Elements( Points( X, Y, Legend( 1 ) )) )
)))));
i=1;
f = Function( {a}, Print( tb << set text(Char(i++)) ) );
rs = ldf << Make Filter Change Handler( f );Je dirais que cela dépend de ce que vous souhaitez faire avec la sélection des points de données, du nombre de points de données (ou plutôt de lignes) qui peuvent être sélectionnés en même temps et éventuellement d'autres choses.
1 pt /ligne (le script utilisera la première ligne sélectionnée et négligera les autres sélections)
Pour le moment nous partirons vers :
- Filtre de données local (générez-le simplement et masquez-le)
- Gestionnaire de modifications de filtre (pour en abuser en tant que gestionnaire d'état de ligne local)
- vérifier si le RANGÉE la sélection a été modifiée - sinon ne faites rien.