オーバーライド可能な設定パラメータ

オーバーライド可能な設定パラメータを使うと、レポートの編集者はデータソースのデフォルト値を変更できます。設定パラメータをオーバーライド可能として定義すると、データソースに柔軟性を持たせることができ、カスタマイズ可能なレポート テンプレートを作成できるようになります。

たとえば、気象データを提供するコネクタに地域パラメータを含めれば、デフォルトとは異なる地域の気象レポートをレポートの閲覧者がリクエストできるようになります。

このドキュメントでは、オーバーライド可能なパラメータの定義方法、オーバーライドを有効にする方法、およびレポート ユーザーによるパラメータ値の変更方法について説明します。学習内容 Looker Studio でのパラメータの使用方法の詳細については、 データソースのパラメータ

ロール

ドキュメント全体で参照されるユーザーの役割:

役割 定義
コネクタ デベロッパー コミュニティ コネクタを作成したユーザー。
データソースのオーナー データソースを作成して所有するユーザー。
レポートの編集者 編集モードでレポートにアクセスできるユーザー。
レポートの閲覧者 表示モードでレポートにアクセスできるユーザー。

オーバーライド可能なパラメータの定義

コネクタ デベロッパーは、コミュニティ コネクタの getConfig() 関数で設定パラメータを定義します。設定パラメータをオーバーライド可能として定義するには、コネクタで setAllowOverride(true) を呼び出します。

次の例では、2 つのオーバーライド可能なパラメータ(zipcodeunits)、および 1 つのオーバーライド不可のパラメータ(days-to-forcecast)を定義しています。

2 つのオーバーライド可能なパラメータのスクリーンショット

function getConfig(request) {
  var config = cc.getConfig();

  // A
  config
      .newTextInput()
      .setId("zipcode")
      .setName("ZIP Code")
      .setAllowOverride(true);

  // B
  config
    .newSelectSingle()
    .setId("units")
    .setName("Units")
    .addOption(
        config
          .newOptionBuilder()
          .setLabel("Metric")
          .setValue("metric")
    )
    .addOption(
      config
        .newOptionBuilder()
        .setLabel("Imperial")
        .setValue("imperial")
    )
    .setAllowOverride(true);

  // C
  config
    .newTextInput()
    .setId("days-to-forecast")
    .setName("Days to forecast")
      .setAllowOverride(false);


  return config.build();
}

パラメータをオーバーライド可能として定義しない場合

コネクタ、データソース、レポートの仕組みについては、 Looker Studio をデータに接続する方法をご覧ください。

以下の場合、パラメータをオーバーライド可能として定義しないでください。

  1. パラメータの値がスキーマに影響を与える場合。
    • ユーザーがパラメータ値を変更し、返される新しいデータのスキーマがデータソースで定義されているものと異なる場合、データソースに依存するレポートはフィールドが欠落するため破損する可能性があります。
  2. パラメータ値が機密データを制御する場合(アカウントの選択など)。
    • 機密データが意図せず表示されたり共有されたりするのを防ぐため、パラメータをオーバーライド可能として定義しないでください。

レポート ユーザーに対してオーバーライドを有効にする

データソースのオーナーが、レポートの編集者に変更を許可するオーバーライド可能なパラメータを決定します。同様に、レポートの編集者が、レポートの閲覧者に変更を許可するパラメータを管理します。

レポートの編集者がパラメータ値を変更できるようにする

データソースのオーナーが、レポートでの変更を許可するパラメータを決定します。パラメータの設定は、データソースの作成中または編集中に行います。この設定は、コネクタ デベロッパーによってオーバーライド可能として定義されているパラメータにのみ適用されます。パラメータのオーバーライドが有効になると、レポートの編集者はレポートのパラメータを変更できるようになります。

次の例では、コネクタの zipcodeunits という 2 つのパラメータがオーバーライド可能として定義されています。データソースのオーナーは、レポートで zipcode の変更のみを許可しています。レポートには、レポートの編集者が zipcode のパラメータ値を変更できるオプションが表示されます。

オーバーライド オプションを有効にする

レポートの閲覧者がパラメータ値を変更できるようにする

レポートの編集者が、レポートの閲覧者が変更できるパラメータを管理します。 レポートの閲覧者は、レポート URL を介してパラメータ値を変更できます。

たとえば、コネクタに次の 2 つのパラメータがオーバーライド可能として定義されているとします。 zipcodeunits(図 1)データソースのオーナーが許可している場合、 レポートで zipcode を変更した場合(図 2)、レポートの編集者レポート閲覧者zipcode を変更できるようにします。レポート 編集者には、units パラメータを許可するためのアクセス権や公開設定がありません。 レポート閲覧者が編集したレポートです。

