Добрый день! есть такой вопрос: я отбираю топ 50 строк по сумме и вывожу номер позиции(топ)
через такую формулу:
rank(If(Aggr(Rank(sum(Количество))<=50,[Категория 2, код]),sum(Количество)),4,1)
НО бывает что ранк возвращает 2-5 то есть парные значения и отсюда вопрос: как сделать так, чтобы при появлении таких значений клик смотрел на столбец продаж и сортировал по ним внутри этого значения (2-5) и выводил уже не 4 значения 2-5, а 2,3,4,5?
DESKTOP QlikView
В хелпе ведь это есть (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)
Цитата: 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амый нижний ряд на первой строке, увеличенный на один для каждой строки.
Вопрос в том как правильно это сделать?
Проблема решена добавлением 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 (https://community.qlik.com/t5/QlikView-App-Development/How-to-get-rank-positions/td-p/1098916)
Отлично! Нужно запомнить