JMP 13スクリプトが失敗する原因となるJMP14のJSLバグJMP 13で動作する同僚の端末でJMP 14の一連のJSLスクリプトを実行しようとすると、重大な問題が発生します。次の問題が発生しました:
- dt = Current Data Table()は1度だけ機能しているようです。dtが何であるかを特定し続けるか、dt <<を現在のデータテーブル()<<に変更する必要があります。
- BatchIDタグが次のエラーで失敗し続ける:
列BatchID数式が中断されました
名前未解決:グループ1回行:2操作:グループ、グループ/ * ### * /
数式評価エラーは無視されました - 上記のエラーは、前のタグ変数を削除した場合、各タググループ/年/週で発生します。
Clear Symbols();
//Before running this script, be sure to Recode any problems in the AliasName column.
//Enter the abbreviation for your Group, the year "YY", and the Week # "WW" for the experiment.
New Window("Experiment Details",
<<MODAL></MODAL>必要に応じて、データテーブルのスニペットを投稿できます。
下記のコードを参照してください
Re:JMP 13スクリプトが失敗する原因となるJMP14のJSLバグジェフ、構文に関するアドバイスをありがとう、これを将来のスクリプトに組み込みます。以前にスクリプトで何が行われていて、BatchIdタグが失敗したのか、まだわかりません。JMP 14へのアクセスをまだ待っているので、自分のマシンでコードをテストできます。
Re:JMP 13スクリプトが失敗する原因となるJMP14のJSLバグここで問題が発生してすみません。
一般に、Current Data Table()に依存することはお勧めできません。また、通常は簡単に回避できます。
あなたの特定のケースでは、あなたはあなたのスプリットの結果が現在のデータテーブルになることを期待しています。あなたが発見したように、それは保証されていません。
dt << Split( Split By( :Loops ), Split( :PV ), Group( :Datetime, :BatchID ), Remaining Columns( Keep( :EFT ) ) );
代わりに、分割の結果を変数dtに取り込む必要があります。
dt = dt << Split(
Split By( :Loops ),
Split( :PV ),
Group( :Datetime, :BatchID ),
Remaining Columns( Keep( :EFT ) )
);
//This sorts the data according to BatchID and then time.
//No longer need to set dt because it's already set above
//dt = Current Data Table();
dt = dt << sort( Replace table, By( BatchID ), Order( Ascending ) );