Est-il possible d'appliquer un gestionnaire d'état de ligne à une table de données et de faire en sorte que ce gestionnaire continue de fonctionner si la table de données est modifiée ; par exemple, si une colonne est triée par un script ou interactivement par un utilisateur ?
J'ai actuellement deux tables de données : une table avec des statistiques récapitulatives, une avec des données brutes. L'utilisateur sélectionne une ligne dans le tableau récapitulatif, le gestionnaire d'état de ligne détecte quelle ligne est sélectionnée, extrait le nom du paramètre et crée un graphique à partir du tableau de données brutes à l'aide du paramètre sélectionné.
Cela fonctionne bien (bien qu'il récupère la ligne qui a d'abord été désélectionnée avant de trouver la nouvelle ligne sélectionnée), mais il casse si l'utilisateur trie le tableau récapitulatif (par exemple s'il veut regarder le Cpk le plus bas, ou une autre métrique ).
Je vois le même problème dans l'exemple simple suivant basé sur l'aide au script :
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
f = Function( {a}, Print( a ) );
rs = dt << make row state handler( f );
dt << Select Rows( 1 );
dt << sort( by( :weight ), replace table, order( ascending ) );
dt << Select Rows( 9 );La sortie est :
Scriptable[]
[1]
Je pense que cela peut être lié à cet élément de la liste de souhaits : https://community.jmp.com/t5/JMP-Wish-List/Improve-JMP-s-state-handlers-hover-label-row-state-handler/idi-p/527992 . Y a-t-il une solution de contournement?
J'utilise JMP17.0 sur MacOS.
Merci!