JSL を使用してユーザーが入力した値を列の値に変換私は JSL スクリプトの初心者です。
パネルボックスのエントリを使用して列を設定しようとしています。
以下のコードの一部では、入力された値 34 を取得して、Price Code という名前の列に値を入力しようとしています。 ただし、このコードを実行すると、空の列が返されます。
使ってみました値の取得 (数値)代わりに設定値(数値)それでも空の価格コード列が表示されます。
dataTable = New Table( "Data Table",
Add Rows( 3 ),
New Column( "Customer Name",
Character,
"Nominal",
Set Values( {"Jane", "Scott", "Abby"} )
),
New Column( "Dollar Amount",
"Continuous",
Set Values( [2002, 1323, 1954] )
)
);
popUp = New Window ("Number", << modal(),
Panel Box("Enter a Number", lineup box ( N col (1)),
number = Number edit box (34), ),
Panel Box ("Actions", H List Box ( Button Box ("OK", keep_going = 1;
Num = :number << Get;),
Button Box ("Cancel", keep_going = 0) ), ),
);
dataTable << New Column("Price Code",Numeric, "Continuous", Set Values(Num));
Re: JSL を使用してユーザーが入力した値を列の値に変換する次のようにして問題を解決できました
Try( :Sample[dt << get rows where( :Sample== "01a" )] = s1 );
Re: JSL を使用してユーザーが入力した値を列の値に変換するありがとうございます。sample という名前の列の文字列を置換したいのですが、次のスクリプトが機能しないのはなぜでしょうか?
myCol = dt << Column ("sample");
substitute into(myCol, "01a", s1);Re: JSL を使用してユーザーが入力した値を列の値に変換する元のスクリプトを修正するための少し異なるアプローチ
Names Default To Here( 1 );
dt = current data table();
dt << New Column("Sample Number",Character,Formula(Left(:Sample, Length(:Sample) - 1)),EvalFormula);
InputWindow = New Window( "Enter Input",
<<MODAL></MODAL>Re: JSL を使用してユーザーが入力した値を列の値に変換する参照のスコープが適切に設定されていません。 列サンプル番号を次のように参照します。
:サンプル番号
時間をかけてスクリプト ガイドを読んで、JSL のコンポーネントについての知識を深めてください。
ヘルプ==>書籍==>スクリプトガイドRe: JSL を使用してユーザーが入力した値を列の値に変換する更新するために、実際に行を指定することでテーブル内の値をユーザー入力に置き換えましたが、スクリプトはそこで終了しているようです。 「サンプルを名前で並べ替える」わけではありません。Re: JSL を使用してユーザーが入力した値を列の値に変換するご協力ありがとうございます。これが私の完全なスクリプトです。サンプル番号 01、02 などを置き換える teb1、teb2 などをまだ取得できません。 現在のスクリプトでは、ユーザー入力は最初の行、2 行目などのサンプル名とサンプル番号の値を置き換えるだけのようです。 ユーザー入力でサンプル番号 01、02、03、04、05、06 などを置き換えたいと考えています。
dt=New Table();
dt=current data table();
current data table() << Bring Window To Front;
Wait(0);
Main Menu("Paste With Column Names");
// Change the column name
Col1=column("X-Value");
Col1<<SET name=""></SET>Re: JSL を使用してユーザーが入力した値を列の値に変換するサンプル データ テーブルを見ることができないため、何が問題なのか完全にはわかりませんが、主な問題は、入力画面からデータ テーブルに値を書き込むための操作が何も行われていないことであることは確かです。以下は、データテーブルに値を書き込むコードの変更です。
Names Default To Here( 1 );
dt=open("$SAMPLE_DATA/big class.jmp");
dt<<NEW column=""></NEW>Re: JSL を使用してユーザーが入力した値を列の値に変換する申し訳ありませんが、言い換える必要があります。エラー メッセージは表示されませんが、データ テーブル内のサンプル名はユーザー入力に置き換えられていません。
Re: JSL を使用してユーザーが入力した値を列の値に変換するログのエラーメッセージとは何ですか?Re: JSL を使用してユーザーが入力した値を列の値に変換する助けてくれてありがとう。でもエラーが発生しました。どこが間違っているのでしょうか?
dt << New Column("Sample Number",Character,Formula(Left(:Sample, Length(:Sample) - 1)),EvalFormula);
dt = current data table();
Names Default To Here( 1 );
InputWindow = New Window( "Enter Input",
<<MODAL></MODAL>Re: JSL を使用してユーザーが入力した値を列の値に変換するここに 1 つの方法があります:
Names Default To Here( 1 );
InputWindow = New Window( "Enter Input",
<<MODAL></MODAL>
Re: JSL を使用してユーザーが入力した値を列の値に変換するこのようなもの? しかし、サンプル番号をユーザーが入力したサンプル名に置き換えるにはどうすればよいでしょうか?
// Create a new column for sample names
dt << New Column("Sample Number",Character,Formula(Left(:Sample, Length(:Sample) - 1)),EvalFormula);
dt = current data table();
InputWindow = New Window( "Enter Input", <<MODAL></MODAL>Re: JSL を使用してユーザーが入力した値を列の値に変換するラベルの String Col Box() を整理する Table Box() と入力値の Text Edit Box() の V List() を使用すると、よりクリーンでシンプルな UI を作成できると思います。
Re: JSL を使用してユーザーが入力した値を列の値に変換するこの解決策に関して疑問に思ったのですが、サンプル名に関してユーザーから入力を取得し、それをサンプル番号として設定するにはどうすればよいでしょうか?
dt << New Column("Sample Number",Character,Formula(Left(:Sample, Length(:Sample) - 1)),EvalFormula);
InputWindow = New Window( "Enter Input", <<MODAL></MODAL>Re: JSL を使用してユーザーが入力した値を列の値に変換するどうもありがとうテキネルソン。
Re: JSL を使用してユーザーが入力した値を列の値に変換するどうもありがとうテキネルソン
Re: JSL を使用してユーザーが入力した値を列の値に変換する簡単な2題の問題です。
1. 参照したとき
Num = :number << Get;
変数番号のスコープが間違っています。変数の前の「:」は、データ テーブルで「Number」という名前の列を探すように JSL に指示します。 空白のままにするか、「::」を指定すると、メモリ変数が検索されます。
2. メモリ変数「NUM」のスケーラー値をテーブルのすべての行に入力する場合は、次のように指定する必要があります。
dataTable << New Column( "Price Code", Numeric, "Continuous", Set each Value( Num ) );
したがって、完全なスクリプトは次のようになります。
Names Default To Here( 1 );
dataTable = New Table( "Data Table",
Add Rows( 3 ),
New Column( "Customer Name", Character, "Nominal", Set Values( {"Jane", "Scott", "Abby"} ) ),
New Column( "Dollar Amount", "Continuous", Set Values( [2002, 1323, 1954] ) )
);
popUp = New Window( "Number",
<<MODAL></MODAL>