17の新機能: これまでのバージョンでは、レポートを置き換えたときに、既存のデータが使用されていました。バージョン17では、既存のデータを使用するか、または、データを更新するかを指定する必要があります。これまでの動作と同じにするには、Use Existing Dataオプションを使用してください。
JMP Liveにある既存のレポートの内容を置き換えるには、そのレポートのIDが必要です。JMP LiveでレポートIDを確認するには、そのレポートの投稿をクリックしてください。すると、投稿IDがURL内に表示されます。詳細アイコンをクリックして、投稿IDをコピーすることもできます。
既存のレポートを置き換えるときに、データをどのように更新するかを指定します。JMP Liveにある既存のデータをそのまま使用するか、JMP Liveにある既存のデータを更新するか、または、新しいデータテーブルを発行できます。
この例では、グラフビルダーのレポートおよびその元データを、JMP Liveの自分専用のスペースにあるフォルダに発行します。続けて、このレポートを新しいグラフビルダーのレポートで置き換えます。データは既存のものを使用します。
Names Default To Here(1);
// Big Classサンプルデータテーブルを開く。
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
/* グラフビルダーの2つのテーブルスクリプトを実行し、レポートへの参照をgbsmoother、gblineに格納する。 */
gbsmoother = dt << Run Script( "グラフビルダー 平滑線" );
gbline = dt << Run Script( "グラフビルダー 折れ線" );
// 自分専用のスペースとして使用するように指定する。
spaceToUse = "~";
// JMP Liveサーバーに接続する。
liveconnection = New JMP Live();
/* 自分専用のスペースにフォルダを作成し、タイトルと説明を指定する。確立したJMP Live接続を使い、jmpliveresultというJMP Liveオブジェクトを戻す。*/
jmpliveresult = liveconnection << Create Folder( Space( "~" ), Title( "置換の例 - 既存のデータを使用" ) );
// 結果をスクリプト可能にする。
folder = jmpliveresult << As Scriptable;
// フォルダのURLを取得する。
folderURL = folder << Get URL;
// gbsmootherレポートをcontentに追加する。
content = New JMP Live Content( gbsmoother );
// 新しく作成したフォルダにcontentを発行し、フォルダIDを取得する。
jmpliveresult = liveconnection << Publish( content, Folder( ID(folder << Get ID) ) );
// 作成した投稿のリストをスクリプト可能にする。
postlist = jmpliveresult << As Scriptable;
// 投稿の詳細を取得する。
bcPostId = "";
reportId = "";
For( i = 1, i <= postlist << Get Number Of Items, i += 1,
title = postlist[i] << Get Title();
type = postlist[i] << Get Type();
If( type == "Data",
bcPostId = postlist[i] << Get ID
);
If( type == "Report",
reportId = postlist[i] << Get ID
);
);
// gblineレポートをcontentに追加する。
content = New JMP Live Content( gbline );
// Replaceコマンドで、既存のデータを使用するように指定する。
jmpliveresult = liveconnection << Replace(
content,
ID( reportId ),
Use Existing Data( {{"Big Class", bcPostId}} )
);
// JMPのすべてのデータテーブルを保存せずに閉じる。
Close All( Data Tables, NoSave );
この例では、グラフビルダーのレポートおよびその元データを、JMP Liveの自分専用のスペースにあるフォルダに発行します。続けて、このレポートを新しいグラフビルダーのレポートで置き換え、既存のデータを更新します。
メモ: このデータを使用するJMP Liveの投稿がすべて更新されます。
Names Default To Here(1);
// Big Classサンプルデータテーブルを開く。
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
/* グラフビルダーの2つのテーブルスクリプトを実行し、レポートへの参照をgbsmoother、gblineに格納する。 */
gbsmoother = dt << Run Script( "グラフビルダー 平滑線" );
gbline = dt << Run Script( "グラフビルダー 折れ線" );
// 自分専用のスペースとして使用するように指定する。
spaceToUse = "~";
// JMP Liveサーバーに接続する。
liveconnection = New JMP Live();
/* 自分専用のスペースにフォルダを作成し、タイトルと説明を指定する。確立したJMP Live接続を使い、jmpliveresultというJMP Liveオブジェクトを戻す。*/
jmpliveresult = liveconnection << Create Folder( Space( "~" ), Title( "置換の例 - 既存のデータを更新" ) );
// 結果をスクリプト可能にする。
folder = jmpliveresult << As Scriptable;
// フォルダのURLを取得する。
folderURL = folder << Get URL;
// gbsmootherレポートをcontentに追加する。
content = New JMP Live Content( gbsmoother );
// 新しく作成したフォルダにcontentを発行し、フォルダIDを取得する。
jmpliveresult = liveconnection << Publish( content, Folder( ID(folder << Get ID) ) );
// 作成した投稿のリストをスクリプト可能にする。
postlist = jmpliveresult << As Scriptable;
// 投稿の詳細を取得する。
bcPostId = "";
reportId = "";
For( i = 1, i <= postlist << Get Number Of Items, i += 1,
title = postlist[i] << Get Title();
type = postlist[i] << Get Type();
If( type == "Data",
bcPostId = postlist[i] << Get ID
);
If( type == "Report",
reportId = postlist[i] << Get ID
);
);
// gblineレポートをcontentに追加する。
content = New JMP Live Content( gbline );
// Replaceコマンドで、既存のデータを更新するよう指定する。
jmpliveresult = liveconnection << Replace(
content,
ID( reportId ),
Update Existing Data( {{"Big Class", bcPostId}} )
);
// JMPのすべてのデータテーブルを保存せずに閉じる。
Close All( Data Tables, NoSave );
この例では、グラフビルダーのレポートおよびその元データを、JMP Liveの自分専用のスペースにあるフォルダに発行します。続けて、このレポートを新しいグラフビルダーのレポートで置き換え、既存のデータを新しいデータテーブルで置き換えます。
メモ: このデータを使用するJMP Liveの投稿がすべて更新されます。
Names Default To Here(1);
// Big Classサンプルデータテーブルを開く。
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
/* グラフビルダーの2つのテーブルスクリプトを実行し、レポートへの参照をgbsmoother、gblineに格納する。 */
gbsmoother = dt << Run Script( "グラフビルダー 平滑線" );
gbline = dt << Run Script( "グラフビルダー 折れ線" );
// 自分専用のスペースとして使用するように指定する。
spaceToUse = "~";
// JMP Liveサーバーに接続する。
liveconnection = New JMP Live();
/* 自分専用のスペースにフォルダを作成し、タイトルと説明を指定する。確立したJMP Live接続を使い、jmpliveresultというJMP Liveオブジェクトを戻す。*/
jmpliveresult = liveconnection << Create Folder( Space( "~" ), Title( "置換の例 – 新しいデータを発行" ) );
// 結果をスクリプト可能にする。
folder = jmpliveresult << As Scriptable;
// フォルダのURLを取得する。
folderURL = folder << Get URL;
// gbsmootherレポートをcontentに追加する。
content = New JMP Live Content( gbsmoother );
// 新しく作成したフォルダにcontentを発行し、フォルダIDを取得する。
jmpliveresult = liveconnection << Publish( content, Folder( ID(folder << Get ID) ) );
// 作成した投稿のリストをスクリプト可能にする。
postlist = jmpliveresult << As Scriptable;
// 投稿の詳細を取得する。
bcPostId = "";
reportId = "";
For( i = 1, i <= postlist << Get Number Of Items, i += 1,
title = postlist[i] << Get Title();
type = postlist[i] << Get Type();
If( type == "Data",
bcPostId = postlist[i] << Get ID
);
If( type == "Report",
reportId = postlist[i] << Get ID
);
);
// gblineレポートをcontentに追加する。
content = New JMP Live Content( gbline );
// Replaceコマンドを指定し、新しいデータを発行する。
jmpliveresult = liveconnection << Replace(
content,
ID( reportId ),
Publish New Data( {"Big Class"} )
);
// JMPのすべてのデータテーブルを保存せずに閉じる。
Close All( Data Tables, NoSave );