
Nous allons voir ici comment utiliser des scripts pour ouvrir des tables de données JMP. J'ouvre une nouvelle fenêtre d'éditeur de scripts et j'utilise la fonction « pick directory » pour inviter l'utilisateur, lors de l'exécution du script, à naviguer vers un répertoire ou un dossier. Je stocke ce résultat dans la variable myPath. Remarque : pour le nom de la variable, j'utilise un exemple de « camel case » : au lieu d'utiliser des espaces entre les deux mots, je mets simplement une majuscule à la première lettre du deuxième mot pour une meilleure lisibilité. J'affecte donc le résultat de la fonction « pick directly » à myPath. Donc, « pick directory ». L'invite est facultative. Elle apparaîtra en haut à gauche de la boîte de dialogue de recherche de dossier, mais elle sera une chaîne de caractères si vous l'utilisez. Je saisis donc « Où se trouve le fichier Cure Time ? » pour aider l'utilisateur à savoir ce que je veux qu'il recherche. J'exécute le script. Cela m'a amené au dernier dossier que j'ai consulté interactivement, celui des données de ce cours. Je pourrais donc simplement cliquer sur « Sélectionner un dossier ». Imaginez si vous deviez y accéder ! Inutile d'aller dans le dossier. Je pourrais simplement le sélectionner au lieu de l'ouvrir et cliquer sur « Sélectionner un dossier ». Le résultat serait le même que si je l'ouvrais et cliquais sur « Sélectionner un dossier ». Vous pouvez alors voir que le journal et mon chemin d'accès contiennent la chaîne de caractères contenant le chemin d'accès à ce dossier ou répertoire, complétée par une barre oblique finale. Que faire une fois ce chemin récupéré ? Je vais ouvrir une nouvelle ligne et l'utiliser pour ouvrir la table de données « Temps de traitement » avec la fonction open. Je stockerai le résultat dans la variable dt. La fonction open va donc renvoyer une référence d'objet de table de données en plus de l'ouvrir. Je choisis donc « open », puis j'utilise la variable myPath et je la concaténe avec les deux barres verticales ou les deux barres verticales, puis je la concaténe avec la chaîne de caractères contenant le nom de la table de données, Cure Time, avec un espace entre les mots « point » et « JMP ». J'exécute cette ligne. Pour rappel, vous pouvez exécuter une seule ligne de script, sur laquelle se trouve le curseur, en utilisant la touche Entrée du pavé numérique situé à droite d'un clavier de bureau standard. J'exécute donc cette ligne. La table de données Cure Time s'ouvre. Le journal montre que nous avons créé une instance d'un objet table de données lorsqu'une référence à cet objet est stockée dans dt. Si je reviens au script et que je survole dt, vous constaterez que cette référence d'objet est stockée pour cette table de données. Nous pourrions ainsi envoyer des messages à la table de données et interagir avec elle. Pour notre cas, nous nous concentrons uniquement sur l'utilisation de la fonction « open ». Avant d'examiner d'autres exemples, on pense parfois que le stockage de la référence d'objet à la table de données dans dt permet de ne plus avoir besoin de l'ouvrir. Or, ce n'est pas le cas. Si je retourne à la table de données Cure Time et que je la ferme, je tape dt sur une nouvelle ligne et j'exécute cette ligne pour simuler l'utilisation de la table de données. Lors de l'exécution, le journal renvoie « Data Table » (« UnknownTable »). Ce n'est donc pas parce qu'une référence d'objet à une table de données est stockée dans une variable que je peux fermer la table. Elle restera en mémoire pendant que je l'utilise. Je vais effacer le contenu des lignes et ici. Je vais conserver la première ligne, même si je ne la réexécuterai pas. Je souhaite maintenant utiliser la fonction pick file. J'en stocke le résultat dans la variable f. Le résultat de pick file sera donc affecté à f. Entre parenthèses, il y a maintenant deux arguments facultatifs pour choisir un fichier : un argument d'invite et un argument de répertoire. Si je ne souhaite pas fournir d'invite, mais un répertoire, ces arguments sont sans nom, leur position est donc importante. Il me suffit donc de saisir une virgule entre les parenthèses, puis d'utiliser la variable myPath. La virgule indique simplement à JMP qu'il s'agit du deuxième argument, et non du premier. Je ne fournis donc pas d'invite, mais j'indique à la fonction de sélection de fichier le répertoire à rechercher. J'exécute donc ceci. Cela ouvre ce qui ressemble à la boîte de dialogue d'ouverture de fichier. En fait, le bouton sur lequel je clique après avoir sélectionné un fichier indique « Ouvrir », mais cela n'ouvre pas une table de données ; cela renvoie simplement une chaîne qui sera stockée dans f. Je clique donc sur Cure Time.jmp, puis sur « Ouvrir ». Et là, bien sûr, se trouve le chemin absolu, qui inclut le nom et l'extension du fichier. Sur une nouvelle ligne, je peux saisir dt et lui attribuer le résultat de la fonction open prenant f comme argument. J'exécute donc cette ligne. dt stocke la table de données Cure Time. Nous pouvons d'abord utiliser pick directory pour demander à l'utilisateur d'indiquer l'emplacement du fichier, puis lui demander de sélectionner le fichier Cure Time. Une invite de commande serait utile dans ce cas. Dans les deux cas, elle se trouverait dans le coin supérieur gauche de la fenêtre. Vous pouvez également utiliser la fonction open sans argument : cela se comporterait comme si j'avais sélectionné Fichier Ouvrir, mais elle renverrait également une référence à l'objet de la table de données. Les fonctions pick renvoient donc des chaînes de caractères. Open renvoie une référence à l'objet de la table de données.