<ph type="x-smartling-placeholder">
</ph> 有効にされた郵便番号のパラメータ
図 1: コネクタ構成

<ph type="x-smartling-placeholder">
</ph> 郵便番号パラメータのみを変更できます
図 2: パラメータの管理
で確認できます。

URL パラメータ

レポートの閲覧者がレポート URL を使用してパラメータ値を編集できるようにするには:

  1. レポートを編集します。
  2. [リソース] ->レポートの URL パラメータを管理する
  3. [レポート URL での変更を許可] チェックボックスをオンまたはオフにして、レポート URL でのパラメータ値の変更を許可または許可しないように設定します。変更は自動的に保存されます。
  4. 右上の [閉じる] をクリックします。

パラメータ値の変更

パラメータ値を変更するのに、レポートの編集者はレポート プロパティ パネルを使用しますが、レポートの閲覧者はレポート URL を使用します。

レポート プロパティ パネル

レポートの編集者がパラメータ値を設定する方法については、レポートのパラメータを変更するをご覧ください。

レポート URL パラメータ

レポート URL での変更が許可されているパラメータの場合、値の設定は、レポート URL に追加される URL エンコード済みの JSON オブジェクトを介して、表示モードで行います。

URL 設定を作成するには:

  1. パラメータ名を収集する

    1. レポートを編集します。
    2. [リソース] ->レポートの URL パラメータを管理する
    3. レポートに設定するパラメータの名前をメモします。 URL を入力します。

    たとえば、次の図ではパラメータ名は ds0.zipcode です。

    URL パラメータを有効にする

  2. パラメータ オブジェクトを作成する

    パラメータは JSON オブジェクトを介して定義されます。パラメータ値のキー パラメータ名です。

    {
      "parameterName": parameterValue
    }
    

    パラメータ値のタイプは、STRINGNUMBERBOOLEAN のいずれかです。複数の値を受け入れるパラメータ(複数選択プルダウンなど)の場合は、値の配列を使用します。

    たとえば、パラメータ名が ds0.zipcode の場合、郵便番号を 94094 の場合、JSON は次のようになります。

    {
      "ds0.zipcode": "94094"
    }
    
  3. パラメータ オブジェクトを URL エンコードする

    パラメータ オブジェクトを作成したら、JSON.stringify() を使用してオブジェクトを文字列に変換し、次に [encodeURIComponent] を使用して URL エンコードします。

    var params = {
      "ds0.zipcode": "94094"
    };
    var paramsAsString = JSON.stringify(params);
    var encodedParams = encodeURIComponent(paramsAsString)
    

    これにより、次のエンコードされた文字列が生成されます。

    "%7B%22ds0.zipcode%22%3A%2294094%22%7D"
    
  4. レポート URL を作成する

    パラメータ オブジェクトを URL エンコードしたら、params クエリ パラメータを使用してレポートビュー URL に追加します。

    https://lookerstudio.google.com/reporting/REPORT_ID/page/PAGE_ID?params=%7B%22ds0.zipcode%22%3A%2294094%22%7D

    REPORT_IDPAGE_ID は、それぞれご自分のレポートとページの ID 値に置き換えてください。

  5. URL を使用する

    パラメータの継承に基づき、レポート URL は、JSON パラメータ オブジェクトの定義に従ってパラメータをオーバーライドします。

パラメータ オブジェクトの例

次のパラメータ オブジェクトは、複数のパラメータを設定する方法を示しています。また、 さまざまな入力タイプに応じたパラメータ値の設定を示します。

  • ds0.includeToday はチェックボックス入力です
  • ds0.units は単一選択入力です
  • ds1.countries は複数選択の入力です
  • ds1.labelName はテキスト入力です
  {
    "ds0.includeToday": true,
    "ds0.units": "Metric",
    "ds1.countries": ["Canada", "Mexico"],
    "ds1.labelName": "Population"
  }

パラメータの継承

パラメータに使用される値は、パラメータが設定されている場所に基づく優先順位に従います。優先順位の高い場所に設定されたパラメータは、優先順位の低い場所に設定されたパラメータをオーバーライドします。優先順位(昇順)は以下のとおりです。

  1. データソース(デフォルト)
  2. レポート URL
  3. レポート プロパティ パネル(データソースのパラメータの継承ルールに基づく)