Отбор нужных значений по условию

Автор Zhe700, 20 ноября 2018, 04:37:16

« назад - далее »

Zhe700

Добрый день! есть такой вопрос: я отбираю топ 50 строк по сумме и вывожу номер позиции(топ)
через такую формулу:
rank(If(Aggr(Rank(sum(Количество))<=50,[Категория 2, код]),sum(Количество)),4,1)
НО бывает что ранк возвращает 2-5 то есть парные значения и отсюда вопрос: как сделать так, чтобы при появлении таких значений клик смотрел на столбец продаж и сортировал по ним внутри этого значения (2-5) и выводил уже не 4 значения 2-5, а 2,3,4,5?
DESKTOP QlikView

Chernov


Zhe700

Цитата: Chernov от 21 ноября  2018, 09:17:43  
В хелпе ведь это есть (https://help.qlik.com/en-US/qlikview/November2018/Subsystems/Client/Content/QV_QlikView/ChartFunctions/RankingFunctions/rank.htm)

Rank([TOTAL] expr[, mode[, fmt]])

пробуйте rank(summa, 4, 2)

Если вы внимательно читали хэлп, то дожны знать, что  fmt=2 возвращает Null вместо значений, а мне нужно чтобы корректно отрабатывал mode=4 fmt=1, когда при спорных значениях топа одной записи с большей суммой продажи возвращался cамый нижний ряд на первой строке, увеличенный на один для каждой строки.

Вопрос в том как правильно это сделать?

Zhe700

Проблема решена добавлением NUM()!!!!
Num(rank(
If(Aggr(Rank(sum(Количество))<=50,[Категория 2, код]),sum(Количество)),4,1))


Спасибо Гуглу и https://community.qlik.com/t5/QlikView-App-Development/How-to-get-rank-positions/td-p/1098916

Chernov


Яндекс.Метрика