Comment utiliser un script existant à partir d'un scriptJ'ai un script en ce moment qui produit l'effet que je veux, mais j'ai dû le faire de manière désordonnée et j'espère que quelqu'un dans la communauté pourra recommander une meilleure façon.Mon script me permet de sélectionner un fichier csv, puis il nettoie les données et crée une nouvelle table de saut bien formatée.J'ajoute également un tableau de bord à ce tableau.La façon dont je le fais est illustrée ci-dessous.Je prends ma référence de table et j'ajoute un nouveau script et je colle le script du tableau de bord que j'ai créé ailleurs entre les parenthèses de la commande Nouveau Script.Cela fonctionne, mais le problème est que le script du tableau de bord est si gros et si désordonné et change si souvent que je dois constamment mettre à jour mon script principal.Ce que je préfère faire, c'est enregistrer mon script de tableau de bord séparément, puis le charger.Autrement dit quelque chose comme ça :
dt << New Script(
"Dashboard",
Load("C:\jmpfiles\MySavedOffDashboardScript.jsl")
);
Ce que j'ai réellement implémenté (avec des ellipses masquant les détails désordonnés du tableau de bord):
dt << New Script(
"Dashboard",
JMP App(
Set Name( "Dashboard" ),
//...the rest of the messy script here...
);
Re : Comment utiliser un script existant à partir d'un scriptÇa a marché.La clé était d'avoir le chemin complet.Aussi, vous avez raison, je n'avais pas besoin du mot-clé parse only.
J'apprécie vraiment cela!Mon script devient vraiment fluide et me fait économiser beaucoup de travail.
Re : Comment utiliser un script existant à partir d'un scriptIl ne copie pas physiquement le contenu du fichier inclus - le script de table dira "Inclure ..." mais lors de son exécution, JMP référencera ce fichier et exécutera le contenu.
Re : Comment utiliser un script existant à partir d'un scriptLa façon dont vous l'utilisez est exactement comme vous l'avez décrit - utilisez simplement Inclure au lieu de Charger.Vous n'avez pas besoin du message d'analyse car lorsque vous exécutez le script de table, vous souhaitez exécuter le contenu du fichier d'inclusion.Si la table n'a pas été enregistrée, vous devrez fournir un chemin absolu plutôt qu'un chemin relatif vers le fichier d'inclusion.
Re : Comment utiliser un script existant à partir d'un scriptLe problème n'était pas qu'il fonctionnait.Il n'a tout simplement pas chargé le script dans la table
Re : Comment utiliser un script existant à partir d'un scriptLe contenu du script ne doit pas s'exécuter tant qu'il n'a pas été lancé en tant que script de table. Essaye ça:
dt = New Table( "test",
New Column( "Column 1")
);
dt << new script("test",
show("Here");
);Re : Comment utiliser un script existant à partir d'un scriptJ'ai lu sur la fonction include et je pense que vous avez raison, mais je ne sais toujours pas exactement comment l'utiliser.Je ne veux pas exécuter le script.J'ai plutôt besoin d'obtenir un handle vers le script chargé afin que je puisse l'ajouter à ma table.J'ai essayé ci-dessous mais cela n'a pas fonctionné.
subsetDt << Nouveau Script(
"Tableau de bord",
Inclure( "StudyFactsDashboard.jsl", <
);
Re : Comment utiliser un script existant à partir d'un scriptLa fonction que vous souhaitez "charger" le script est la Inclure fonction.