Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Здравствуйте, помогите пожалуйста. Есть таблица. В таблице "Маршрут" и "Время" (screen ниже).
Нужно отобразить маршруты, которые начинаются с определенного часа. Час может меняться.
Я создал переменную, в которую буду прописывать нужный час. И прописал условие в списке выражения и список назвал "Поле1".
Условие:
=if(Hour(Время)>='$(vВремя)' and Hour(Время)<='23','1')
Когда в списке "Поле1" выбираю значение "1", таблица хорошо отрабатывает, но значение в списке "Поле1" не выделяется зеленым и нет возможности снять этот фильтр.
Что можно сделать, чтобы список "Поле1" отрабатывал как обычный список?
Не знаете почему так происходит?
У тебя вместо реального поля используется вычисляемое поле. Оно может работать как фильтр по результатам вычисления, но только напрямую. Если выбрано другое поле, движок не знает как взаимодействовать с вычисляемым полем. Ведь в нем можно написать что угодно.
Зачем нужно выражение в таблице? Если можно только поставить ограничение на измерение?
Ограничение на измерение как раз можно ставить по первому выражению, т.е. по значениям меры.
Можно по подробнее, как это сделать?
Во вложении вариант реализации через кнопки которые выставляют в переменную значение фильтра, либо пустоту
Также попытался сделать вариант через измерение вкл/выкл. Для этого нужна еще одна переменная которая вместо кнопок проверяет значение измерения и выставляет фильтр: vFieldValue=if(ValueList('вкл','выкл')='вкл',vFilter)
Но через ValueList('вкл','выкл') походу не будет работать, нужно создать реальное измерение через Inline Load а перезагружать я не могу
Здравствуйте!
Не совсем понял смысл именно такой реализации, но если конечная цель сделать что-то типа Фильтр: Вкл/Выкл, то вариантов это реализовать много.
В первую очередь нужно использовать не прямую таблицу, а таблицу где время используется в качестве меры. Тогда можно использовать опцию ограничение измерения и проставить туда переменную времени.
2 вариант, выражение с переменной фильтра типа avg( $(vFilter) Время), где vFilter = {<Время={">=$(vВремя)"}>} либо Пусто. Значения выставляются в событиях кнопок.
3. вариант создать измерение Фильтр со значениями Вкл, Выкл. Аналогично пункту 2 использовать переменную где
vFilter = if(Фильтр='Вкл', '{<Время={">=$(vВремя)"}>} ', '')
Удачи!
Здравствуйте, не очень понял как это сделать.
У меня есть два измерение в прямой таблице. Маршрут и Время.
На "скрине" видно, что у маршрута " 1 ВИДНОЕ..." заполнено время 7 часов до 15.
Как мне сделать выборку значений в таблице с 13 часов например. При этом значение с какого часа может меняться.
Добрый день.
Вышлите пожалуйста сам файл с примером. Я покажу вам в нем .
Да, конечно
Странно, в моем QlikView все работает. Поле выбирается и с сбрасывается.
Может у вас выставлены специфичные настройки?
На всякий случай добавил свой вариант через меру и ограничение измерения, которое сразу фильтрует таблицу при вводе Часа
Функцию Вкл/Выкл фильтра можно сделать через кнопку или соотв. измерение как я писал выше.
Понял почему поле не выбирается и не сбрасывается. Когда нет никаких выборок, то поле отрабатывает отлично. Но когда стоят хоть какие нибудь другие выборки, поле сразу не сбрасывает. (screen ниже)
Нет никаких выборок и поле отлично работает.
Поставил фильтр по Дата и сразу другая выборка не активна при этом она отрабатывает.
Не знаете почему так происходит? (файл приложения прикреплю) .
Через меру и ограничение измерения отличный вариант, Спасибо большое . Можно по подробнее, как это сделать? Зачем нужно выражение в таблице? Если можно только поставить ограничение на измерение?
Я бы делал тоже через переменную, но прописал бы расчеты в самой формуле выражения через Set Analysis
Чтобы таблица изначально рассчитывалась от переменной
Не знаете почему так происходит?
У тебя вместо реального поля используется вычисляемое поле. Оно может работать как фильтр по результатам вычисления, но только напрямую. Если выбрано другое поле, движок не знает как взаимодействовать с вычисляемым полем. Ведь в нем можно написать что угодно.
Зачем нужно выражение в таблице? Если можно только поставить ограничение на измерение?
Ограничение на измерение как раз можно ставить по первому выражению, т.е. по значениям меры.
Можно по подробнее, как это сделать?
Во вложении вариант реализации через кнопки которые выставляют в переменную значение фильтра, либо пустоту
Также попытался сделать вариант через измерение вкл/выкл. Для этого нужна еще одна переменная которая вместо кнопок проверяет значение измерения и выставляет фильтр: vFieldValue=if(ValueList('вкл','выкл')='вкл',vFilter)
Но через ValueList('вкл','выкл') походу не будет работать, нужно создать реальное измерение через Inline Load а перезагружать я не могу
Отличной вариант, спасибо