Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Anchortoptop

Table of Contents
classcontents

概要

このAPIは、ページに「JsAPI/v3」JSファイルが含まれているページでのみ使用できます。以下の例を参照してください。

...

Note

このAPIは、ダッシュボードコードモードでは使用できません。

高度なAPIには、Yellowfin APIを独自のウェブページにロードするのに役立つ多くの関数が含まれています。レポートおよびダッシュボードローダーAPIをロードする関数があり、ダッシュボードおよびレポートをロードできます。

セッション管理を支援する関数もあります。

init()

リターン

Promise

説明

Base APIを初期化します。これは、APIがページに含まれている時に呼び出されます。ロードが終了した時点で、APIの使用がこのPromiseが解決するまで待機することを示すPromiseを返します。

Yellowfin レポートAPIをページに含め、init() promiseが解決した後でレポートをロードします。

...

Anchor
top
top

Table of Contents
classcontents

概要

このAPIは、ページに「JsAPI/v3」JSファイルが含まれているページでのみ使用できます。以下の例を参照してください。


Note

このAPIは、ダッシュボードコードモードでは使用できません。


高度なAPIには、Yellowfin APIを独自のウェブページにロードするのに役立つ多くの関数が含まれています。レポートおよびダッシュボードローダーAPIをロードする関数があり、ダッシュボードおよびレポートをロードできます。

セッション管理を支援する関数もあります。

init()

リターン

Promise

説明

Base APIを初期化します。これは、APIがページに含まれている時に呼び出されます。ロードが終了した時点で、APIの使用がこのPromiseが解決するまで待機することを示すPromiseを返します。

Yellowfin レポートAPIをページに含め、init() promiseが解決した後でレポートをロードします。

<script src="https://pathToYourYellowfinServer/JsAPI/v3"></script>
<div id="reportDiv"></div>
<script>
yellowfin.init().then(() => {
          //The Yellowfin base API has now loaded. Now load a report
          yellowfin.loadReport({
                    reportId: 'c83357db-8aef-4ec7-ab72-fce34de9ee77',
                    element: document.querySelector('div#reportDiv'),
           });

});
</script>

...

デフォルトでは、明示的にfalseに設定されていないインタラクションはすべて有効と見なされ、レポートで許可されている場合は表示されます。

drillDown

ドリルダウン機能を無効にできます。

drillAnywhere

ドリルエニウェア機能を無効にできます。

drillThrough

ドリルスルー機能を無効にできます。

unitSelection

単位選択機能を無効にできます。

brushing

ブラッシング機能を無効にできます。

timeSlider

タイムスライダー機能を無効にできます。

drillBreadcrumbs

パンくずリスト機能を無効にできます。

seriesSelection

シリーズ選択機能を無効にできます。

annotations

注釈機能を無効にできます。

loadReportの使用時にレポート上のすべてのユーザーインタラクションを無効にするには、以下を参照してください。

...

このオプションは、バナーイメージに適用されるカスタマイズされた幅を設定します。最適な結果を得るために、この設定を使用する場合は、バナーの高さを設定することも推奨します。

loadStoryAPI()(ストーリーAPIの読み込み)

ストーリーを読み込むことができるように、StoryAPIを読み込み、API読み込み時に解決されるPromiseを返します。

loadStory(options)(ストーリーの読み込み(オプション))

**これは、yellowfin.stories.loadReportに対する単なるパススルーオプションです。渡されるオプションは同じである必要があり、ストーリーの読み込みを試行する前に、ストーリーオブジェクトが読み込まれることを保証するだけです。

