Мои связанные фильтры не работают¶
Допустим вы создали связанный фильтр для дашборда. Мы хотим его сконфигурировать таким образом, чтобы фильтр «Город» отображал только города в штате, выбранном в фильтре Штат. Однако:
ваши карты показывают «Нет результата», когда вы применяете связанный фильтр,
кажется, что ваш связанный фильтр не работает, или
виджет связанного фильтра не отображает раскрывающийся список отфильтрованных значений.
Если у вас возникли проблемы с обычным виджетом фильтра, см. это руководство. Чтобы исправить проблемы со связанными фильтрами, вам нужно четко понимать, как они работают:
Вы понимаете направленность связанных фильтров?¶
Основная причина: Связанные фильтры — одна из наиболее сложных функций GlarusBI, и многие проблемы связаны с непониманием их работы.
Действия: Убедитесь, что вы понимаете приведенные ниже пункты, и что ваш связанный фильтр настроен с их учетом.
Фильтр не является частью конкретного вопроса. Вместо этого на панель инструментов добавляется фильтр, и его значение используется для заполнения переменных в вопросах.
Чтобы GlarusBI отображал выпадающий список возможных значений фильтра, он должен знать, что столбец соответствует категории. Это происходит автоматически, если вопрос создается из таблиц с помощью редактора блокнота, поскольку в GlarusBI есть сведения о таблице и столбцах из синхронизации.
С другой стороны, если вопрос, содержащий переменную, написан на языке SQL, автор вопроса должен выбрать «Фильтр полей». Кроме того, указанное поле должно быть установлено как категория в метаданных таблицы, чтобы GlarusBI отображала выпадающий список значений.
Правильно ли связаны фильтры?¶
Основная причина: Наиболее распространенная причина ошибок заключается в том, что фильтры связаны в неправильном направлении. Если вы хотите, чтобы значения, отображаемые фильтром B, были ограничены настройкой фильтра A, вы должны изменить настройки для фильтра B, а не для фильтра A, т. е. настройка применяется к нижестоящему, а не к вышестоящему фильтру.
Действия:
Удалите существующую связь и создайте новую в противоположном направлении.
Действительно ли некоторые строки удовлетворяют условию полного фильтра?¶
Основная причина: Нет строк, удовлетворяющих всем условиям связанного фильтра. Продолжая пример с городом и штатом, если вы вручную введете название города, который не находится в выбранном штате, ни одна запись не будет удовлетворять обоим условиям.
Действия:
Создайте вопрос, который использует только первый фильтр, и убедитесь, что он выдает несколько строк. (Если это не так, добавление второго фильтра не приведет к появлению каких-либо строк.)
Создайте вопрос, который, по вашему мнению, должен дать тот же результат, что и комбинация связанных настроек фильтра, которая не дает никаких данных. Если он дает ожидаемый результат, проверьте наличие опечаток и убедитесь, что вы используете правильный тип соединения.
Все ли строки, прошедшие первый тест, проходят и второй?¶
Основная причина. В некоторых случаях все строки, удовлетворяющие условию первого фильтра, также удовлетворяют условию второго фильтра, поэтому второй фильтр не действует.
Действия:
Создайте вопрос, который включает первое условие фильтра напрямую (т. е. в вопросе, а не с использованием переменной), затем добавьте второе условие фильтра. Если результирующий набор не меняется, проблема в логике, а не в фильтрах.
Отображает ли виджет связанного фильтра раскрывающийся список отфильтрованных значений?¶
Основная причина: Чтобы связанный виджет фильтра отображал правильное подмножество значений в виде раскрывающегося списка, необходимо настроить явное определение внешнего ключа — связывание фильтров сам по себе не сообщает GlarusBI об отношениях между таблицами в базе данных.
Действия:
Убедитесь, что метаданные таблицы GlarusBI для вашей базы данных включает отношение внешнего ключа.