インタラクティブなユーザー入力用のドロップダウンメニューの作成<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />JMPスクリプトについて質問があります。 JMP11を使用しています。 JMPでインタラクティブなスクリプトを作成したい。 スクリプトには次の要素が含まれます-
1.スクリプトは、ユーザーにドキュメントの選択を求めるメッセージを表示します。 ユーザーはドキュメント名を選択します。
2.その選択に基づいて、残りのスクリプトはユーザーが選択したドキュメントに基づいてクエリを実行し、関連するグラフと表を作成します。
JMPで2位を達成する方法を知っています。 #1の場合、テキストボックスを表示し、ユーザーにドキュメント名全体を自分で入力させる方法を知っていますが、手動でエラーが発生する可能性があり、間違った名前を入力すると残りのクエリが機能しません。
したがって、ドキュメントテーブルへのデータベースクエリでは、アクティブなすべてのドキュメントがユーザーのドロップダウンリストとして表示され、ユーザーは表示されたドキュメントの1つだけを選択すると思います。 JMPスクリプトで行うことは可能ですか?
スクリプトをインタラクティブにするためのスクリプトマニュアルを調べましたが、ユーザーにテキスト全体を入力させるという選択肢しかありませんでした。 だからあなたに確認したかった。
事前にどうもありがとうございました!
Re:インタラクティブなユーザー入力用のドロップダウンメニューの作成少し拡張するだけjohn.ponteの投稿。これは私が受け取った例ですWK頻繁に変更されています。
/*サンプルデータテーブルを開きます*/
dt = Open( "$ SAMPLE_DATA \ Big Class.jmp");
/*固有の年齢のリストを抽出します*/
Summarize(a = By(:age));
Insert Into(a、 ""、1);
/*モーダルダイアログを作成します*/
新しいウィンドウ( "例"、
<<モーダル、
Hリストボックス(
/ *年齢を選択したら、2番目のComboBoxに対応する名前を入力します* /
パネルボックス( "年齢を選択:"、
cb1 =コンボボックス(
a、
<< SetFunction(
Function({this}、
selection = this << Get Selected();
r = dt << Get Rows Where(:age == Num(selection));
ageNames =:name;
Insert Into(ageNames、 ""、1);
cb2 << Set Items(ageNames);
)。
)。
)。
)、
/*ログ内の両方のコンボボックスから選択した値を出力します*/
パネルボックス( "名前を選択:"、
cb2 =コンボボックス(
{"<名前の選択>"}、
<< SetFunction(
Function({this}、
that = this << Get Selected();
Print(selection、that)
)。
)。
)。
)。
)。
);
sel = num(選択)
Re:インタラクティブなユーザー入力用のドロップダウンメニューの作成JSLでドロップダウンリストを作成するには、リストとコンボボックスを作成するだけです。 JSLのサンプルを次に示します。
私のリスト= {{
「<1つ選択>」 、
"1" 、
"二" 、
"三" 、
"四" 、
"五"
} ;
doListChoice = expr ((
選択= myListbox << getSelected ;
見せる((選択)。 ;
)。 ;
myListbox =コンボボックス((私のリスト、 doListChoice )。 ;
勝つ=新しい窓(( 「リストを表示」 、 myListbox )。 ;
これを実行すると、ウィンドウにドロップダウンリストが表示されます。 選択すると、ログで選択したものが表示されます。
問題は、どのようにリストを作成するかです。 ドキュメントがディレクトリに保存されているファイルの場合、ディレクトリからリストを作成するためのJSLをいくつか紹介します。 しかし、あなたのドキュメントはデータベースにあるように聞こえますか? その場合は、データベースにクエリを実行してリストを取得できると思います。 次に、そのリストを使用して、図のようにコンボボックスを作成します。 私はデータベースを使用して何もスクリプト化していないので、その分野の知識は弱いです。
これはあなたの質問に答えますか? または、データベースのクエリについてサポートが必要でしたか?