Bug de graphique de variabilité<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Salut à tous,
J'ai deux versions du même script JSL exact pour générer un graphique de variabilité, mais l'une ne l'affiche pas correctement. Le formatage est tout foiré. La seule différence entre les deux versions est que l'une s'exécute dans une boucle for, l'autre pas. Lorsque je regarde le script de sortie, je constate qu’ils génèrent différents scripts internes, de sorte que celui qui se trouve dans la boucle for ignore beaucoup de mes commandes.
J'ai joint les deux versions du script que j'ai écrites, l'une montre la boucle for (qui prend plusieurs paramètres d'une base de données et génère un tableau de variabilité pour chacune), l'autre est codée en dur. Joignez également les scripts générés par JMP pour ces deux scripts différents. Comme vous pouvez le voir dans WhatJMPdoesInstead.txt, il ignore un tas de commandes.
Est ce que quelqu'un a déjà eu ce problème? Aucun moyen de réparer cela?
Re: Bug Graphique de la variabilitéVous avez raison, je voulais juste dire que le flux du code était le même. Évidemment, la boucle for était là pour gérer plusieurs colonnes uniques et j'ai donc dû remplacer le nom. Il semblait que tous les autres paramètres étaient bien gérés, donc je ne pensais pas devoir faire quoi que ce soit de spécial avec la chaîne.
Quoi qu'il en soit, j'ai fini par créer les chaînes dont j'avais besoin en dehors du tableau de variabilité, puis en utilisant expr (String1) dans la boucle et de placer Eval (Exal Expr ()) autour du tableau de variabilité entier, et le résultat a été satisfaisant. Problème résolu.
Re: Bug Graphique de la variabilitéDonc, deux versions d'exactement le même script, sauf une, et l'autre non ... parce que, euh ... Ils ne sont pas les mêmes. Le problème n'est donc pas JMP mais votre code. Cela aiderait si vous simplifiiez le problème pour qu'il n'y ait pas beaucoup de code à regarder et essayer de repérer la différence ... De plus, si vous pouviez générer une illustration à l'aide d'un exemple de jeu de données JMP intégré, il serait plus facile pour les personnes de vous aider sans accès à vos données. Le problème fondamental est que vous essayez de substituer les noms de colonnes au script. Dans votre boucle, vous utilisez une variable alors que dans l'autre, vous utilisez une référence de colonne réelle. JMP évalue les expressions de l'extérieur travaillant vers l'intérieur (à l'opposé de la plupart des autres langues). Par conséquent, au moment de l'exécution de la commande Variabilité, vos variables n'ont pas de valeur. La solution consiste à différer l'évaluation de l'expression en utilisant la fonction EXPR et en construisant une représentation de la commande à l'aide d'une manipulation de chaîne ou de fonctions telles que SUBSTITUTE. Voici un article récent qui illustre cela ...