Показать сообщение отдельно
Старый 04.02.2006, 11:44   #13  
Vals is offline
Vals
Аманд
Аватар для Vals
Компания АМАНД
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2009
 
1,766 / 507 (20) +++++++
Регистрация: 27.02.2002
Адрес: Pass partout, Москва
Цитата:
Сообщение от Romb
Сценарий, в котором мне нужно решать эту задачу такой:
Со склада_1 какое-то время "выдается" (переносится) товар на разные склады, например на склад_2. В какой-то момент надо "потребовать" то, что выдано со склада склад_1 назад со всех складов. А для этого, как раз и надо получить те остатки по каждому из складов, которые пришли со склада_1.

Алгоритм я думаю такой:
1. Получить склады (склады-приемники) на которые что-то переносилось со склада_1.
2. "Бежать" по ненулевым остаткам каждого склада-приемника (например склад_2) и смотреть последнюю складскую проводку переноса каждой н. единицы на склад_2.
3. Если последняя проводка переноса была со склада_1, то единица попадает под критерий.

Это, я думаю, можно реализовать запросом с несколькими join-ами, но просто, мне кажется, что это будет некорректно, т.к. данных если будет много, то все может тормозить. Хотя из складских проводок выбирается только последняя... В общем в раздумьях...
Посмотрите мониторинг, затем посмотрите проводки по переносу. Посмотрите запрос Лот.
Обратили внимание, что в запросе Лот (Проводки лота) отображаются 2 проводки: Расхода со склада_1 и приход на склад_2

Идентификатор Лота для обоих проводок одинаков. Дальше, я думаю, дело техники

С другой стороны, описанные вами переносы, можно выполнить вручную (не будем спорить об удобстве). Открываете журнал Перенос, фильтруете записи по критериям (аналитика перенос С - На по складам и проч.

Затем копируете журнальчики функцией копирования и меняете аналитику наоборот.


P.S. Предполагаю что я понял Вашу ситуацию с переносами и мне кажется что изначально эти операции нужно было реализовывать по-другому.
За это сообщение автора поблагодарили: Romb (3).