Всем привет!
Возник вопрос следующего характера.
Есть таблица (прикрепленный файл 101.png):
Data:
LOAD * Inline [
ID, DATE, NAME, QUANT_STOCK
1, 01.01.2016, NAME_01, 2
2, 02.01.2016, NAME_01, 1
3, 03.01.2016, NAME_01, 0
4, 11.01.2016, NAME_01, 5
5, 12.01.2016, NAME_01, 5
6, 13.01.2016, NAME_01, 5
7, 14.01.2016, NAME_01, 0
];
Хотелось бы получить следующую таблицу - прикрепленный файл 102.png
Описание:
Если остаток на складе какого-то товара 0 и следующие несколько дней товара не было, то хотелось бы, чтобы данный товар множился в таблице пока он не появится на складе (то есть, пока не будет прихода).
Также, хотелось бы, чтобы был счетчик - товара нет на остатке 1 день, 2 дня, 3 дня и т.д.
Заранее спасибо за любую помощь.
Можно сделать обработку таблицы построчно, но при большом размере таблицы скрипт будет долго отрабатывать.
QVS файл прикрепил к сообщению.
Спасибо за ответ.
Не уточнил сразу - это все нужно реализовать в QlikView. У меня нет QlikSense.
Это скрипт QliKView в формате QVS. Можно открыть блокнотом (notepad++) или импортировать в приложение QliKView.
Прикрепил целиком приложение.
Еще раз спасибо.
В целом, вариант рабочий.
Правда, не для моего случая. В моем случае есть около 50 объектов и в каждом объекте около 2000-4500 позиций за каждый день. Через цикл такое будет очень долго отрабатывать.
P.s. Кажись пробовал такой вариант, но отказался.
P.s.s. В данный момент у меня реализован данный вопрос, но через full join. Но full join это риски (декартово произведение) и ищу другой вариант реализации.
Привет!
Попробуй посмотреть тут. Остаток на каждый день.
ТУТ (http://qlikview-forum.ru/qvf/index.php/topic,820.msg1877.html#msg1877)
Я делая таблицу остатка на каждый день создавал отдельно календарь.
Далее к календарю подцеплял движения, сортировал по полю магазин, завод, дата и после этого при обработке скрипта заполнял данные, сравнивая предыдущию запись с текущей.
В твоем случае ещё проще. Создать календарь. Прицепить к нему отдельно товар предварительно очистив дубликаты, создастся табличка на каждый день, где будет отдельная запись с каждым товаром. Далее к полученной табличке прицепить существующие остатки по ключу дата-товар. И в готовом результате значение NULL в остатке заменить на ноль.