StoryAPIで利用できる関数

  • likeStory()
  • unlikeStory()
  • toggleLike(shouldLike:boolean => デフォルト値は現在の値の逆数
  • getCurrentLikeStatus(successFunction: 現在のステータスを受信した時に呼び出す関数)=> サーバからステータスを取得
  • storyContributors()
  • storyReaders()

例:

Code Block
languagejs
themeEclipse
src="<%=YF URL%>/JsAPI/v3?StoryUUID=<%=Story Publish UUID%>&showHeader=false&bannerImageWidth=500"></script>

高度なAPIの例:

HTML:

Code Block
languagexml
themeEclipse
<script src="<%=YF URL%>/JsAPI/v3"></script>
 
<div id="storyContainer"></div>

JavaScript:

Code Block
languagejs
themeEclipse
window.yellowfin.loadStoryAPI().then(() => {
    window.yellowfin.stories.loadStory(
{         storyUUID: '<%=Story Publish UUID%>',          element: 'div#storyContainer'     }
).then((storyAPI) =>
{         console.log(storyAPI);         window.storyAPI = storyAPI;     }
);
});

...

高度なAPIによるガイド付きNLQの設定

JS APIには、ガイド付きNLQを設定するために2つの方法があります。

  • 高度なAPI経由
  • 組み込みリンク経由

高度なAPI

高度なAPIは、多くの複雑なオブジェクトが導入されており、さまざまなガイド付きNLQビューを設定方法ができます。

シンプルなアプローチは:

Code Block
languageactionscript3
yellowfin.loadNLQ();

これにより、ガイド付きNLQライトボックスが組み込みページに読み込まれ、アプリケーション内でネイティブに機能するのと同じように機能するようになります。

このアプローチは、下記の設定がデフォルトとして使用されます。

Code Block
languageactionscript3
contentIntegrationOptions: {
    controls: ['SAVE']
}
 When you called yellowfin.loadNLQ(); you are essentially calling:
yellowfin.loadNLQ({
   contentIntegrationOptions: {
      controls: ['SAVE']
   } 
});

高度なAPIを使用しているガイド付きNLQを読み込む際に、下記のオプションを定義することができます。

element

詳細

タイプDOM Element Or String

説明

このオプションを使って、ガイド付きNLQUIがレンダリングされているelementを定義します。文字列を渡した場合、JS APIはdocument.querySelector(stringValue)を使用して、ページからelementを取得しようとします。

Code Block
languageactionscript3
yellowfin.loadNLQ({
    element: document.querySelector(‘#myElement’)
});

ガイド付きNLQのアイテムがelementに読み込まれます。

文字列またやDOM elementが渡されない場合、ガイド付きNLQ UIはライトボックスに読み込まれます。

注意:この方法でelementを定義した場合、NLQ UIでは「閉じる」ボタンが非表示になります。

contentIntegration

詳細

タイプObject

説明

ユーザーが利用てきるコンテンツ統合オプションを定義します。

このオブジェクトは、定義されるいくつかのサブオブジェクトがあります(詳細およびデフォルトについては以下を参照してください)。これにより、統合コントロールの配列を定義することができます。下記の例のように、SAVEとADD_TOのコントロールが配列に含まれています。

controls

タイプ: String[]

...

languageactionscript3

...

)(ストーリーAPIの読み込み)

ストーリーを読み込むことができるように、StoryAPIを読み込み、API読み込み時に解決されるPromiseを返します。

loadStory(options)(ストーリーの読み込み(オプション))

**これは、yellowfin.stories.loadReportに対する単なるパススルーオプションです。渡されるオプションは同じである必要があり、ストーリーの読み込みを試行する前に、ストーリーオブジェクトが読み込まれることを保証するだけです。

StoryAPIで利用できる関数

  • likeStory()
  • unlikeStory()
  • toggleLike(shouldLike:boolean => デフォルト値は現在の値の逆数
  • getCurrentLikeStatus(successFunction: 現在のステータスを受信した時に呼び出す関数)=> サーバからステータスを取得
  • storyContributors()
  • storyReaders()


例:

Code Block
languagejs
themeEclipse
src="<%=YF URL%>/JsAPI/v3?StoryUUID=<%=Story Publish UUID%>&showHeader=false&bannerImageWidth=500"></script>

高度なAPIの例:

HTML:

Code Block
languagexml
themeEclipse
<script src="<%=YF URL%>/JsAPI/v3"></script>
 
<div id="storyContainer"></div>

JavaScript:

Code Block
languagejs
themeEclipse
window.yellowfin.loadStoryAPI().then(() => {
    window.yellowfin.stories.loadStory(
{         storyUUID: '<%=Story Publish UUID%>',          controlselement: [‘SAVE’, ‘ADD_TO’]
'div#storyContainer'     }
});

この配列で渡せる値は、

SAVE control

このSave controlは、このクエリか完了した後に「保存」ボタンを表示します。ユーザーがレポートを作成する権限を持っていない場合は、SAVEが定義されていてもこのオプションは表示されません。

Image Removed

Code Block
languageactionscript3
yellowfin.loadNLQ({
    contentIntegrationOptions:.then((storyAPI) =>
{         controls: [‘SAVE’]console.log(storyAPI);        }
})

ADD_TO control

このADD_TOは、権限を持ったユーザーがガイド付きNLQで得た回答をストーリー、ダッシュボード、プレゼンテーションに追加する「追加」ボタンを表示します。

Image Removed

Code Block
languageactionscript3
yellowfin.loadNLQ({
contentIntegrationOptions: {
controls: [‘SAVE’, ‘ADD_TO’]
} window.storyAPI = storyAPI;     }
);
});