JMPプロジェクト内のすべてのデータテーブルとレポートをコンテンツに自動的に保存するスクリプト現在、特定のレポートとテーブルをプロジェクトコンテンツに名前で保存する以下の静的スクリプトがあります。これを、あらゆるプロジェクトで同じ処理を実行できるスクリプトに一般化したいと思っています。そのためには、名前を動的に生成し、保存関数に渡す必要があります。少し試してみましたが、まだうまくいきません。ご協力いただけると幸いです。
これは現在、固定テーブル名で動作するスクリプトです。このスクリプトは、すべてのテーブルとレポートと同じプロジェクトに埋め込まれたワークフローで実行されます。レポートの場合、埋め込み変数は常に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 ) )
;
);
自動化とスクリプトRe: JMPプロジェクト内のすべてのデータテーブルとレポートをコンテンツに自動的に保存するスクリプトGet Data Table Listを使用すると、データテーブル名のリストを取得できます。
tablenames = Get Data Table List() << get name;
Get Window List でウィンドウを報告する
reportwindows = Get Window List(Type("Reports"));
その後、For Each を使用してループ処理を行うことができます。
使用する必要がある可能性のあるプロジェクト引数をサポートしているため、Scripting Index からこれら両方を確認してください。
編集: コマンドまたはレポートウィンドウを修正
Re: JMPプロジェクト内のすべてのデータテーブルとレポートをコンテンツに自動的に保存するスクリプトJarmoさん、ありがとうございます。2番目の関数がプロジェクトにあるレポートを実際に返さないのはなぜでしょうか?最初の関数はデータテーブルに対して期待どおりに機能します。
プロジェクト ウィンドウのスナップショット:

以下はレポートを返さないことを示すログ
reportwindows = Get Window List(Type("Reports"));

2 番目のレポートを追加すると、ディスプレイ ボックス/ヘッド ボックスが複数のレポートを区別しないことがわかります。

Re: JMPプロジェクト内のすべてのデータテーブルとレポートをコンテンツに自動的に保存するスクリプトこれらはレポートウィンドウです。
Re: JMPプロジェクト内のすべてのデータテーブルとレポートをコンテンツに自動的に保存するスクリプト明確にするために、両者は区別されています。< <>