Переопределяемые параметры конфигурации

Переопределяемые параметры конфигурации позволяют редакторам отчетов изменять значения по умолчанию в источнике данных. Определение параметров конфигурации как переопределяемых делает источник данных более гибким и дает пользователям возможность создавать настраиваемые пользователем шаблоны отчетов.

Например, соединитель, предоставляющий данные о погоде, может включать параметр местоположения, который позволяет средствам просмотра отчетов запрашивать отчет о погоде из языкового стандарта, отличного от используемого по умолчанию.

В этом документе описывается, как определяются переопределяемые параметры, разрешается их изменение и как пользователи отчета могут изменять значения параметров. Чтобы узнать больше о том, как параметры используются в Looker Studio, см. Параметры источника данных .

Роли

Роли пользователей, упоминаемые в документе:

Роль Определение
Разработчик коннекторов Пользователь, создавший соединитель сообщества .
Владелец источника данных Пользователь, создавший источник данных и владеющий им .
Редактор отчетов Пользователь с доступом к отчету в режиме редактирования .
Просмотр отчетов Пользователь с доступом к отчету в режиме просмотра .

Определение переопределяемых параметров

Разработчик коннектора определяет параметры конфигурации в функции getConfig() коннектора сообщества. Чтобы определить параметр конфигурации как переопределяемый, соединитель вызывает setAllowOverride(true) .

В следующем примере определяются 2 переопределяемых параметра: zipcode и units , а также 1 параметр, который не является переопределяемым: days-to-forcecast .

Скриншот двух переопределяемых параметров

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. Если значение параметра управляет конфиденциальными данными. Например, выбор учетной записи.
    • Не определяйте параметр как переопределяемый, если вы хотите предотвратить непреднамеренный просмотр или обмен конфиденциальными данными.

Включение параметров для пользователей отчетов

Владельцы источников данных контролируют, какие переопределяемые параметры разрешено изменять редакторам отчетов . Аналогично, редакторы отчетов контролируют, какие параметры могут быть изменены средствами просмотра отчетов .

Разрешить редакторам отчетов изменять значения параметров

Владелец источника данных определяет, какие параметры разрешено изменять в отчетах. Это настраивается во время создания или редактирования источника данных и применимо только к параметрам, которые были определены разработчиком соединителя как переопределяемые . Если этот параметр включен, редакторы отчетов смогут изменять параметры отчета .

В следующем примере соединитель имеет два параметра, определенные как переопределяемые: zipcode и units . Владелец источника данных разрешил изменять только zipcode в отчетах. В отчете редактор отчета имеет возможность изменить значение параметра zipcode .

Включение опции переопределения

Разрешить зрителям отчетов изменять значения параметров

Редакторы отчетов определяют, какие параметры могут быть изменены средствами просмотра отчетов . Значения параметров затем могут быть изменены через URL-адрес отчета любым средством просмотра отчета.

Например, рассмотрим соединитель, у которого два параметра определены как переопределяемые: zipcode и units (рис. 1). Если владелец источника данных разрешил изменение zipcode в отчетах (рис. 2), то редакторы отчетов смогут разрешить изменение zipcode только зрителям отчетов . Редактор отчета не будет иметь доступа или видимости, чтобы позволить пользователям, просматривающим отчет, изменять параметр units измерения.

Параметр почтового индекса включен
Рис. 1. Конфигурация соединителя.

Изменить можно только параметр почтового индекса.
Рисунок 2. Управление параметрами.

параметры URL

Чтобы разрешить зрителям отчетов редактировать значения параметров через URL-адрес отчета:

  1. Отредактируйте отчет.
  2. Выберите Ресурс -> Управление параметрами URL отчета .
  3. Используйте флажки Разрешить изменение в URL-адресе отчета, чтобы разрешить или запретить изменение значений параметров в URL-адресе отчета. Изменения сохраняются автоматически.
  4. Нажмите Закрыть в правом верхнем углу.

Изменение значений параметров

Редакторы отчетов могут изменять значения параметров с помощью панели свойств отчета, а средства просмотра отчетов могут изменять значения параметров через URL-адрес отчета.

Панель свойств отчета

Чтобы узнать, как редактор отчетов может устанавливать значения параметров, см. раздел Изменение параметров в отчете .

Параметры URL отчета

Для параметров, которые разрешено изменять в URL-адресе отчета , значения можно задать с помощью объекта JSON в кодировке URL-адреса, добавленного к URL-адресу отчета в режиме просмотра .

Чтобы создать конфигурацию URL:

  1. Соберите имена параметров

    1. Отредактируйте отчет.
    2. Выберите Ресурс -> Управление параметрами URL отчета .
    3. Запишите названия параметров, которые вы собираетесь установить через URL-адрес отчета.

    Например, на рисунке ниже имя параметра — ds0.zipcode .

    Включение параметров URL

  2. Создайте объект параметра

    Параметры определяются через объект JSON. Ключами для значений параметров являются имена параметров.

    {
      "parameterName": parameterValue
    }
    

    Типы значений параметра — один из STRING , NUMBER или BOOLEAN . Для параметров, которые принимают несколько значений (т. е. раскрывающиеся списки с множественным выбором), используйте массив значений.

    Например, если имя параметра — 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-адреса, добавьте его к URL-адресу представления отчета, используя параметр запроса params .

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

    Обязательно замените REPORT_ID и PAGE_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. Панель свойств отчета в соответствии с правилами наследования параметров источника данных.