ループに応じて dt オブジェクトの変数名を作成する方法やあ、
dt オブジェクトの変数名を作成する方法 - dt_valuesarray[i] ?
valuesarray = {};<BR />Summarize( dt_values, valuesarray = by( :Dis ) );<BR />
For( i = 1, i <= N Items( valuesarray ), i++,
dt_values << Select where( :Dis == valuesarray[i] );
<FONT color="#FF0000"><STRONG>dt_valuesarray[i]</STRONG></FONT>=Data Table( "Summary values" ) <<
Subset(
Output Table( "Summary " || valuesarray[i] || ),
Selected Rows( 1 ),
Selected columns only( 0 )
));
ありがとう
Re: ループに応じて dt オブジェクトの変数名を作成する方法@txnelson @マークベイリー、 ご協力ありがとうございました。
ボタンボックスの次のバージョンを待ちます:)
私はそれを「解決」する方法を見つけました -
アウトライン ボックス (閉じる) で使用すると、ボタン ボックスとしてシミュレートされます。
Re: ループに応じて dt オブジェクトの変数名を作成する方法ボタンは JMP オブジェクトです。 ボタンをクリックすると、JMP はボタンに関連付けられたスクリプトを評価します。 お使いのブラウザは、JSL を評価する方法を知りません。
JMP 14 では、HTML5 の個別の並行開発が開始されました。 プラットフォームを保存することによる HTML5 コンテンツの開発は、次のように続けられます。 @txnelson言った。 しかし、今は別の方法があります。 特集を見るJMPパブリック2 番目のアプローチを理解するための内容です。 コンテンツを保存する代わりに「公開」するには、JMP サーバーと追加の HTML5 コードが必要です。
このバージョンの JMP は、 JMPライブ私的使用のため。
Re: ループに応じて dt オブジェクトの変数名を作成する方法現在、インタラクティブ HTML またはボタン ボックスの HTML に他の JMP 機能はありますか?
実際、インタラクティブな HTML\HTML ページのソリューションを探しています。
このページには、Tab Box と Button Box が含まれます (上記の記述を手伝ってくれたように)。
この問題に対して提供できる解決策はありますか?Re: ループに応じて dt オブジェクトの変数名を作成する方法現在、すべての JMP 機能がインタラクティブ HTML で利用できるわけではありません。新しいリリースが出てくると、より多くの機能が利用可能になります。ボタン ボックス用に作成したスクリプトなどのユーザー指定のコードは、HTML 表示ではサポートされていません。
Re: ループに応じて dt オブジェクトの変数名を作成する方法JMPではうまく機能しますが、「インタラクティブHTML」ではタブをクリックできません-添付を参照してください。
ボタンは非表示です。

