ファイルを開かずに.jmpファイルの行/列数とメモにアクセスするこの情報には、少なくともWindowsではJMPOpenファイルを介してアクセスできます。

JMPデータテーブルを開かずにスクリプトを介してこれらにアクセスできるかどうか疑問に思います(データファイルオプションを開く)?
列名には次のコマンドでアクセスできます
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp", "Column Names Only");
データ表スクリプティングRe:ファイルを開かずに.jmpファイルの行/列数とメモにアクセスするこんにちは@jthi 、
JMPで開いているウィンドウのダイアログからその情報を取得する方法はわかりませんが、次のようなことができます。
Names Default to Here(1);
dt=open("$SAMPLE_DATA/Big Class.jmp", Invisible);
Show(Nrows(dt));
Show(NCols(dt));
Close(dt);スクリプトウィンドウのログウィンドウまたは埋め込みログに次の情報が返されます。
N行(dt)= 40;
N Cols(dt)= 5;
openコマンドの「Invisible」は、データテーブルを前面に表示せず、バックグラウンドで非表示にします。 Show Properties(dt)コマンドを実行して、データテーブルに関するより広範な情報のリストを取得することもできます。
私はそれがあなたが望むものではないことを知っていますが、それは仕事をすることができると思います。
DS
Re:ファイルを開かずに.jmpファイルの行/列数とメモにアクセスする「非表示」ではなく「プライベート」を指定することをお勧めします。 表示オブジェクトを作成する必要がないため、JMPの動作はそれほど難しくありません。Re:ファイルを開かずに.jmpファイルの行/列数とメモにアクセスする私は今日ディスカバリーサミットで開催されたMeetthe Developersセッションに参加して、これについて質問しました。 以前に投稿したようなソリューション(列名を取得し、列数用にN Items()、プライベートとして1列でデータテーブルを開き、行数用にN Rows())が現在これを行う最も速い方法のようです。 彼らはメモを取ったので、将来的にはプライベートデータテーブルを開かなくても可能になるか、JMPがこれを行う機能を提供するでしょう。
以下は、関数形式のスクリプトです。 彼らは、dt_tempにCloseを追加することを提案しました。 このスクリプトにはWait(0)が必要な場合があります。あちこちで、しかしそれがそれらなしで働いたので、私は何も追加しませんでした。
Names Default To Here(1);
//https://community.jmp.com/t5/Discussions/Accessing-jmp-file-row-col-count-and-notes-without-opening-file/td-p/366316
//Function to get column count, rowcount, table notes and column names to associative array
getTableInfo = function({path_to_table}, {Default Local},
//Check that file exists
If(!File Exists(path_to_table),
return(Associative Array({"error"}, {"File not found"}));
);
//Initialize associative array
retVal = Associative Array(
{"name", "rowCount", "columnCount", "notes", "columnNames"},
{"", 0, 0, "", {}}
);
//Open datatable as columns only list
colNames = Open(path_to_table, "Column Names Only");
//Check that table has atleast one column
If(N Items(colNames) > 0,
retVal["columnNames"] = colNames;
retVal["columnCount"] = N Items(colNames);
dt_temp = Open(path_to_table, Select Columns([1]), Private);
retVal["name"] = dt_temp << get name();
retVal["rowCount"] = N Rows(dt_temp);
);
//Get notes from "Notes" table variable
retVal["notes"] = dt_temp << Get Table Variable("Notes");
Close(dt_temp, no save);
return(retVal);
);
//Examples with tables from $SAMPLE_DATA
aa_probe = getTableInfo("$SAMPLE_DATA/Probe.jmp");
Show(aa_probe["name"],aa_probe["rowCount"], aa_probe["columnCount"], aa_probe["notes"]);
Show(getTableInfo("$SAMPLE_DATA/Alcohol.jmp"));
Show(getTableInfo("$SAMPLE_DATA/Alcohol.jmpmissing"));Re:ファイルを開かずに.jmpファイルの行/列数とメモにアクセスする参加するメリットの1つを強調していただきありがとうございますディスカバリーサミット開発者に会う/専門家に尋ねる。
会話とJMP17でのこの投稿の結果として、データテーブルの行と列の数、列の名前、および存在する場合はNotesプロパティの内容を取得するJSLオプションを追加します。 。 ブラボー!