30日間の無料評価版をお試しいただけます。

ヒント

  1. 囲み要素は、divなどのブロックレベル要素である必要があります。
  2. 上位要素にはパディングや境界線を使用できません。レポートまたはダッシュボードで境界線やパディングを使用する場合は、その要素を、パディングや境界線を使用する別の要素で囲む必要があります。例:
    <div style="padding: 10px; border: 1px solid black;">
      <div id="myReport">
      </div>
    </div>
    <script type="text/javascript">
    yellowfin.loadReport({reportUUID: 'e5e5aaf3-c3b8-4f9b-8280-e21e4d848e63', elementId: 'myReport' });
    </script>
    
    基本の方法を使用していて、elementIdをAPIに渡さない場合、囲み要素が自動的に作成されます。スクリプトタグは、パディングまたは境界線スタイルが適用された別の要素で囲むことができます。例:
    <div style="padding: 10px; border: 1px solid black;">
      <script type="text/javascript" src="http://localhost/JsAPI?reportUUID=e5e5aaf3-c3b8-4f9b-8280-e21e4d848e63&width=500&width=350"></script>
    </div>
    
  3. レポートの場合、囲み要素の高さや幅は固定されている必要があります。
    グラフのみのレポートの場合、グラフは囲み要素内に収まるように描画されます。レポートが要素内に収まらない場合は、残りのページレイアウトに影響しないようにスクロールバーが含まれます。
    要素に固定の高さや幅を含めない場合、ブラウザーによってレポートのレイアウト方法が選択されます。つまり、ユーザーがさまざまなオプションをクリックしたときに、レポートの大きさが変化する可能性があります。場合によってはこれも良い方法です。
  4. Javascript APIのURLにすべてのエンドユーザーがアクセスできるようにします。localhostやプライベートIPアドレスの使用は避けてください。
  5. HTMLの構造はできるだけ最適化してください。たとえば、<body>タグを使用しないとAPIで問題が発生する可能性があります。

トラブルシューティング

前述のとおり、window.yellowfin変数を確認すると、Javascript APIが正常にロードされたかどうかを確認できます。たとえば、基本の方法を使用する場合は以下のようになります:

<script src="http://localhost/JsAPI?reportUUID=e5e5aaf3-c3b8-4f9b-8280-e21e4d848e63&width=500&height=500" type="text/javascript"></script>
<script typt="text/javascript">
if (!window.yellowfin) {
   alert('Error loading API');
}
</script>

高度な方法を使用する場合は、以下のコードを使用してレポートまたはダッシュボードのロードを試みるかどうかを判断できます:

<script src="http://localhost/JsAPI" type="text/javascript"></script>
<script typt="text/javascript">
if (window.yellowfin) {
   yellowfin.loadReport({reportUUID: 'e5e5aaf3-c3b8-4f9b-8280-e21e4d848e63',
      elementId: 'myReport' });
} else {
   alert('Error loading API');
}
</script>

APIを使用していて発生するエラーは、一般にJavascriptのアラートを介して提示されます。アラートにはエラーの説明が含まれています。よくあるエラーは以下のとおりです:

エラー

説明

API version requested is not supported
要求されたAPIのバージョンはサポートされていません

サーバーはリクエストされたAPIバージョンをサポートしていません。

reportUUID not specified
reportUUIDが指定されていません

yellowfin.loadReport関数が呼び出されましたが、レポート識別子(reportUUID、reportId、またはwsName)が指定されていません。

Report not found
レポートが見つかりませんでした

reportUUID、reportId、またはwsNameで指定されたレポートが見つかりませんでした。

Report not loaded
レポートがロードされていません

ロードされていないレポートでオペレーションが試行されました。

Report is in draft mode
レポートはドラフト(編集中)モードです

指定されたレポートはドラフト(編集中)モードです。Javascript APIを介してアクセスできるのはアクティブなレポートのみです。

User does not have access to this report
ユーザーはこのレポートへのアクセス権がありません

ログインしているユーザーは、リクエストされたレポートへのアクセス権がありません。

Invalid command specified
無効なコマンドが指定されました
Invalid request
無効なリクエストです

APIに対して無効なリクエストが行われました。

Error loading report
レポートをロード中にエラーが発生しました
Error running report
レポートを実行中にエラーが発生しました
Error running report command
レポートコマンドを実行中にエラーが発生しました
Error loading dashboard
ダッシュボードをロード中にエラーが発生しました

APIコマンドを実行中に、サーバー側でエラーが発生しました。詳細については、Yellowfinのサーバーログを確認してください。

dashUUID not specified
dashUUIDが指定されていません

yellowfin.loadDash関数が呼び出されましたが、ダッシュボード識別子(dashUUID)が指定されていません。

Dashboard not found
ダッシュボードが見つかりませんでした

dashUUIDで指定されたダッシュボードが見つかりませんでした。

User does not have access to this dashboard
ユーザーはこのダッシュボードへのアクセス権がありません

ログインしているユーザーは、リクエストされたダッシュボードへのアクセス権がありません。

Dashboard is in draft mode
ダッシュボードはドラフト(編集中)モードです

指定されたダッシュボードはドラフト(編集中)モードです。Javascript APIを介してアクセスできるのはアクティブなダッシュボードのみです。