Je ne cherche pas de réponse ici. Je partage juste mes découvertes.
J'ai essayé de déboguer un script et j'ai rencontré l'erreur suivante qui ne permettra pas au débogueur de dépasser une fenêtre de notification de démarrage que j'ai programmée pour les informations utilisateur:
(Le message suivant n'est peut-être pas une erreur réelle; la préférence 'Signaler les messages de la boîte d'affichage invalide' est activée.) L'objet 'TextBox' ne reconnaît pas le message ''.
Une fois que le débogueur atteint ce code, il se bloque. Mais l'exécution du script dépasse cette erreur, exécutant complètement le script. J'ai un problème plus loin dans le script et cela m'a empêché de trouver une solution pendant un certain temps.
En fin de compte, j'ai découvert que j'avais simplement mis trop de virgules dans la commande de zone de texte, mais l'erreur ne m'a pas conduit facilement à cette erreur. J'ai également vérifié que mes préférences pour les messages de rapport de boîte d'affichage valide sont désélectionnées. Tendre la main à d'autres utilisateurs JMP expérimentés m'a conduit à ce forum de discussion. J'ai joint une version non spécifique de la partie incriminée de mon script en démonstration.
Discontinue = 1;
/*
// This one was the problem window that gives the error:
//(The following message might not be an actual error; the preference 'Report Invalid Display Box Messages' is ON.) Object 'TextBox' does not recognize the message ''.
New Window( "Where is your file?", << Modal,
H Center Box( Text Box( "Looooooooooooooooong Note 1", << Set Font( "Arial Black", 10, "Bold"), << Set Width( 200) ) ),
Spacer Box( Size( 20, 15 ) ),
H Center Box( Text Box( "Looooooooooooooooooooong Note 2", << Set Font( "Arial Black", 10, "Bold"), , << Set Width( 200) ) ),
Spacer Box( Size( 10, 15 ) ),
H Center Box( Text Box( "Continue?", << Set Font( "Arial Black", "Bold" ) ) ),
Spacer Box( Size( 10, 5 ) ),
H Center Box(
H List Box(
Button Box( "Yes" ),
Button Box( "No", Discontinue = 0 )
)
)
);
*/
//This is the fixed window
New Window( "Where is your file?", << Modal,
H Center Box( Text Box( "Looooooooooooooooong Note 1", << Set Font( "Arial Black", 10, "Bold"), << Set Width( 200 ) ) ),
Spacer Box( Size( 20, 15 ) ),
H Center Box( Text Box( "Looooooooooooooooooooong Note 2", << Set Font( "Arial Black", 10, "Bold"), << Set Width( 200 ) ) ),
Spacer Box( Size( 10, 15 ) ),
H Center Box( Text Box( "Continue?", << Set Font( "Arial Black", "Bold" ) ) ),
Spacer Box( Size( 10, 5 ) ),
H Center Box(
H List Box(
Button Box( "Yes" ),
Button Box( "No", Discontinue = 0 )
)
)
);
print( "Testing...");
En espérant que cela aide ceux qui commettent ces erreurs simples qui nous font ensuite tourner nos roues bien plus longtemps que nous ne le devrions. Trop souvent, il existe vraiment une solution simple une fois que nous sortons de notre propre chemin.
C'est une chose mineure, mais parfois cette seule chose facilite la recherche d'une virgule, d'une paren ou d'un point-virgule.
Dans la fenêtre de script, un clic droit fait apparaître un menu avec une option pour "reformater le script". Il vous donnera une erreur et un emplacement lorsque le script ne fonctionne pas. Il ajoute également des tabulations, un espacement et tout cela pour rendre le script un peu plus lisible. En outre, une mise en forme vraiment bancale est également un excellent moyen de détecter la ponctuation involontaire.