Сортировка месяцев

Автор Анна, 12 марта 2020, 03:19:07

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

Анна

Добрый день.

Подскажите, как отсортировать месяцы за период MAT, если дата у меня выбирается переменной.

То есть если мы выбираем дату - февраль 2020, то на графике должны отображаться месяцы в таком порядке: март 2019, апр 2019, май 2019, июнь 2019, июль 2019, авг 2019, сент 2019, окт 2019, нояб 2019, дек 2019, янв 2020, фев 2020.


govorun

Вопрос из далека... В свойствах графика поищи раздел "сортировка". На память не помню, но в диаграммах точно есть такой раздел

RinatG

У меня этот вопрос также в списке задач находится. Встроенная сортировка не очень помогает, так как использую иерархическую группировку год-квартал-месяц-день. проблему с кварталами решил форматом Год/№кврт от 1 до 4. С месяцами сложнее так как Qlik не умеет стандартно сортировать месяца с названиями (или я не умею), поэтому вынужден пока использовать формат типа 1.2020...12.2020. На графике не оч красиво выглядит, хочу найти элегантный способ решения для этой задачи.

govorun

Первое, что приходит на ум, это узнать как в таблицу попадает месяц+год.
Qlik не умеет стандартно сортировать месяца с названиями
Покажите строку скрипта...

Uunit

Цитата: RinatG от 19 апреля  2020, 10:27:38  У меня этот вопрос также в списке задач находится. Встроенная сортировка не очень помогает, так как использую иерархическую группировку год-квартал-месяц-день. проблему с кварталами решил форматом Год/№кврт от 1 до 4. С месяцами сложнее так как Qlik не умеет стандартно сортировать месяца с названиями (или я не умею), поэтому вынужден пока использовать формат типа 1.2020...12.2020. На графике не оч красиво выглядит, хочу найти элегантный способ решения для этой задачи.

Функция MonthName() отлично сортируется

Uunit

Цитата: govorun от 13 марта  2020, 10:41:48  Вопрос из далека... В свойствах графика поищи раздел "сортировка". На память не помню, но в диаграммах точно есть такой раздел
Вы немного не поняли задачи.
Автор хотел получить что то типа
Sum({<Месяц={'>$(vDate)'}>}[1])Где vDate будет 01.02.2019

govorun

А мне кажется, относительно первого поста, нужна (спрашивается) обычная сортировка (по возрастанию или убывания). Главное чтобы в поле "правильное" значение было.

Uunit

Цитата: govorun от 20 апреля  2020, 09:21:55  А мне кажется, относительно первого поста, нужна (спрашивается) обычная сортировка (по возрастанию или убывания). Главное чтобы в поле "правильное" значение было.

Так используя сортировку от новых к старым (По убыванию), и формулы выше, человек получит желаемый результат.

RinatG

Друзья, решение оказалось простым - Dual(). Все заработало как надо.

govorun

#9
Цитата: RinatG от 07 мая  2020, 09:18:40  Друзья, решение оказалось простым - Dual(). Все заработало как надо.
Если даты (дни, месяцы, кварталы, годы, недели...) загружаются ПРАВИЛЬНО то никакой DUAL() не нужен. А если при загрузке данных даты прописываются ручным способом, то тогда конечно нужно как-то выкручиваться. Клик распознает стандартные/системные форматы.
Например у Вас в первом посте написано:
Цитата: Анна от 12 марта  2020, 03:19:07  май 2019
Это скорее всего "ручная запись", это ТЕКСТ а не ДАТА. И при каждом добавлении нового месяца Вам нужно будет поправлять свой DUAL. На самом деле это не "простое решение".
А правильная запись выглядела бы вот так: мая.2019. Эту запись Qlik распознает как дату и соответственно легко ее будет сортировать

RinatG

Я настаиваю, что через DUAL проще в рамках конкретно заданного вопроса. Если Вы хотите, чтобы у вас именовалось "МАЯ" - воля Ваша. Вопрос состоял в том, как отсортировать даты, представленные в удобном для разработчика/пользователя виде, а не обсуждение как проще для QlikView это сделать. В одной из статей я вычитал, что QV в любом случае ВСЕ виды данных хранит в виде пары текст&число, даже если это число изначально было. Загоняя в память данные QV пытается распознать тип данных и присваивает им порядковый номер. Через DUAL мы сами можем задать этот порядковый номер, чтобы иметь возможность сортировать как нам нужно. 

RinatG


govorun

Каждый сам себе художник. Я просто высказал свое мнение.
Но заглядывая в будущее, а Клик предназначен по сути для того, что бы была история, статистика, и прогноз, подозреваю, что будут проблемы при попытке вставить "ручные даты" в формулы и функции. Хотя, всегда можно извратиться и в данном случае.
Еще раз - каждый сам себе художник...

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