В этой заметке я опишу как в поле Неделя (в таблице календаря модели Qlik Sense) выбрать недели с первой по текущую.
Генерируем календарь:
//Формирование календаря
QuartersMap:
MAPPING
LOAD rowno() as Month,
'Кв.' & Ceil (rowno()/3) as Quarter
AUTOGENERATE (12);
Temp:
LOAD MakeDate(2015,1,1) As minDate,
Today() As maxDate
AutoGenerate 1;
Let vStartDate = Date(Num(Peek('minDate', 0, 'Temp')));
Let vEndDate = Date(Num(Peek('maxDate', 0, 'Temp')));
Let varMinDate = Num(Peek('minDate', 0, 'Temp'));
Let varMaxDate = Num(Peek('maxDate', 0, 'Temp'));
DROP Table Temp;
TempCalendar:
LOAD $(varMinDate) + Iterno()-1 As Num,
Date($(varMinDate) + IterNo() - 1) as TempDate
AutoGenerate 1
While $(varMinDate) + IterNo() -1 <= $(varMaxDate);
Календарь:
Load
Date(TempDate) As Дата,
week(TempDate) As Неделя,
Month(TempDate) As Месяц,
ApplyMap('QuartersMap', month(TempDate), Null()) As Квартал,
Year(TempDate) As Год,
Day(TempDate) As НомерДень,
Week(weekstart(TempDate)) & '-' & WeekYear(TempDate) As НеделяГод,
Month(TempDate) & '-' & Year(TempDate) As МесяцГод,
ApplyMap('QuartersMap', month(TempDate), Null()) & '-' & Year(TempDate) As КварталГод,
WeekDay(TempDate) As ДеньНедели
Resident TempCalendar
Order By TempDate ASC;
Drop Table TempCalendar;
В Qlik Sense Dashboard Bundle выбираем кнопку Button for navigation:

Перетаскиваем объект на лист приложения Qlik Sense:

Настраиваем кнопку “Select a value in a field”:

Формула Value для кнопки:
='=(Неделя>=1 and Неделя<=Week(Today()))'
Результат работы кнопки:

Скачать модель Qlik Sense с примером:
Добрый день, а можно ли сделать так что при следующим нажатии на это-жу кнопку я очищу выборку с 1 по текущую неделю