ダッシュボードでサポートされていないレイアウト エラーのトラブルシューティング

サポートされていないレイアウトに関する次の警告メッセージが、タブ付きダッシュボードに表示されることがあります。通常、このメッセージが表示されると、ダッシュボードを編集できなくなります。

This dashboard uses layouts that are not supported for dashboards with tabs. Learn more about updating to a supported layout.

このエラーを解決するには、ダッシュボードをサポートされているレイアウトに更新する必要があります。このガイドでは、エラーを解決するためにダッシュボードのレイアウトを更新する手順について説明します。

ダッシュボードをサポートされているレイアウトに更新する

API 呼び出しを行う権限がない場合は、Looker 管理者にお問い合わせください。ここに記載されていない問題が発生した場合は、Looker サポートにお問い合わせください。

ダッシュボードをサポートされているレイアウトに更新するには、次の各セクションで説明する手順を完了します。

  1. サポートされていないレイアウトを特定する
  2. レイアウト タイプを更新する
  3. 更新を確認する
  4. 重複する要素 ID を確認する

手順 4 の結果によっては、ダッシュボードを手動で再作成する手順も完了する必要があります。

1. サポートされていないレイアウトを特定する

Looker API Explorer または任意の API ツールを使用して、ダッシュボードの dashboard_idget_dashboard_layout API エンドポイント を呼び出します。

JSON レスポンスを調べて、type がサポートされているタイプ(newspaper など)ではないレイアウト オブジェクトを探します。サポートされているタイプについては、LookML ダッシュボード パラメータのドキュメントをご覧ください。

たとえば、GET /dashboard_layouts/{dashboard_id} を呼び出すと、サポートされていないレイアウト タイプを示す次の JSON スニペットが生成されます。

{
"id": "120",
"dashboard_id": "75",
"type": "drag", ## IDENTIFIED UNSUPPORTED DASHBOARD TYPE
"active": true,
"column_width": 0,
"width": 0,
"deleted": false,
"dashboard_title": "tabbed dash with limit tab",
"dashboard_layout_components": [
  {
    "id": "224",
    "dashboard_layout_id": "120", ## DASHBOARD LAYOUT ID FOR STEP 2
    "dashboard_element_id": "377",
    "row": 0,
    "column": 0,
    "width": 8,
    "height": 6,
    "deleted": false,
    "element_title": "Untitled",
    "element_title_hidden": false,
    "vis_type": "looker_bar",
    "granular_row": 0,
    "granular_column": 0,
    "granular_width": 24,
    "granular_height": 12,
    "can": {
      "create": true,
      "destroy": true,
      "update": true,
      "index": true,
      "show": true
    }
  }
  ]
}

2. レイアウト タイプを更新する

サポートされていないレイアウト ID(dashboard_layout_id)ごとに update_dashboard_layout API エンドポイント を呼び出します。前の手順で取得した dashboard_layout_iddashboard_id を使用します。typenewspaper に設定し、title に「Legacy Layout」などのわかりやすい値を指定します。

手順 1 の例を拡張して、PATCH /dashboard_layouts/{dashboard_layout_id} を呼び出し、次の更新を行います。

{
  "dashboard_id": "75",
  "type": "newspaper", ## SUPPORTED LAYOUT TYPE
  "active": false,
  "column_width": 0,
  "width": 0,
  "label": "Legacy Layout", ## NEW TITLE
  "description": "",
  "order": 0
}

3. 更新を確認する

手順 2 の API 呼び出しが成功したら、Looker UI でダッシュボードを更新します。[以前のレイアウト](または指定したタイトル)という名前の新しい Tab が表示され、警告バナーが表示されなくなります。

4. 重複する要素 ID を確認する

ダッシュボードに対して get_dashboard_layout API を再度呼び出します。レスポンスを慎重に調べて、ダッシュボードのすべてのタブで dashboard_element_id の値が一意であることを確認します。

  • dashboard_element_id の値がすべて一意の場合は、ダッシュボードを安全に編集できます 。[Legacy Layout] タブを削除して、ダッシュボードを保存できます。ここで終了します。

  • 異なるタブで dashboard_element_id の値が重複している場合は、手順 5 に進みます。

ダッシュボードを手動で再作成する

手順 1 ~ 4 を完了した後、ダッシュボードで重複する dashboard_element_id が見つかった場合は、次のセクションの手順に沿ってダッシュボードを手動で再作成する必要があります。

  1. ダッシュボードのタブと要素を再作成する
  2. 古い要素を削除する
  3. 古いタブを削除する

1. ダッシュボードのタブと要素を再作成する

Looker UI でダッシュボードを開き、編集モードにします新しい一時タブを作成します。既存のタブから、保持するすべてのタイルと要素を手動で複製し、複製したものを新しく作成した一時タブに移動します。ダッシュボードを保存します。

2. 古い要素を削除する

ダッシュボードを再度編集します。既存のタブ([Legacy Layout] タブを含む)から、元のタイルと要素をすべて削除します。 新しい一時タブには、複製されたタイルのみを残します。ダッシュボードを保存します。

3. 古いタブを削除する

ダッシュボードを最後に編集します。古いタブをすべて削除し、複製された要素を含む新しいタブのみを残します。必要に応じて、新しいタブの名前を変更しますダッシュボードを保存します。