Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
Февраль 23, 2018, 05:34:41 pm

Автор Тема: "Размножение" товаров. Остаток на каждый день.  (Прочитано 1499 раз)

Оффлайн kvv

  • Гуру
  • ***
  • Сообщений: 135
  • Страна: 00
  • Рейтинг: +36/-0
    • Просмотр профиля
Всем привет!
Возник вопрос следующего характера.
Есть таблица (прикрепленный файл 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 дня и т.д.

Заранее спасибо за любую помощь.

Оффлайн Prive

  • Новичок
  • *
  • Сообщений: 45
  • Страна: ru
  • Рейтинг: +22/-0
    • Просмотр профиля
Re: "Размножение" товаров
« Ответ #1 : Январь 15, 2016, 11:45:58 am »
Можно сделать обработку таблицы построчно, но при большом размере таблицы скрипт будет долго отрабатывать.
QVS файл прикрепил к сообщению.

Оффлайн kvv

  • Гуру
  • ***
  • Сообщений: 135
  • Страна: 00
  • Рейтинг: +36/-0
    • Просмотр профиля
Re: "Размножение" товаров
« Ответ #2 : Январь 15, 2016, 12:15:07 pm »
Спасибо за ответ.
Не уточнил сразу - это все нужно реализовать в QlikView. У меня нет QlikSense.

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

Re: "Размножение" товаров
« Ответ #2 : Январь 15, 2016, 12:15:07 pm »

Оффлайн Prive

  • Новичок
  • *
  • Сообщений: 45
  • Страна: ru
  • Рейтинг: +22/-0
    • Просмотр профиля
Re: "Размножение" товаров
« Ответ #3 : Январь 15, 2016, 12:23:43 pm »
Это скрипт QliKView в формате QVS. Можно открыть блокнотом (notepad++) или импортировать в приложение QliKView.
Прикрепил целиком приложение.

Оффлайн kvv

  • Гуру
  • ***
  • Сообщений: 135
  • Страна: 00
  • Рейтинг: +36/-0
    • Просмотр профиля
Re: "Размножение" товаров
« Ответ #4 : Январь 15, 2016, 01:18:58 pm »
Еще раз спасибо.

В целом, вариант рабочий.
Правда, не для моего случая. В моем случае есть около 50 объектов и в каждом объекте около 2000-4500 позиций за каждый день. Через цикл такое будет очень долго отрабатывать.

P.s. Кажись пробовал такой вариант, но отказался.

P.s.s. В данный момент у меня реализован данный вопрос, но через full join. Но full join это риски (декартово произведение) и ищу другой вариант реализации.

Оффлайн DmitryK

  • Наставник
  • **
  • Сообщений: 63
  • Страна: ru
  • Рейтинг: +20/-0
  • QlikView v.11.20
    • Просмотр профиля
Re: "Размножение" товаров
« Ответ #5 : Январь 18, 2016, 01:16:21 pm »
Привет!
Попробуй посмотреть тут. Остаток на каждый день.
ТУТ

Оффлайн piton

  • Новичок
  • *
  • Сообщений: 22
  • Рейтинг: +5/-0
    • Просмотр профиля
Я делая таблицу остатка на каждый день создавал отдельно календарь.
Далее к календарю подцеплял движения, сортировал по полю магазин, завод, дата и после этого при обработке скрипта заполнял данные, сравнивая предыдущию запись с текущей.
В твоем случае ещё проще. Создать календарь. Прицепить к нему отдельно товар предварительно очистив дубликаты, создастся табличка на каждый день, где будет отдельная запись с каждым товаром. Далее к полученной табличке прицепить существующие остатки по ключу дата-товар. И в готовом результате значение NULL в остатке заменить на ноль.

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