同じ列名を持つ複数のテーブルを操作中にスクリプト内の列をロックするJSL で作業しているテーブルが 3 つあります。これらを dt1、dt2、dt3 と呼びます。
dt1には列A、B、C、Dがあります
dt2には列B、X、Y、Zがあります
dt3には列D、Q、R、Sがあります。
テーブル dt2 の B をロックしたいです。どうすればいいですか? 通常の ":B << lock (1)" スクリプトは、dt1 の B をロックします。
自動化とスクリプトウィンドウズRe: 同じ列名を持つ複数のテーブルを操作中にスクリプト内の列をロックするJMP にどのテーブルを使用するか指示しない場合は、現在のデータ テーブルが使用されます -> 列を参照するより堅牢な方法を使用します (データ テーブル参照を追加します)。Column(dtref, colname) が私の推奨方法です
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
Column(dt, "Age") << Lock(1);
dt:Ageを使用することもできます
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
dt:Age << Lock(1);
編集:
スクリプトガイドから、 スクリプトガイド > JSL ビルディングブロック > 名前解決のルール > スコープ演算子を確認してください。