フィルター変更ハンドラー今ちょうど見つけた:フィルター変更ハンドラーの作成戻り値を変数に格納した場合にのみ機能します。
どして
filter << Make Filter Change Handler( f );
うまくいかない? その背後に、知っておく価値のある知識はありますか?
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Cities.jmp" );
dist = Distribution( Automatic Recalc( 1 ), Continuous Distribution( Column( :POP ) ) );
filter = dist << Local Data Filter( Add Filter( columns( :Region ) ) );
f = Function( {a}, Print( a ) );
// 1st version dosn't work - why?
// filter << Make Filter Change Handler( f );
rs = filter << Make Filter Change Handler( f );自動化とスクリプト作成Re: フィルター変更ハンドラーやあ@ホギ- これは最近他の人が思いついたものです。現在の動作の背後にある理由は、JSL シンボルがコールバックを送出するオブジェクトの所有者であるためです。 ウィンドウを作成するプラットフォームとは異なり、所有権を取得する明確な候補者は他にいません。これは、ボックスを作成しても親を与えたり、シンボルに保存したりしない場合、表示ボックスなどでも発生します。その場合は、あまり目立たなくなります。オプションの 1 つは、変数をウィンドウ スコープ シンボルに入れて、レポートから削除することです。
Re: フィルター変更ハンドラーやあ@ダンシコレ、 返信してくれてありがとう。
グラフ ビルダー オブジェクトから開かれたデータ フィルターは常に関数を 2 回トリガーしますが、データ フィルター コンテキスト ボックス内のデータ フィルターは関数を 1 回トリガーするだけであることに気付きました。
そして、無効にすると、
count excluded rows
「内部」データ フィルターの両方のデータ フィルター間のピンポンを確認できます。
戻り値 0 で関数呼び出しが行われる理由は何ですか?
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
countexcluded = 1;
New Window( "Big Class - Dashboard",
Data Filter Context Box(
Panel Box( "Data Filter Context Box: Data Filter + GraphBuilder",
H Splitter Box(
Size( 700, 400 ),
<<SIZES></SIZES>