Size: a a a

2021 August 20

A

Aleksandr in Qlik BI chat
Если это формула для всего приложения и нельзя вынести в две меры, то можно вынести в переменную. Переменная будет разово быстро проверять выборки в поле и подставлять текст итоговой формулы, а клик уже обрабатывать простую формулу будет, вместо ифов
источник

СС

Станислав Строгий... in Qlik BI chat
Да, этот приём известен. Спасибо.
Переменная рассчитается вне диаграммы и так иногда быстрее.
источник

KG

Konstantin Germanov in Qlik BI chat
Если клик не считает цифры в мере, даже если задаёшь нужный формат, что делать?
источник

SC

Stanislav Chernov in Qlik BI chat
getpossiblecount можно еще попробовать..
источник

СС

Станислав Строгий... in Qlik BI chat
Это то же что и Count(), только Count() быстрее вроде бы.
источник

SC

Stanislav Chernov in Qlik BI chat
Хотя тут про выборки ...
источник

SC

Stanislav Chernov in Qlik BI chat
А сделай к своим фильтрам доп флаги ?
источник

SC

Stanislav Chernov in Qlik BI chat
Тогда через set analysis можно пойти будет
источник

СС

Станислав Строгий... in Qlik BI chat
У меня вот такой адок персональный. Я попробую в начале заложить найденное собой решение из варианта Игоря С. Потом подумаю ещё пару раз.
источник

SC

Stanislav Chernov in Qlik BI chat
А еще, как вариант len (concat (Field) ) > 0
источник

DS

Daniil Semenov in Qlik BI chat
так не проще в vPrimeLevel сразу высчитывать нужное значение?
Там же вся разница в том что либ это sb, либо значение vPrimeLevel
источник

A

Aleksandr in Qlik BI chat
та же мысль возникла

в vPrimeLevel определять есть ли выборка (я так понимаю, любая) в одном из шести полей, если нет, то sb, иначе уже текущую логику переменной vPrimeLevel
источник

DS

Daniil Semenov in Qlik BI chat
да там может оказаться, что в самой vPrimeLevel еще проверяются эти же выборки
источник

A

Aleksandr in Qlik BI chat
и проверку выборки можно чуть упростить:
вместо rangetextcount и гетфилдов использовать такое:
RangeSum(GetSelectedCount(ТБ),GetSelectedCount(ГОСБ),GetSelectedCount... , 'sb', /тут текущая логика vPrimeLevel/ )
источник

СС

Станислав Строгий... in Qlik BI chat
Если field содержит 1000 выбранных щначений - это долго будет.
источник

СС

Станислав Строгий... in Qlik BI chat
GetSelectedCount() - оказалось что очень долго считает. GetFieldSelections(MyFFF, '', 1) - быстрее
источник

A

Aleksandr in Qlik BI chat
а если попробовать оставить одну формулу вида Sum({<Уровень={"$(vPrimeLevel)"}, Дата={"$(vDate)"}, [Атрибут рейтинга]=>} $1)

в vPrimeLevel написать формулу для вывода разреза данных, даже без разницы через что: getfieldselections или getselectedcount

любой из вариантов отработает быстро и подставит в формулу "sb"/"tb" или другие метки по вашей. логике за доли секунд, а дальше уже простой Sum()
источник

СС

Станислав Строгий... in Qlik BI chat
Это основа формулы. Вокруг неё всё и пляшет. формулы в переменных повторяют эту логику для разных вариантов использования. Вопрос, с которого началась дискуссия направлен на то, чтобы оптимизировать эти "обёртки".
источник

A

Aleksandr in Qlik BI chat
То что я увидел на скриншоте с формулами - излишний if чтобы проставить “sb” в формулу если не выбрана орг структура и vPrimeLevel в остальных случаях
Мое предложение в том, чтобы убрать if совсем и всю логику перенести в vPrimeLevel
источник

A

Aleksandr in Qlik BI chat
Либо я что-то упустил
источник