Script permettant d'enregistrer automatiquement tous les tableaux de données et les rapports d'un projet JMP dans le contenuJ'ai actuellement le script statique ci-dessous qui enregistre des rapports et des tableaux spécifiques dans le contenu du projet, en les nommant. Je souhaite le généraliser afin qu'il fonctionne pour n'importe quel projet ; les noms devront donc être générés dynamiquement et transmis à une fonction d'enregistrement. J'ai fait quelques essais, mais sans succès pour l'instant. Toute aide est la bienvenue.
Voici le script qui fonctionne actuellement avec des noms de tables fixes. Il est exécuté dans un flux de travail intégré au même projet que toutes les tables et tous les rapports. Pour les rapports, je souhaite que le niveau d'intégration soit toujours défini sur 0.
proj = Current Data Table() << Get Project();
proj << Run Script(
Data Table("plate_data_long") << Save As("$PROJECT/plate_data_long.jmp");
Data Table("plate_data_wide") << Save As("$PROJECT/plate_data_wide.jmp");
Data Table("Summarized by PC Plate_well and Process") << Save As("$PROJECT/Summarized by PC Plate_well and Process.jmp");
Window ("Assay Plate Value Heatmap") << Save Window Report( "$PROJECT/Assay Plate Value Heatmap.jrp", embed data( 0 ) );
Window ("Controls and Parent QC") << Save Window Report( "$PROJECT/Controls and Parent QC.jrp", embed data( 0 ) );
Window ("Assay Plate Value Heatmap") << Save Window Report( "$PROJECT/Assay Plate Value Heatmap.jrp", embed data( 0 ) )
;
);
Automatisation et scriptageRe : Script pour enregistrer automatiquement toutes les tables de données et les rapports d’un projet JMP dans le contenuVous pouvez obtenir la liste des noms des tables de données en utilisant la fonction « Obtenir la liste des tables de données ».
tablenames = Get Data Table List() << get name;
Afficher les fenêtres avec la liste des fenêtres
reportwindows = Get Window List(Type("Reports"));
Vous pouvez ensuite les parcourir en utilisant la boucle For Each.
Vérifiez ces deux éléments dans l'index des scripts, car ils prennent en charge l'argument Project que vous pourriez avoir à utiliser.
Modification : correction des fenêtres de commande ou de rapport
Re : Script pour enregistrer automatiquement toutes les tables de données et les rapports d’un projet JMP dans le contenuMerci Jarmo. Aurais-tu une idée de pourquoi la deuxième fonction ne renvoie pas le rapport attendu dans mon projet ? La première fonction fonctionne correctement pour les tableaux de données.
Aperçu des fenêtres du projet :

Journal indiquant que la commande ci-dessous ne renvoie pas le rapport
reportwindows = Get Window List(Type("Reports"));

L'ajout d'un deuxième rapport montre que la boîte d'affichage/l'en-tête ne fait pas la distinction entre plusieurs rapports :

Re : Script pour enregistrer automatiquement toutes les tables de données et tous les rapports d’un projet JMP dans le contenuCe sont les fenêtres de rapport.
Re : Script pour enregistrer automatiquement toutes les tables de données et les rapports d’un projet JMP dans le contenuEt, pour plus de clarté, cela fait bien la distinction entre eux. Vous pouvez envoyer le < <>