Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Коллеги, нужна помощь.
Есть таблица продаж с датами.
Но период нужно сгруппировать так:
например сегодня 25.12.2016
тогда год будет равен: 25.12.2016 - 25.12.2015 - это соответсвенно 2016, далее 25.12.2015 - 25.12.2014 - это 2015 и т.д
т.е. нужно все продажи сгруппировать именно таким образом, полное накопление за последние 12 месяцев и показать динамику.
Дата отчета будет выбираться и от нее нужно вести все расчеты, ну это уже в идеале, а главное сгруппировать все данные как я описал выше
Владислав,
Можно попробовать прямо в диаграмме сделать сдвиг даты на число дней, не хватающих до конца года от даты отчета.
Создайте переменную vToday =num(Today())
А в диаграмме заменяем измерение Год на вычисляемое измерение
= year( Дата +
YearEnd(Дата) - AddYears(vToday, -Year(vToday)+Year(Дата))
)
Привет.
Если это нужно/можно рассчитать на этапе загрузки, то можно вот так (частный случай для 2016 и 2017 годов):
SET v_TodayVirtual_D = '04.01.2017';
LET v_TodayVirtual_N = Num(v_TodayVirtual_D);
LET v_DayFirst2017 = '01.01.2017';
LET v_DayCount = v_TodayVirtual_D - v_DayFirst2017 + 1;
Data:
LOAD * Inline [
NN, DATE, PRICE, Q
1, 29.12.2016, 50, 2
2, 30.12.2016, 10, 52
3, 31.12.2016, 1, 1
4, 01.01.2017, 2, 60
5, 02.01.2017, 80, 1
6, 03.01.2017, 400, 3
7, 04.01.2017, 55, 45
];
STORE * from Data into Data.qvd (qvd);
DROP Table Data;
Data:
LOAD NN,
DATE,
PRICE,
Q,
Year(DATE) as YEAR_REAL,
If (DATE >= '$(v_DayFirst2017)', Year(DATE), If (DATE + $(v_DayCount) >= '$(v_DayFirst2017)', Year(DATE + $(v_DayCount)))) as YEAR_VIRTUAL
FROM Data.qvd (qvd);
Если, это нужно рассчитать в дашборде, то нужно делать справочник периодов. То есть, для каждого дня, должно соответствовать 365 дней в справочнике периодов.
мысль интересная, должно подойти, сегодня попробую
Владислав,
Можно попробовать прямо в диаграмме сделать сдвиг даты на число дней, не хватающих до конца года от даты отчета.
Создайте переменную vToday =num(Today())
А в диаграмме заменяем измерение Год на вычисляемое измерение
= year( Дата +
YearEnd(Дата) - AddYears(vToday, -Year(vToday)+Year(Дата))
)
ТО, что надо, спасибо.
Я только переменную буду определять через календарь, ну что бы можно было выбрать дату и от нее все считать.