Bonjour,
Mon anglais n'est peut-être pas clair, je m'excuse d'avance si c'est le cas.
J'essaie de créer un graphique dans une zone graphique que je souhaite enregistrer dans un journal.
Pour créer des lignes dans mon graphique, je dois mettre des coordonnées dans une variable car cela peut changer en fonction de certains paramètres de mes données.
Tout fonctionne bien jusqu'à ce que j'enregistre le journal. Mais lorsque je rouvre ce journal à partir d'une autre session jmp ou même si je lance simplement "clear globals", je perds tout. En fait, dans le script du journal, mes variables gardent leur nom et si j'efface ce qui est assigné à ma variable alors le script du journal sera buggé (car il ne reconnaît plus ma variable).
J'ai essayé de mettre le code dans une expression, de le mettre dans une fonction, d'utiliser la commande "eval" ou "eval(parse()" et rien ne fonctionne jusqu'à présent, ce qui me rend fou y.
Quelqu'un a-t-il eu le problème ou a-t-il une piste pour le résoudre ?
Voici un code qui recrée le problème
path ="C:\";
Var1=[10 30 90];
Var2=[88 22 44] ;
obj=New Window( "Example", Graph Box( Line( Var1, Var2 ) ) );
obj<<JOURNAL></JOURNAL>
Merci beaucoup d'avance !
ps : j'utilise JMP14.1.0 (64bits)
J'utilise JMP16.2 donc j'espère que les problèmes sont les mêmes. Je reçois le message d'erreur suivant Nom non résolu : Var1 dans l'accès ou l'évaluation de 'Var1' , Var1/*###*/ ce qui me dit qu'à la réouverture de la revue les variables ne sont plus définies. Pour éviter cela, j'essaierais l'une des méthodes trouvées à partir de Insérer une expression dans une autre en utilisant Eval Insert, Eval Expr, Parse et Substitute . Ceux-ci vous permettront d'évaluer les valeurs de la zone graphique au lieu de simplement la laisser comme Var1 et Var2. Vous trouverez ci-dessous un exemple utilisant Eval(EvalExpr()).
Names Default To Here(1);
path = "$TEMP\";
Var1 = [10 30 90];
Var2 = [88 22 44];
Eval(
EvalExpr(
obj = New Window("Example", Graph Box(Line(Expr(Var1), Expr(Var2))));
)
);
obj << journal;
jrn = Current Journal();
jrn << Save Journal(path || "jrn_test.jrn");
jrn << close window();
obj << close window();
wait(1);
Open(path || "jrn_test.jrn");
Non évalué :

Évalué:
