Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

помогите запустить формулу

Всем привет,

Я не программист и не специалист баз данных, но мне очень нравятся возможности клик. Не как не могу решить задачку. Задача: вытащить продажи то даты прихода по текущий момент. Формула работает частично.

Пример:

Работает - sum({$<Дата={">01.01.2014<max(Дата)"}>}[Количество ед.])

Не работает - sum({$<Дата={">[дата последнего прихода]<max(Дата)"}>}[Количество ед.])

Дата последнего прихода находится в отдельной таблице (в структуре) по приходу товара. Формат данных числовой. Если вытаскивать отдельно, то даты нормально выходят в числовом формате, и в формате даты после настройки числовых форматов.

  

max(Data_Prix) – переменную (столбец с данными) назвал - дата последнего прихода

помогите запустить формулу - sum({$<Дата={">[дата последнего прихода]<max(Дата)"}>}[Количество ед.])

в ней не работает только момент с добавлением даты последнего прихода.

Заранее благодарю!!!

3 Replies
whiteline
Master II
Master II

Hi.

Set analysis ограничивает множество, на котором вычисляется выражение, и выполняется один раз, а не для каждого значения измерения. Насколько я понял, задача состоит в том, чтобы для каждого товара использовать разный интервал. Так работать не будет.

Есть возможность выложить обрезанный пример ?

PS: вопросы на русском лучше задавать в группе QlikView Россия и СНГ быстрее помогут.

Not applicable
Author

Вам необходимо дату последнего прихода(Не самое лучшее название ) вычислять в некоторой переменной.

1. Добавьте переменную vMaxDateArrivage.

2. Пусть она вычисляется по следующей формуле Date(Max([дата последнего прихода]))

3. Ваша формула примет вид:

sum({$<Дата={">$(vMaxDateArrivage])<max(Дата)"}>}[Количество ед.])

4. Если вы хотите использоватью эту формулу в таблице по товарам, тогда такой вид

sum({1<Дата={">$(vMaxDateArrivage])<max(Дата)"}>}[Количество ед.])

Eugeny_Ilyin
Creator II
Creator II

День добрый.

Конечно, хотелось бы глянуть пример.
Вот мой вариант:

продажи:

LOAD * INLINE [

    Дата, Товар, Количество

    01.08.2014, A, 100

    05.08.2014, A, 200

    15.08.2014, A, 100

    20.08.2014, A, 200

    2.09.2014, A, 100

    7.09.2014, A, 300

    15.09.2014, A, 100

    25.09.2015, A, 200

    01.08.2014, B, 100

    05.08.2014, B, 200

    15.08.2014, B, 100

    20.08.2014, B, 200

    2.09.2014, B, 100

    7.09.2014, B, 300

    15.09.2014, B, 100

    25.09.2015, B, 200

];

ДатыПокупки:

LOAD * INLINE [

    Товар, Последняя дата покупки

    A, 07.09.2014

    B, 13.08.2014

];

Для таблицы с измерением Товар выражение будет:

sum(

if(Дата>[Последняя дата покупки], aggr(Sum (Количество), Товар, Дата),0)

)