Приветствую!
Сделал в таблице вывод "месяц, год"
month(CREATEDAT) & ' ' & year(CREATEDAT)
Почему то за сен, окт, ноя 2016 года оказались в низу списка, выше пошли июл 2011 и наст. времени.
в таблице с выводом полной даты все нормально. Что может быть?
Предположу следующие
month(CREATEDAT) & ' ' & year(CREATEDAT) - текстовая мера, соответственно в сортировке идет посимвольное сравнение.
Привет.
Все верно, сортировка текстом не даст ожидаемого результата.
Используйте функцию dual().
Например,
dual(month(DateId) & '-' & year(DateId),year(DateId) & num(month(DateId), '00')) as 'Месяц-год',
не помогает. результаты те же.
Сентябрь-ноябрь 2016 среди 2011 года. :P
Решил в скрипте сортировку сделать. Тогда все ОК. Но также не должно быть?!
Finance:
load *
from lib://SSD/Finance.qvd (qvd)
;
NoConcatenate
d4:
load *
Resident Finance Order by CREATEDAT;
drop table Finance;
Почему это не должно быть?
Именно так и работает.
Или вы пытались сделать сортировку в выражении для измерения?
Тогда надо было использовать aggr().
Но это не лучший вариант.
Лучше всего использовать измерения подготовленные в скрипте.
Дело в том, что я это делал в диаграммах (QS).
Спасибо за подсказку, что измерения лучше подготавливать в скрипте.
"Почему это не должно быть?" Грузим данные как есть, и мы же должны свободно сортировать в созданных таблицах (диаграммы). Полные даты (по типу: 01.11.2011) нормально сортируются, а num(CREATEDAT) уже нет... как это может быть?
08.11.2011 - 40702
09.11.2011 - 40703
11.09.2016 - 42624
...
16.11.2016 - 42690
10.06.2011 - 40704
11.06.2011 - 40705
Причем сортировка стоит по Num... )
Попробуйте Сортировку по выражению и пропишите там выражение для даты.
Еще заметил, что сортировка в легенде тоже некорректно работает.
Минимальный год находится всегда внизу, не зависимо от того, что указано в настройках сортировки.
В данном случае Месяц у меня на Авто, Год с сортировкой по численным значениям По возрастанию.
Здесь что можно сделать?