「ソース」を再実行するときにテーブル スクリプトのコピーを自動化するこんにちは、
私は、継続的に更新されるデータベースを Excel で作成しています。新しい行と列が定期的に追加され、既存の行には新しいデータが時々追加されます。そのため、対応する下流の JMP テーブルを更新するために、「ソース」スクリプトを利用し始めました。
質問ですが、ソース スクリプトを実行するときに、既存のテーブル スクリプトを更新されたテーブルに持ち込む方法はありますか? JMP テーブルにはグラフ ビルダー スクリプトがいくつか保存されており、ソース スクリプトが実行されるたびに、それらを新しいテーブルに自動的にコピーしたいと考えています。JMP バージョン 17 を使用しています。
ありがとう!
ウィンドウズRe: 「ソース」を再実行するときにテーブル スクリプトのコピーを自動化するコミュニティへようこそ。
以下は、ソース テーブル スクリプトを除いて、すべてのテーブル スクリプトを 1 つのデータ テーブルから別のデータ テーブルにコピーするために必要なコードの例です。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
names=dt<<GET table="" script="" names=""></GET>
<P>実行しようとしていることを実行するには、この方法論をソース スクリプトに追加するか、別のスクリプトとして実行する必要があります。</P>
<P>このスクリプトのさまざまな要素の詳細と例は、[ヘルプ]プルダウンメニューの[スクリプトインデックス]で確認できます。</P>Re: 「ソース」を再実行するときにテーブル スクリプトのコピーを自動化するここに他のオプションがあります
Names Default To Here(1);
<BR />// Depending on your source script, there are different options of handling
// getting the reference to dt1 and dt2
dt1 = Open("$SAMPLE_DATA/Big Class.jmp");
dt2 = Open("$SAMPLE_DATA/Big Class Families.jmp");<BR />
dt2 << Delete Scripts(dt2 << Get Table Script Names); // for demo purposes
wait(1); // for demo purposes
<BR />t_scripts = dt1 << Get Table Script Names;
Remove From(t_scripts, Contains(t_scripts, "Source"), 1);<BR />
For Each({t_script}, t_scripts,
Eval(EvalExpr(
dt2 << New Script(t_script,
Expr(dt1 << Get Script(t_script));
);
));
);
wait(0);Re: 「ソース」を再実行するときにテーブル スクリプトのコピーを自動化する別のアプローチ:
JMP 18 へのアップグレードは、すべてのライセンス ユーザーに無料で提供されます。
JMP 18 では、ソース スクリプトの他に、更新スクリプトがあります。

新しいテーブルを作成する代わりに、テーブル自体を更新します。手動で追加されたスクリプトは残ります。
「ソース スクリプト」と比較した「テーブルの更新」の利点:
ソース スクリプトは「脆弱」です - JMP は警告なしに上書きします:
更新と連結: ソース スクリプトの衝突
短所:
テーブルを更新すると手動で追加された列が削除されます
https://community.jmp.com/t5/JMP-Wish-List/Wizard-to-update-Excel-files-in-place-no-code-solution/idc-p/761983/highlight/true#M5540
Re: 「ソース」を再実行するときにテーブル スクリプトのコピーを自動化する先ほど、JMP に関するあなたのヘルプをあらゆるところで目にし、本当に感謝しているとコメントを残しました。でも、本当に。あなたのヘルプをあらゆるところで目にし、とても役立っています。人々を助けるためにあなたがしていることすべてに感謝します。