Неофициальный форум пользователей QlikView & Qlik Sense

Для разработчиков => Вопросы по Qlikview и Qlik Sense => Тема начата: LoryMax от декабря 25, 2016, 08:51:45 am

Название: Повторный расчет переменной дает NULL
Отправлено: LoryMax от декабря 25, 2016, 08:51:45 am
Добрый день!
Рассчитываю переменную в разных местах, при этом исходная таблица Т1 не меняется. Почему влияет таблица Т2 на это? При повтором расчете LastDay получаю NULL.

T1:
Load Date(Min(DateDocument)) AS MinDateDocument
    ,Date(Max(DateDocument)) AS MaxDateDocument
  from lib://SSD/DOCUMENTS.qvd(qvd)
;
      Let LastDay = date((peek('MaxDateDocument',0,T1)-$(DaysUpdates)));
     
      T2:
      Load Date('$(LastDay)'+IterNo()-1) as DateCalendar
        Resident T1
        While Date('$(LastDay)'+IterNo()-1) <= MaxDateDocument
      ;
      Let LastDay = date((peek('MaxDateDocument',0,T1)-$(DaysUpdates)));
Название: Re: Повторный расчет переменной дает NULL
Отправлено: LoryMax от декабря 27, 2016, 08:27:19 am
... маленькую детальку не учел: наименование таблицы нужно взять в одинарные кавычки.


Let LastDay = date((peek('MaxDateDocument',0,'T1')-$(DaysUpdates)));


Почему тогда при первом присвоении переменной все хорошо отрабатывает?
Название: Re: Повторный расчет переменной дает NULL
Отправлено: Chernov от декабря 28, 2016, 02:39:14 am
Вы не используете NoConcatenate, и поэтому у вас таблица T2 при втором проходе имеет наименование T2-1... далее T2-2 и т.д.