...
概要
コンテンツのロードを詳細にコントロールしたり、レポートまたはダッシュボードを適宜呼び出したり、(ユーザー入力に基づいて)表示オプションをダイナミックに設定したりする場合は、独自のスクリプトでAPIを直接呼び出すことができます。コンテンツをロード詳細に制御したり、必要に応じてレポートやダッシュボードを呼び出したり、表示オプションをユーザー入力に基づき動的に設定したりする場合は、独自のスクリプトからAPIを直接呼び出すことができます。
API呼び出しを実行する前に、Javascript APIを含める必要があります:どのAPIを呼び出すよりも前に、Javascript APIを含めなくてはいけません。
Code Block |
---|
|
<script src="http://localhost/JsAPI" type="text/javascript"></script>
|
version
パラメーターを使用して、特定バージョンのAPIをリクエストすることができます:バージョンパラメーターを使用することで、特定のバージョンのAPIが要求されることがあります。
Code Block |
---|
|
<script src="http://localhost/JsAPI?version=2.1" type="text/javascript"></script>
|
ブラウザーがAPIをロードできない場合、レポートまたはダッシュボードをロードするすべての呼び出しが失敗します。APIが正常にロードされたかどうかを検出するには、変数windowAPIのロードにブラウザを使用することができない場合、レポートやダッシュボードをロードするすべての呼び出しが失敗します。APIが正常にロードされるか検出したい場合、変数window.yellowfinが使用可能かどうかを確認します:yellowfin が使用可能かどうかを確認します。
Code Block |
---|
|
<script src="http://localhost/JsAPI" type="text/javascript"></script>
<script type="text/javascript">
if (!window.yellowfin) {
alert('Error loading API');
}
</script>
|
サーバー情報
APIをロードすると、一部のサーバー情報を使用できるようになります:APIロード後、利用できるようにばるサーバ情報があります。
Expand |
---|
|
| 説明 | yellowfin.apiVersion
| サーバーで使用しているAPIのバージョンです。 | yellowfin.baseURL
| サーバー上のAPIに接続するために使用されるベースとなるURLです。サーバー上のAPIに接続するために使用されるBase URLです。 | yellowfin.serverInfo.releaseVersion
| サーバーで実行しているYellowfinのリリースバージョンです(例:「6.1」)。 | yellowfin.serverInfo.buildVersion
| サーバーで実行しているYellowfinのビルドバージョンです(例:「20120601」)。 | yellowfin.serverInfo.javaVersion
| サーバーにインストールされているJavaのバージョンです。 | yellowfin.serverInfo.operatingSystem
| サーバーで実行しているオペレーティングシステムです。サーバーで実行しているOSです。 | yellowfin.serverInfo.operatingSystemArch
| サーバーのオペレーティングシステムアーキテクチャです。サーバーのOSのアーキテクチャです。 | yellowfin.serverInfo.operatingSystemVersion
| サーバーのオペレーティングシステムバージョンです。サーバーのOSバージョンです。 | yellowfin.serverInfo.schemaVersion
| Yellowfin構成データベースのスキーマバージョンです。 |
|
...
Code Block |
---|
|
<script src="http://localhost/JsAPI" type="text/javascript"></script>
<script type="text/javascript">
if (window.yellowfin) {
alert('Yellowfin API loaded. Version: ' + yellowfin.apiVersion);
}
</script>
|
レポートのロード
レポートは、「yellowfin.loadReport関数を呼び出してロードします:loadReport 」関数を呼び出すことで、レポートがロードされます。
Code Block |
---|
|
yellowfin.loadReport(options);
|
オプションは、Javascriptオブジェクトとして関数に渡されます。ロードしているレポートのレポート識別子、レポートをロードするHTML要素のelementId(またはelementそのもの)、およびレポートの表示方法を変更するその他のオプションなどがあります。使用可能なオプションは以下のとおりです:オプションは、「Javascript object」として関数に渡されます。こちらには、レポートをロードするレポート識別子、レポートをロードするHTML要素のelementId(または、elementそのもの)、レポートの表示方法を変更するその他のオプションが含まれます。使用可能なオプションは、以下の通りです。
Expand |
---|
|
オプション | 説明 | reportUUID
| reportUUID 、reportId 、wsName のいずれかが存在する必要があります。のいずれかが、存在する必要があります。 ロードするダッシュボードを識別する固有のIDです。
| reportId
| reportUUID 、reportId 、wsName のいずれかが存在する必要があります。のいずれかが、存在する必要があります。 ロードするレポートを識別する数値のreportIdです。代わりにロードするレポートを識別する数値reportIdです。代わりにreportUUID パラメーターを使用することをお勧めします。
| wsName
| reportUUID 、reportId 、wsName のいずれかが存在する必要があります。のいずれかが、存在する必要があります。 ロードするレポートを識別するWebサービス名です。代わりにreportUUID パラメーターを使用することをお勧めします。
| elementId
| elementId と、または element のいずれかが存在する必要があります。のいずれかが、存在する必要があります。 レポートをロードするHTML要素のIDです。
| element elementId
| とelementId、または element のいずれかが存在する必要があります。のいずれかが、存在する必要があります。 レポートをロードするHTML要素です。 | showTitle
| デフォルト:デフォルトでは、「true」に設定されています。
こちらを「false に設定すると、レポート上部のタイトルバーが省略されます。タイトルバーに含まれるすべての対話型ボタンも省略されます。」 に設定することで、レポート上部のタイトルバーが省略されます。タイトルバーに含まれるすべてのインタラクティブボタンも省略されます。 | showInfo
| デフォルト:デフォルトでは、「true」に設定されています。
こちらを「false に設定すると、タイトルバーの情報ボタンが省略されます。」 に設定することで、タイトルバーの情報ボタンが省略されます。 | showFilters
| デフォルト:デフォルトでは、「true」に設定されています。
こちらを「false に設定すると、タイトルバーのフィルターボタンが省略されます。ユーザープロンプトフィルターは表示されません。」 に設定することで、タイトルバーのフィルターボタンが省略されます。ユーザープロンプトフィルターは表示されません。 | showSections
| デフォルト:デフォルトでは、「true」に設定されています。
こちらを「false に設定すると、タイトルバーのセクションボタンが省略されます(タブ形式または複数ページのセクションを使用するレポートの場合)。」 に設定することで、タイトルバーのセクションボタンが省略されます(タブ形式、または複数ページのセクションを使用するレポートの場合)。 | showSeries
| デフォルト:デフォルトでは、「true」に設定されています。
こちらを「false に設定すると、タイトルバーのシリーズボタンが省略されます(シリーズ選択オプションを使用するレポートの場合)。」 に設定することで、タイトルバーのシリーズボタンが省略されます(シリーズ選択オプションを使用するレポートの場合)。 | showPageLinks
| デフォルト:デフォルトでは、「true」に設定されています。
こちらを「false に設定すると、タイトルバーの前のページ」 に設定することで、タイトルバーの前のページ/次のページボタンが省略されます(複数ページを使用するレポートの場合)。 | showExport
| デフォルト:デフォルトでは、「true」に設定されています。
こちらを「false に設定すると、タイトルバーのエクスポートボタンが省略されます。」 に設定することで、タイトルバーのエクスポートボタンが省略されます。 | height
| デフォルト:囲み要素の寸法から自動的に検出します。デフォルトでは、囲み要素のディメンション(次元)から自動的に検出します。 レポートの高さを上書きするには、数値を設定します。レポートの高さを上書きするためには、こちらに数値を設定します。 | width
| デフォルト:囲み要素の寸法から自動的に検出します。デフォルトでは、囲み要素のディメンション(次元)から自動的に検出します。 レポートの幅を上書きするには、数値を設定します。レポートの幅を上書きするためには、こちらに数値を設定します。 | display
| デフォルト:デフォルトでは、「chart」に設定されています。
こちらを「table」 に設定すると、レポートの初期状態がテーブルで表示されます。
こちらを「chart」 に設定すると、レポートの初期状態がグラフで表示されます。 テーブルとグラフの両方が使用可能でないレポートでは無視されます。こちらの設定は、テーブルとグラフの両方が使用可能でないレポートでは無視されます。 | fitTableWidth
| デフォルト:デフォルトでは、「true」に設定されています。
こちらを「true に設定すると、レポートを囲み要素の幅に合わせようとします。」 に設定することで、レポートを囲み要素の幅に合わせようとします。 | canChangeDisplay
| デフォルト:デフォルトでは、「true」に設定されています。
こちらを「false に設定すると、ユーザーがグラフ表示とテーブル表示を切り替えできるボタンが省略されます。」 に設定することで、ユーザーがグラフ表示とテーブル表示を切り替えることができるボタンが省略されます。 | filters
| レポートに渡すフィルター値が格納されているオブジェクトに設定します。 | username
| これをこちらを「password パラメーターと共に設定すると、レポートをロードするときに特定のユーザーとして認証されます。ユーザーは制限されているレポートを表示する前に、ログインの詳細を入力する必要がありません。パラメーター」と共に設定することで、レポートをロードするときの特定のユーザーとして認証されます。ユーザーは制限されているレポートを表示する前に、ログイン詳細を入力する必要がありません。 | password
| これをこちらを「username パラメーターと共に設定すると、レポートをロードするときに特定のユーザーとして認証されます。パラメーター」と共に設定すると、レポートをロードするときの特定のユーザーとして認証されます。 |
|
例
ユニバーサルIDで指定された要素にレポートをロードし、初期の表示オプションをいくつか設定する例を示します:こちらの例は、ユニバーサルIDに指定された要素のレポートをロードし、初期表示オプションのいくつかを設定します。
Code Block |
---|
|
var options = {};
options.reportUUID = 'e5e5aaf3-c3b8-4f9b-8280-e21e4d848e63';
options.elementId = 'myReport';
options.showFilters = 'false';
options.showSeries = 'false';
options.display = 'chart';
options.fitTableWidth = 'false';
yellowfin.loadReport(options);
|
匿名オプションオブジェクトを使用して同様の処理を行う例を示します:こちらの例は、匿名オプションオブジェクトを使用して、同様の処理を実行します。
Code Block |
---|
|
yellowfin.loadReport({
reportUUID: 'e5e5aaf3-c3b8-4f9b-8280-e21e4d848e63',
elementId: 'myReport',
showFilters: 'false',
showSeries: 'false',
display: 'chart',
fitTableWidth: 'false'
});
|
IDではなく要素を直接渡す例を示します:こちらの例は、IDではなく、elementを直接渡します。
Code Block |
---|
|
yellowfin.loadReport({
reportUUID: 'e5e5aaf3-c3b8-4f9b-8280-e21e4d848e63',
element: document.getElementById('myReport')
});
|
レポートフィルターのロード
レポートで使用されるフィルターは、「yellowfin.reports.loadReportFilters関数を使用してロードすることができます。この関数を使用するには、メインAPIと共にレポートサブAPIをページにロードします:」関数を呼び出すことで、レポートが使用するフィルターをロードすることができます。こちらの関数を使用するためには、メインAPIと一緒に、レポートサブAPIをページにロードします。
Code Block |
---|
|
<script src="http://localhost/JsAPI" type="text/javascript"></script>
<script src="http://localhost/JsAPI?api=reports" type="text/javascript"></script>
|
その後「loadReportFilters関数を呼び出します:」関数を呼び出します。
Code Block |
---|
|
yellowfin.reports.loadReportFilters(reportId, callback, arg);
|
1番目の引数はレポートの固有識別子で、reportUUID
とreportId
のいずれかです。可能な限りreportUUID
を使用することをお勧めします。2番目の引数はコールバック関数で、レポートのフィルターがロードされたときにAPIによって呼び出されます。コールバック関数の1番目の引数は、レポートのフィルターリストです。呼び出す関数の2番目の引数はloadReportFilters
関数に渡される3番目の引数になります(指定した場合)。
呼び出す関数の1番目の引数として返されるフィルターオブジェクトは、レポートで使用されるあらゆるフィルターが格納された配列です。配列の各要素は、そのフィルターに関する情報が格納されたオブジェクトです。これらのフィルターオブジェクトには以下のプロパティがあります:最初の引数は、レポート固有の識別子であり、「reportUUID」、または「reportId」のいずれかです。可能であれば、「reportUUID」の使用をお勧めします。二番目の引数は、コールバック関数であり、レポートフィルターのロード時に、APIにより呼び出されます。コールバック関数への最初の引数は、レポート内のフィルターの一覧です。コールバック関数への二番目の引数は、loadReportFilters関数へ提供される三番目の引数です(指定されている場合)。
コールバック関数への最初の引数として返されるフィルターオブジェクトは、レポート内で使用されるすべてのフィルターが格納された配列です。配列内の各要素は、フィルター情報を含むオブジェクトです。これらのフィルターオブジェクトは、以下のプロパティを含みます。
Expand |
---|
|
プロパティ | 説明 | filterUUID
| フィルターの固有識別子です。 | filterId
| フィルターの数値識別子です。 | nativeType
| フィルターのネイティブデータタイプです。 | description
| フィルターの説明です。 | operator
| フィルターで使用される演算子です。 | display
| フィルターで使用される表示スタイルです。 | dependencies レポートの他のフィルターがこのフィルターに従属している場合はtrueに設定します。
| レポートの他のフィルターが、こちらのフィルターに従属している場合は、「true」に設定します。 | list フィルターがリストスタイル(複数の値を許可する)の場合はtrueに設定します。
| フィルターが「一覧」スタイル(複数の値を許可する)の場合は、「true」に設定します。 | between フィルターが範囲スタイル(開始値と終了値が必要)の場合はtrueに設定します。
| フィルターが「範囲」スタイル(開始値と終了値が必要)の場合は、「true」に設定します。 | listValues
| フィルターをドロップダウンリストとして表示する場合は、このプロパティに使用可能なオプションの一覧が格納されます。フィルターをドロップダウンリストとして表示する場合は、こちらのプロパティに使用可能なオプションの一覧が格納されます。 |
|
例
レポートフィルターをロードしてユーザーに表示する例を示します:こちらの例は、レポートフィルターをロードし、ユーザーに表示します。
Code Block |
---|
|
function filterCallback(filters) {
for (var i = 0; i < filters.length; i++) {
alert('Filter ' + filters[i].description + ' (' +
filters[i].filterUUID + '), display style: ' +
filters[i].display);
}
}
yellowfin.reports.loadReportFilters(
'e5e5aaf3-c3b8-4f9b-8280-e21e4d848e63', filterCallback);
|
この関数は、使用可能なフィルターをロードしてloadReport
関数に戻し、レポートがページにロードされるときのレポートのフィルター初期値を設定するために使用できます。例:こちらの関数は、使用可能なフィルターのロードに使用され、ページにロードされた際の、レポートの初期フィルター値を設定するために、「loadReportfunction」へ渡されます。
例:
Code Block |
---|
|
function filterCallback(filters) {
var filterValues = {};
for (var i = 0; i < filters.length; i++) {
if (filters[i].description == 'Country') {
filterValues[filters[i].filterUUID] = 'Australia';
} else if (filters[i].description == 'Start Date') {
filterValues[filters[i].filterUUID] = '2011-01-01';
} else if (filters[i].description == 'Invoiced Amount') {
filterValues[filters[i].filterUUID] = 6400;
}
}
// set up other options to load the report
var options = {};
options.reportUUID = 'e5e5aaf3-c3b8-4f9b-8280-e21e4d848e63';
options.elementId = 'myReport';
// add the filter values
options.filters = filterValues;
// load the report
yellowfin.loadReport(options);
}
yellowfin.reports.loadReportFilters(
'e5e5aaf3-c3b8-4f9b-8280-e21e4d848e63', filterCallback);
|
loadReport
関数に渡されるフィルター値は、上記のようにシンプルな値として指定する必要があります。フィルターがリストスタイルの場合は、配列を使用して複数の値を設定できます:「loadReport 」関数に渡されるフィルター値は、上記のように単一の値に指定されていなくてはいけません。フィルターが一覧スタイルの場合、配列を使用して複数の値が設定されます。
Code Block |
---|
|
filterValues[filterUUID] = ['Australia', 'China', 'Italy'];
|
フィルターが範囲スタイルの場合は、配列を使用して開始値および終了値を設定する必要があります:フィルターが範囲スタイルの場合、配列を使用して、開始と終了の値が設定されます。
Code Block |
---|
|
filterValues[filterUUID] = [500, 600];
|
「loadReport関数に渡される」関数に渡される「options.filters要素は、 」要素は、「filterUUIDまたは」、または「filterIdでキー設定された値を含む必要があります。可能な限り」のいずれかによりキーが付与された値を含まなければなりません。可能であれば、「filterUUIDを使用することをお勧めします。」の使用をお勧めします。
ダッシュボードのロード
ダッシュボードは、「yellowfin.loadDash関数を呼び出してロードします:loadDash 」関数を呼び出すことで、ダッシュボードをロードします。
Code Block |
---|
|
yellowfin.loadDash(options);
|
オプションは、Javascriptオブジェクトとして関数に渡されます。ロードしているダッシュボードの識別子、ダッシュボードをロードするHTML要素のelementId(またはelementそのもの)、およびダッシュボードの表示方法を変更するその他のオプションなどがあります。使用可能なオプションは以下のとおりです:オプションは、「Javascript object」として関数に渡されます。こちらには、ダッシュボードをロードするレポート識別子、ダッシュボードをロードするHTML要素のelementId(または、elementそのもの)、ダッシュボードの表示方法を変更するその他のオプションが含まれます。使用可能なオプションは、以下の通りです。
Expand |
---|
|
オプション | 説明 | dashUUID
| 存在する必要があります。必ず存在する必要があります。 ロードするダッシュボードの固有識別子です。ロードするダッシュボードを識別する固有のIDです。 | elementId
| elementId と、またはelement のいずれかが存在する必要があります。のいずれかが、存在する必要があります。 ダッシュボードをロードするHTML要素のIDです。
| element
| elementId と、または element のいずれかが存在する必要があります。のいずれかが、存在する必要があります。 ダッシュボードをロードするHTML要素です。
| showTitle
| デフォルト:デフォルトでは、「true」に設定されています。
こちらを「false に設定すると、ダッシュボード上部のタイトルバーが省略されます。タイトルバーに含まれるすべての対話型ボタンも省略されます。」 に設定することで、ダッシュボード上部のタイトルバーが省略されます。タイトルバーに含まれるすべてのインタラクディブボタンも省略されます。 | showInfo
| デフォルト:デフォルトでは、「true」に設定されています。
こちらを「false に設定すると、タイトルバーの情報ボタンが省略されます。」 に設定することで、タイトルバーの情報ボタンが省略されます。 | showFilters
| デフォルト:デフォルトでは、「true」に設定されています。
こちらを「false に設定すると、タイトルバーのフィルターボタンが省略されます。分析フィルターは表示されません。」 に設定することで、タイトルバーのフィルターボタンが省略されます。分析フィルターは表示されません。 | showExport
| デフォルト:デフォルトでは、「true」に設定されています。
こちらを「false に設定すると、タイトルバーのエクスポートボタンが省略されます。」 に設定することで、タイトルバーのエクスポートボタンが省略されます。 | height
| デフォルト:ダッシュボード内のレポートの寸法から自動的に設定します。デフォルトでは、ダッシュボード内のレポートのディメンション(次元)から自動的に設定します。 ダッシュボードの高さを上書きするには、数値を設定します。ダッシュボードのレポートが多くのスペースを必要とする場合は、縦方向のスクロールバーが追加されます。ダッシュボードの高さを上書きするためには、こちらに数値を設定します。ダッシュボードのレポートが多くのスペースを必要とする場合は、縦方向のスクロールバーが追加されます。 | width
| デフォルト:ログインユーザーの設定またはシステム設定から自動的に設定されます。デフォルトでは、ログインユーザーの設定、またはシステム構成設定から自動的に設定されます。 ダッシュボードの幅を上書きするには、数値を設定します。ダッシュボードの幅を上書きするためには、こちらに数値を設定します。
こちらを「auto」 に設定すると、囲み要素の幅全体を使用します。 | filters
| ダッシュボードに渡すフィルター値が格納されているオブジェクトに設定します。 | username
| これをこちらを「password パラメーターと共に設定すると、ダッシュボードをロードするときに特定のユーザーとして認証されます。ユーザーは制限されているダッシュボードを表示する前に、ログインの詳細を入力する必要がありません。パラメーター」と共に設定することで、ダッシュボードをロードするときの特定のユーザーとして認証されます。ユーザーは制限されているダッシュボードを表示する前に、ログイン詳細を入力する必要がありません。 | password
| これをこちらを「username パラメーターと共に設定すると、ダッシュボードをロードするときに特定のユーザーとして認証されます。パラメーター」と共に設定することで、ダッシュボードをロードするときの特定のユーザーとして認証されます。 |
|
例
IDで指定された要素にダッシュボードをロードし、初期の表示オプションをいくつか設定する例を示します。こちらの例は、IDに指定された要素のダッシュボードをロードし、初期表示オプションのいくつかを設定します。
Code Block |
---|
|
var options = {};
options.dashUUID = '3b0b6c9a-9dfb-41f0-b85a-eb17bb8aeeb9';
options.elementId = 'myDash';
options.showFilters = 'false';
options.showExport = 'false';
yellowfin.loadDash(options);
|
匿名オプションオブジェクトを使用して同様の処理を行う例を示します:こちらの例は、 匿名オプションオブジェクトを使用して、同様の処理を実行します。
Code Block |
---|
|
yellowfin.loadDash({
dashUUID: '3b0b6c9a-9dfb-41f0-b85a-eb17bb8aeeb9',
elementId: 'myDash',
showFilters: 'false',
showExport: 'false'
});
|
IDではなく要素を直接渡す例を示します:こちらの例は、IDではなく、elementを直接渡します。
Code Block |
---|
|
yellowfin.loadDash({
dashUUID: '3b0b6c9a-9dfb-41f0-b85a-eb17bb8aeeb9',
element: document.getElementById('myDash')
});
|
ダッシュボードフィルターのロード
ダッシュボードで使用されるフィルターは、「yellowfin.dash.loadDashFilters
関数を使用してロードすることができます。この関数を使用するには、メインAPIと共にダッシュボードサブAPIをページにロードします:」
関数を呼び出すことで、ダッシュボードが使用するフィルターをロードすることができます。こちらの関数を使用するためには、メインAPIと一緒に、ダッシュボードサブAPIをページにロードします。
Code Block |
---|
|
<script src="http://localhost/JsAPI" type="text/javascript"></script>
<script src="http://localhost/JsAPI?api=dash" type="text/javascript"></script>
|
その後「loadDashFilters
関数を呼び出します:」
関数を呼び出します。
Code Block |
---|
|
yellowfin.dash.loadDashFilters(dashUUID, callback, arg);
|
1番目の引数は、ダッシュボードの固有識別子です。2番目はコールバック関数で、ダッシュボードのフィルターがロードされたときにAPIによって呼び出されます。コールバック関数の1番目の引数は、ダッシュボードのフィルターリストです。呼び出す関数の2番目の引数はloadReportFilters
関数に渡される3番目の引数になります(指定した場合)。
...
最初の引数は、ダッシュボード固有の識別子です。二番目の引数は、コールバック関数であり、ダッシュボードフィルターのロード時に、APIにより呼び出されます。コールバック関数への最初の引数は、ダッシュボード内のフィルターの一覧です。コールバック関数への二番目の引数は、loadReportFilters関数へ提供される三番目の引数です(指定されている場合)。
コールバック関数への最初の引数として返されるフィルターオブジェクトは、ダッシュボード、フィルターグループセパレーター内で使用されるすべての分析フィルターが格納された配列です。 配列内の各要素は、フィルター、またはフィルターグループ情報を含むオブジェクトです。 これらのフィルターオブジェクトは、以下のプロパティを含みます。
Expand |
---|
|
プロパティ | 説明 | key
| このフィルターまたはフィルターグループの固有キーです。こちらのフィルター、またはフィルターグループの固有キーです。 | type
| このオブジェクトがフィルターグループを表す場合はこちらのオブジェクトがフィルターグループを表す場合は、「FILTERGROUP に設定します。その他の値は、分析フィルターの種類を示します。」 に設定します。その他の値は、分析フィルターのタイプを示します。 | description
| フィルターまたはフィルターグループの説明です。こちらのフィルター、またはフィルターグループの説明です。 | groupId
| フィルターグループの場合:グループの数値識別子です。フィルターグループの場合は、グループの数値識別子です。 | state
| フィルターグループの場合:グループが現在オープンの場合はフィルターグループの場合は、グループが現在オープンの場合は、「OPEN」 に設定します。 | display
| フィルターの場合:フィルターで使用される表示スタイルです。フィルターの場合は、フィルターで使用される表示スタイルです。 | dependencies
| フィルターの場合:ダッシュボードの他のフィルターがこのフィルターに従属している場合はフィルターの場合は、ダッシュボードの他のフィルターが、こちらのフィルターに従属している場合、「true」 に設定します。 | list
| フィルターの場合:フィルターがリストスタイル(複数の値を許可する)の場合はフィルターの場合は、フィルターが「一覧」スタイル(複数の値を許可する)の場合、「true」 に設定します。 | between
| フィルターの場合:フィルターが範囲スタイル(開始値と終了値が必要)の場合はフィルターの場合は、フィルターが「範囲」スタイル(開始値と終了値が必要)の場合、「true」 に設定します。 | listValues
| フィルターの場合:フィルターがドロップダウンリストとして表示される場合は、このプロパティに使用可能なオプションのリストが格納されます。フィルターの場合は、フィルターがドロップダウンリストとして表示される場合、こちらのプロパティに使用可能なオプションのリストが格納されます。 |
|
例
ダッシュボードフィルターをロードしてユーザーに表示する例を示します:こちらの例は、ダッシュボードフィルターをロードし、ユーザーに表示します。
Code Block |
---|
|
function filterCallback(filters) {
for (var i = 0; i < filters.length; i++) {
alert('Filter ' + filters[i].description + ' (' +
filters[i].key + '), display style: ' +
filters[i].display);
}
}
yellowfin.reports.loadReportFilters(1234, filterCallback);
|
この関数は、使用可能なフィルターをロードしてloadDash
関数に戻し、ダッシュボードがページにロードされるときのダッシュボードのフィルター初期値を設定するために使用できます: こちらの関数は、使用可能なフィルターのロードに使用され、ページにロードされた際の、ダッシュボードの初期フィルター値を設定するために、「loadDash」
関数へ渡されます。
例:
Code Block |
---|
|
function filterCallback(filters) {
var filterValues = {};
for (var i = 0; i < filters.length; i++) {
if (filters[i].description == 'Country') {
filterValues[filters[i].key] = 'Australia';
} else if (filters[i].description == 'Start Date') {
filterValues[filters[i].key] = '2011-01-01';
} else if (filters[i].description == 'Invoiced Amount') {
filterValues[filters[i].key] = 6400;
}
}
// set up other options to load the dashboard
var options = {};
options.dashUUID = '3b0b6c9a-9dfb-41f0-b85a-eb17bb8aeeb9';
options.elementId = 'myDash';
// add the filter values
options.filters = filterValues;
// load the dashboard
yellowfin.loadDash(options);
}
yellowfin.dash.loadDashFilters('3b0b6c9a-9dfb-41f0-b85a-eb17bb8aeeb9', filterCallback);
|
「loadDash
関数に渡されるフィルター値は、上記のようにシンプルな値として指定する必要があります。フィルターがリストスタイルの場合は、配列を使用して複数の値を設定できます:」関数に渡されるフィルター値は、上記のように単一の値に指定されていなくてはいけません。フィルターが一覧スタイルの場合、配列を使用して複数の値が設定されます。
Code Block |
---|
|
filterValues[key] = ['Australia', 'China', 'Italy'];
|
フィルターが範囲スタイルの場合は、配列を使用して開始値および終了値を設定する必要があります:フィルターが範囲スタイルの場合、配列を使用して、開始と終了の値が設定されます。
Code Block |
---|
|
filterValues[key] = [500, 600];
|
「loadDash
関数に渡される」
関数に渡される「options.filters
要素は、」
要素は、「loadDashFilters
関数から返されるkeys
でキー設定された値を含む必要があります。
」
関数から返されるキーが付与された値を含まなければなりません。