- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ダイレクトリンクを取得
- 印刷
- 不適切なコンテンツを報告
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));
この投稿のオリジナルは 、English (US) で書かれており、ユーザビリティ向上のため自動翻訳機能を使用して表示しています。コメントを投稿すると、オリジナルの言語(English (US))やご指定の言語 でも表示されます。
受理された解決策
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ダイレクトリンクを取得
- 印刷
- 不適切なコンテンツを報告
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",
<
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ダイレクトリンクを取得
- 印刷
- 不適切なコンテンツを報告
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",
<
この投稿のオリジナルは 、English (US) で書かれており、ユーザビリティ向上のため自動翻訳機能を使用して表示しています。コメントを投稿すると、オリジナルの言語(English (US))やご指定の言語 でも表示されます。
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ダイレクトリンクを取得
- 印刷
- 不適切なコンテンツを報告
Re: JSL を使用してユーザーが入力した値を列の値に変換する
どうもありがとうテキネルソン
この投稿のオリジナルは 、English (US) で書かれており、ユーザビリティ向上のため自動翻訳機能を使用して表示しています。コメントを投稿すると、オリジナルの言語(English (US))やご指定の言語 でも表示されます。
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ダイレクトリンクを取得
- 印刷
- 不適切なコンテンツを報告
Re: JSL を使用してユーザーが入力した値を列の値に変換する
どうもありがとうテキネルソン。
この投稿のオリジナルは 、English (US) で書かれており、ユーザビリティ向上のため自動翻訳機能を使用して表示しています。コメントを投稿すると、オリジナルの言語(English (US))やご指定の言語 でも表示されます。
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ダイレクトリンクを取得
- 印刷
- 不適切なコンテンツを報告
Re: JSL を使用してユーザーが入力した値を列の値に変換する
この解決策に関して疑問に思ったのですが、サンプル名に関してユーザーから入力を取得し、それをサンプル番号として設定するにはどうすればよいでしょうか?
dt << New Column("Sample Number",Character,Formula(Left(:Sample, Length(:Sample) - 1)),EvalFormula);
InputWindow = New Window( "Enter Input", <
この投稿のオリジナルは 、English (US) で書かれており、ユーザビリティ向上のため自動翻訳機能を使用して表示しています。コメントを投稿すると、オリジナルの言語(English (US))やご指定の言語 でも表示されます。
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ダイレクトリンクを取得
- 印刷
- 不適切なコンテンツを報告
Re: JSL を使用してユーザーが入力した値を列の値に変換する
ラベルの String Col Box() を整理する Table Box() と入力値の Text Edit Box() の V List() を使用すると、よりクリーンでシンプルな UI を作成できると思います。
この投稿のオリジナルは 、English (US) で書かれており、ユーザビリティ向上のため自動翻訳機能を使用して表示しています。コメントを投稿すると、オリジナルの言語(English (US))やご指定の言語 でも表示されます。
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ダイレクトリンクを取得
- 印刷
- 不適切なコンテンツを報告
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", <
この投稿のオリジナルは 、English (US) で書かれており、ユーザビリティ向上のため自動翻訳機能を使用して表示しています。コメントを投稿すると、オリジナルの言語(English (US))やご指定の言語 でも表示されます。
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ダイレクトリンクを取得
- 印刷
- 不適切なコンテンツを報告
Re: JSL を使用してユーザーが入力した値を列の値に変換する
ここに 1 つの方法があります:
Names Default To Here( 1 );
InputWindow = New Window( "Enter Input",
<
この投稿のオリジナルは 、English (US) で書かれており、ユーザビリティ向上のため自動翻訳機能を使用して表示しています。コメントを投稿すると、オリジナルの言語(English (US))やご指定の言語 でも表示されます。
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ダイレクトリンクを取得
- 印刷
- 不適切なコンテンツを報告
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",
<
この投稿のオリジナルは 、English (US) で書かれており、ユーザビリティ向上のため自動翻訳機能を使用して表示しています。コメントを投稿すると、オリジナルの言語(English (US))やご指定の言語 でも表示されます。
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ダイレクトリンクを取得
- 印刷
- 不適切なコンテンツを報告
Re: JSL を使用してユーザーが入力した値を列の値に変換する
この投稿のオリジナルは 、English (US) で書かれており、ユーザビリティ向上のため自動翻訳機能を使用して表示しています。コメントを投稿すると、オリジナルの言語(English (US))やご指定の言語 でも表示されます。