Attendre (0) vs Attendre (n) vs Exécuter vs TerminerJ'ai des tableaux de données très volumineux et en constante augmentation, donc j'ai des problèmes avec les formules qui ne se terminent pas. J'aurais aimé que JMP construise simplement un mécanisme pour empêcher les scripts de continuer jusqu'à ce que chaque ligne soit terminée, mais il y a peut-être une raison pour laquelle je ne pense pas. J'utilise généralement une commande wait (n) (par exemple, wait (30);) cependant, à mesure que l'ensemble de données grandit, je dois constamment mettre à jour d'innombrables instances de "wait" à travers les milliers de lignes de code à mesure que les tables deviennent trop volumineuses pour certains lignes de code pour terminer l'évaluation. J'ai pensé plus tard que j'avais appris que wait (0); serait dynamique. Cela attendrait aussi longtemps que nécessaire pour terminer l'évaluation avant de passer à la ligne suivante, j'ai donc tout changé pour attendre (0), mais maintenant de nombreuses lignes ne se terminent pas et donc le script se brise. J'avais tort de penser que l'attente (0); commande serait dynamique comme je l'ai décrit? J'ai essayé les commandes "Exécuter" et "Terminer" mais aucune n'a fonctionné. Je suis retourné et j'ai mis, par exemple, une attente (30); en un seul endroit et cela a fonctionné à nouveau .. alors suis-je coincé avec ces incréments de temps statiques que je devrai inévitablement continuer à changer au fil du temps .. ou est-ce que je fais quelque chose de mal ici?
ScriptingRe: Attendre (0) vs Attendre (n) vs Exécuter vs TerminerAvez-vous essayé d'utiliser:
dt << Run Formulas();
ou
dt << Rerun Formulas;
à ma connaissance, ces JMP devraient attendre la fin de l'évaluation de la formule avant de continuer.
Autres options possibles: Des formules sont-elles également nécessaires? Pourriez-vous gérer avec << Définir chaque valeur au lieu de formules? Peut-être aussi l'utilisation de dt << Commencer la mise à jour des données ; et dt << Fin de la mise à jour des données ; pourrait être utile.
Re: Attendre (0) vs Attendre (n) vs Exécuter vs TerminerJ'aurais dû préciser que ce ne sont pas seulement des évaluations de formules, mais des actions comme ouvrir et joindre ou mettre à jour une autre table, trier une table, etc. ces commandes fonctionneront-elles sur des choses qui ne sont pas des formules?
Re: Wait (0) vs Wait (n) vs Run vs FinishJe pense que si vous avez des formules dans les tableaux que vous joignez / mettez à jour, cela pourrait aider. Je pense que je n'ai jamais eu de problèmes avec les tables de données JMP directement liées qui m'auraient obligé à utiliser wait (la plupart des problèmes ont été liés à certaines variables ne recevant pas de valeurs ou avec des visualisations dans une nouvelle fenêtre). Je ne connais pas assez de détails techniques sur ce que fait JMP en arrière-plan, alors vous pourriez peut-être essayer d'envoyer support@jmp.com à l'aide? Marquage également @Jeff_Perkinson basé sur cette ancienne réponse Comment puis-je forcer mon script à s'exécuter de manière séquentielle?
Quelques questions:
Utilisez-vous Current Datatable () pour faire référence à des tables de données? Quelle version de JMP utilisez-vous?
Liens:
https://www.jmp.com/support/help/en/15.2/index.shtml#page/jmp/scripting-data-tables.shtml#ww2071832
https://www.jmp.com/support/help/en/15.2/index.shtml#page/jmp/scripting-numbers-strings-arrays-and-lists.shtml#