Oui, je suppose que je suis.
Merci, je ne connaissais pas (ou ne me souviens peut-être pas) de nameexpr () et je pensais qu'il y aurait un moyen de l'extraire, mais je ne comprenais pas vraiment comment le faire. c'est-à-dire la fonction arg.
J'ai montré votre solution à ma femme et elle l'a bien résumé: Arg! Arg! Arg!
Merci encore,
Mike
Les préférences sont renvoyées sous forme d'expressions. Travaillez avec eux comme tels ou convertissez-les en chaînes. Ce dernier peut nécessiter NameExpr () pour empêcher l'évaluation des expressions. Chacune des approches ci-dessous devrait fonctionner:
If( Arg( Arg( Arg( pref1, 1 ), 1 ), 1 ),
n++);
If( Contains( Char( Name Expr( pref1 ) ), "(1)" ),
n++);
Bonjour, j'aimerais utiliser la fonction "obtenir les préférences de la plateforme (distribution (axe de comptage))" ou quelque chose de similaire, et en stocker le résultat dans un booléen ou un entier, mais je ne sais pas comment le faire. Je suis sur JMP11 / 12.
J'ai un script qui génère des lignes de référence sur la sortie du tracé de la plateforme de distribution. Notez qu'il ne s'agit pas d'ajouter des lignes de référence à la propriété axis d'une colonne, qui reste avec la table. Ce sont des lignes qui ne sont ajoutées qu'à la sortie du tracé et qui disparaissent à la fermeture de la fenêtre du rapport. Pour ce faire, je dois modifier la boîte à axes ( n ) propriété du rapport. Pour mes préférences (compte axe = 0, axe densité = 0, axe prob = 0), n = 1. Mais si l'un de ces axes est activé, n augmente à 2, 3 ou 4. Je souhaite détecter ces paramètres utilisateur et modifier n en conséquence.
Voici ce que je pensais faire (et quelques variations mineures de cela), mais ces variables pref ne contiennent pas de chaînes ou d'entiers. Je ne sais pas comment y accéder, à part voir les valeurs dans le journal. Des idées? Mon travail consiste simplement à désactiver ces 3 axes pour mon script, quels que soient les paramètres utilisateur, mais j’ai pensé que cela valait la peine d’être testé.
pref1 = Get Platform Preference( Distribution( count axis ) );
Show( pref1 );
pref2 = Get Platform Preferences( distribution( prob axis ) );
Show( pref2 );
pref3 = Get Platform Preferences( distribution( density axis ) );
Show( pref3 );
n = 1;
If( Contains( Char( pref1 ), "(1)" ),
n
++);
If( Contains( pref2, "(1)" ),
n
++);
If( Contains( pref3, "(1)" ),
n
++);
//edit, i forgot about stack...
pref4 = Get Platform Preferences( distribution( stack ) );
If( pref4 == 0, n = 1 );
//end edit
puis il suffit de modifier la case de l'axe (n)
BTW, le journal montre:
pref1 = Platform Preferences(Distribution(Count Axis(0)));
pref2 = Platform Preferences(distribution(Prob Axis(0)));
pref3 = Platform Preferences(distribution(Density Axis(0)));
avec une erreur sur le contient (pref2) parce que la comparaison de chaîne ne fonctionnait pas comme je l'espérais. char (pref1) n'a pas fonctionné non plus. il devient "."
Merci,
Mike