Виджеты фильтров и параметров для SQL¶
Когда вы добавляете SQL‑переменную или параметр в прямой запрос, Glarus BI добавляет виджет в верхней части запроса, чтобы пользователи могли задавать значение переменной.
Создание виджетов фильтров и параметров различных типов¶
Тип виджета фильтра, который Glarus BI отображает для фильтра поля, зависит от настройки поля в метаданных Glarus BI под названием Фильтр. Администраторы могут установить для поля один из вариантов:
Для полей даты будет либо простой фильтр по дате (для переменных "Дата"), либо динамический (для фильтров полей, сопоставленных с полем даты).
Если вы хотите изменить виджет фильтра по умолчанию для конкретного поля, попросите администратора обновить это поле в разделе Метаданные таблиц и выбрать нужную опцию "Фильтр".
Для выпадающих списков и полей поиска также можно настроить значения, доступные для выбора. См. ниже.
Поле ввода¶
- Добавьте SQL‑переменную в запрос.
- Установите Тип переменной в значение "Фильтр поля". Если в запросе нет поля базы данных, можно также использовать тип "Текст" или "Число" — в зависимости от того, что именно вы фильтруете.
- Выберите поле в "Связующие поля" (только для "Фильтр поля").
- Установите Оператор фильтра в нужный вам оператор.
- Установите Как пользователи должны фильтровать эту переменную? в значение "Поле ввода".
Поле поиска¶
- Добавьте SQL‑переменную в запрос.
- Установите Тип переменной в значение "Фильтр поля". Если в запросе нет поля базы данных, можно также использовать тип "Текст" или "Число" — в зависимости от того, что именно вы фильтруете.
- Выберите поле типа "Категория" в "Связующие поля" (только для "Фильтр поля").
- Установите Оператор фильтра в нужный вам оператор.
- Установите Как пользователи должны фильтровать эту переменную? в значение "Поле поиска". Если вы не используете фильтр поля, нужно отредактировать настройки поля поиска и указать, откуда брать значения для поиска.
Чтобы защититься от SQL‑инъекций, Glarus BI приводит ввод из поля ввода к строке. Если вы хотите использовать шаблоны поиска с символами подстановки, см. [статью в Learn (документация Metabase, англ.)][sql-variables].
Выпадающий список и поиск¶
Чтобы создать выпадающий список с поиском и перечнем всех значений:
- Добавьте переменную в запрос.
- Установите Тип переменной в значение Фильтр поля. Если в запросе нет поля базы данных, можно также использовать тип "Текст" или "Число" — в зависимости от того, что именно вы фильтруете.
- Выберите поле в "Связующие поля" (только для "Фильтр поля").
- Установите Оператор фильтра в нужный вам оператор.
- Установите Как пользователи должны фильтровать эту переменную? в значение "Выпадающий список". Если вы не используете фильтр поля, нужно отредактировать настройки выпадающего списка и указать, откуда брать значения для списка.
Если в столбце слишком много разных значений и выпадающий список получился бы слишком большим, Glarus BI покажет поле поиска вместо выпадающего списка. Поэтому если у вас много email‑адресов, вы, скорее всего, всё равно увидите только поле поиска. Выпадающие списки лучше работают, когда выбор ограничен небольшим набором значений.
Настройка значений для выпадающих списков и полей поиска¶
Когда вы добавляете выпадающий список или поле поиска, вы можете указать Glarus BI, какие значения пользователи смогут выбирать в этом фильтре.
- Добавьте выпадающий список или поле поиска.
- Рядом с выбранной опцией нажмите Изменить.
- Glarus BI откроет модальное окно, где вы сможете выбрать "Откуда должны браться значения".
Можно выбрать:
- Из соединённых полей. Если вы выбрали тип переменной "фильтр поля", у вас также будет возможность использовать связанное поле.
- Из другой модели или запроса. Если вы выберете эту опцию, нужно будет выбрать модель или запрос, а затем поле из этой модели или запроса, которое Glarus BI будет использовать как источник значений для выпадающего списка или поля поиска. Например, если вы хотите, чтобы выпадающий список показывал разные тарифы учётной записи, можно выбрать созданную вами модель "Account" и поле "Plan". Тогда выпадающий список покажет все уникальные значения, которые встречаются в столбце "Plan" модели Accounts.
- Пользовательский список. Введите каждый элемент с новой строки. Можно вводить любые строковые значения.
Также см. "Изменение доступных значений фильтра".
Значение по умолчанию в виджете фильтра¶
В боковой панели "Переменные" можно задать значение по умолчанию для переменной. Это значение будет подставляться в соответствующий виджет фильтра по умолчанию (даже если виджет фильтра пуст).
Чтобы переопределить значение по умолчанию, введите другое значение в виджет фильтра.
Обязательное значение для виджета‑фильтра¶
В боковой панели настроек Переменные можно включить опцию Заполнение всегда обязательно. Если включить её:
- Вам нужно будет задать значение по умолчанию.
- Значение по умолчанию переопределит любые необязательные фрагменты в вашем коде (например, опциональный
WHERE). Если в фильтр не передано значение, Glarus BI выполнит запрос, используя значение по умолчанию. Нажмите значок "глаз" в редакторе для предварительного просмотра SQL.
Операторы для виджетов фильтров¶
Для текстовых, числовых и связанных с датой виджетов фильтров нужно выбрать оператор фильтра.
Текст¶
Варианты операторов включают:
- Строка
- Строка не является
- Строка содержит
- Строка не содержит
- Строка начинается с
- Строка заканчивается на
Число¶
Варианты операторов включают:
- Равно
- Не равно
- Между
- Более или равно
- Менее или равно
Даты¶
Варианты операторов включают:
- Месяц и год
- Квартал и год
- Одна дата
- Диапазон дат
- Относительная дата
- Все варианты. Glarus BI покажет меню, где можно выбрать, как фильтровать даты: по диапазону, относительным датам и т. п.