Re: ループに応じて dt オブジェクトの変数名を作成する方法ログは何と言っていますか?Re: ループに応じて dt オブジェクトの変数名を作成する方法やあ、
それは間違いなく単純な変更でした。
次回は必ずガイドを利用します
ありがとう!
これは機能しますが、ファイルを HTML として保存すると問題が発生し、ドリルダウン (「ここをクリック」) へのリンクが機能しません。
その理由は何ですか?
(私はガイドでそれを見つけられませんでした:))
Re: ループに応じて dt オブジェクトの変数名を作成する方法新しい関数を使い始めるときは、そのオプションと例を調べる必要があります。これは Tab() 関数にも当てはまります。Scripting Guide とその Tab() 関数の領域を読んでから、Scripting Index に移動し、Tab() 関数についてそこに示されているすべてのメッセージ (オプション) と例を調べる必要があります。これは、最後の例から、提供した出力に一致する新しい例に行う必要があった簡単な変更です。
Names Default To Here( 1 );
dt_values = Current Data Table();
dt_valuesarray = {};
Summarize( dt_values, valuesarray = by( :Dis ) );
For( i = 1, i <= N Items( valuesarray ), i++,
dt_values << Select where( :Dis == valuesarray[i] );
mydt = dt_values << Subset( Output Table( "Summary " || valuesarray[i] ), Selected Rows( 1 ), Selected columns only( 0 ) );
Insert Into( dt_valuesarray, mydt );
Current Journal() << Close window( nosave );
dt_valuesarray[i]() << save( "\\SUMMARY\" || valuesarray[i] || ".jmp " );
dt_valuesarray[i]() << journal;
Current Journal() << Save HTML( "\\SUMMARY\" || valuesarray[i] || ".html" );
Current Journal() << Close window( nosave );
);
//------------------ new window
charts = {};
ob = Outline Box( "Summary Data", Outline Box( "Summary Tables", myTab = Tab Box() ) );
For( i = 1, i <= N Items( valuesarray ), i++,
myTab << Insert(
valuesarray[i],
Eval(
Parse(
"charts[" || Char( i ) ||
"] = Charts_1 = V List Box(
V List Box( dt_valuesarray[i] << get as report() ),
Outline Box( \!"Drill Down Analysis\!", BB = Button Box( \!"Click Here\!", Open( \!"\\SUMMARY\"
|| valuesarray[i] || ".html\!" ))));"
)
);
//dt_vlist << append( );
)
);
dt_tables = New Window( "Tables", ob );Re: ループに応じて dt オブジェクトの変数名を作成する方法@txnelson返信ありがとうございます - 今すぐ試してみます。
すみません、前のコメントに写真(最終出力のイメージ)を追加しましたが、なぜか存在しないので、再度追加しました。

Re: ループに応じて dt オブジェクトの変数名を作成する方法最終的な出力がどうあるべきかをあなたが想像していたのかよくわからないので、推測する必要がありました.私が見つけた1つの問題は、「valuesarray [I]」を参照したいと思ったときに、Data Table(「F」)またはData Table(「M」)を返す「dt_valuesarray [I]」への参照を使用していたことです。 ]" は "F" または "M" を返します。
また、For() ループ内で、dt_vlist として参照される V リスト ボックスを作成しました。これが、結果のコピーを 1 つだけ取得していた理由です。For() ループを通過するたびに、ds_vlist が最初から作成されていました。
ボタン ボックスのスクリプト内で、valuesarray[I] を参照していました。ここで重要なのは、「I」の値がボタン プッシュ時に評価されることです。つまり、ボタンが押されたときの I の値によって、開かれるファイルが決まります。そこで、ボタンボックス作成時の値をハードコードに変更しました。
最後に、ファイルを保存するパスに //SUMMARY を指定していました。 これがあなたのコンピュータの問題かどうかはわかりません。//SUMMARY が適切な参照である場合は、SUMMARY の後に \ を追加して、それとファイル名の区切りをオペレーティング システムに示す必要があると思います。
Names Default To Here( 1 );
dt_values = Current Data Table();
dt_valuesarray = {};
Summarize( dt_values, valuesarray = by( :Dis ) );
For( i = 1, i <= N Items( valuesarray ), i++,
dt_values << Select where( :Dis == valuesarray[i] );
mydt = dt_values << Subset( Output Table( "Summary " || valuesarray[i] ), Selected Rows( 1 ), Selected columns only( 0 ) );
Insert Into( dt_valuesarray, mydt );
Current Journal() << Close window( nosave );
dt_valuesarray[i]() << save( "\\SUMMARY\" || valuesarray[i] || ".jmp " );
dt_valuesarray[i]() << journal;
Current Journal() << Save HTML( "\\SUMMARY\" || valuesarray[i] || ".html" );
Current Journal() << Close window( nosave );
);
//------------------ new window
charts = {};
dt_vlist = V List Box();
For( i = 1, i <= N Items( valuesarray ), i++,
eval(parse(
"charts[" || char(i) || "] = Charts_1 = V List Box(
V List Box( dt_valuesarray[i] << get as report() ),
Outline Box( \!"Drill Down Analysis\!", BB = Button Box( \!"Click Here\!", Open( \!"\\SUMMARY\" || valuesarray[i] || ".html\!" ))));" ));
dt_vlist << append( Outline Box( "Summary Data", Outline Box( "Summary Tables", Tab Box( valuesarray[i], charts[i] ) ) ) );
);
dt_tables = New Window( "Tables", dt_vlist );
Re: ループに応じて dt オブジェクトの変数名を作成する方法やあ@txnelson 、
私をサポートしてもらえますか?
Re: ループに応じて dt オブジェクトの変数名を作成する方法@txnelson 、
あなたが解決した問題に加えて、
保存したテーブルで使用しようとしています。
私は新しいウィンドウを使用しており、各テーブルにはタブボックスがあります
問題は次のとおりです。
1. 1 つのテーブルに対して 1 つのタブのみが開きます - 私の場合は 2 つのタブである必要があります
2. 保存したときにボタン ボックスでファイルが開かなかった
dt_values = Current Data Table();
dt_valuesarray = {};
Summarize( dt_values, valuesarray = by( :Dis ) );
For( i = 1, i <= N Items( valuesarray ), i++,
dt_values << Select where( :Dis == valuesarray[i] );
mydt = dt_values << Subset(
Output Table( "Summary " || valuesarray[i] ),
Selected Rows( 1 ),
Selected columns only( 0 )
);
Insert Into( dt_valuesarray, mydt );
Current Journal() << Close window( nosave );
dt_valuesarray [i]() << save( "\\Summary "|| valuesarray[i] ||".jmp " );
dt_valuesarray [i]() << journal;
Current Journal() << Save HTML( "\\Summary "|| valuesarray[i] ||" .html" );
Current Journal() << Close window( nosave );
);
//------------------ new window
charts = {};
For( i = 1, i <= N Items( valuesarray), i++,
charts[i] = Charts_1 = V List Box(
V List Box( dt_valuesarray[i] << get as report() ),
Outline Box( "Drill Down Analysis",
BB = Button Box( "Click Here",
Open( "\\Summary "|| dt_valuesarray[i] ".html" )
)
)
);
dt_vlist= V List Box(
Outline Box( "Summary Data",
Outline Box( "Summary Tables",
TabBox( dt_valuesarray[i], charts[i] ) ) )
));
dt_tables = New Window( "Tables", dt_vlist);
<SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Capture.PNG" style="width: 354px;"><span class="lia-inline-image-display-wrapper" image-alt="Capture.PNG" style="width: 354px;"><img src="https://us.v-cdn.net/6038925/uploads/images/23753i8D6057CAEB44C940/Capture.PNG" role="button" title="Capture.PNG" alt="Capture.PNG" /></span></SPAN>
迅速なサポートをありがとうございました
Re: ループに応じて dt オブジェクトの変数名を作成する方法すごい!
本当にありがとう@txnelson
Re: ループに応じて dt オブジェクトの変数名を作成する方法これが、あなたがやろうとしていることを処理する方法です。
dt_values = Current Data Table();
dt_valuesarray = {};
Summarize( dt_values, valuesarray = by( :Dis ) );
For( i = 1, i <= N Items( valuesarray ), i++,
dt_values << Select where( :Dis == valuesarray[i] );
mydt = dt_values << Subset(
Output Table( "Summary " || valuesarray[i] ),
Selected Rows( 1 ),
Selected columns only( 0 )
);
Insert Into( dt_valuesarray, mydt );
);
show(dt_valuesarray);