03.02.2006, 11:05 | #1 |
Участник
|
Остатки на складе полученные с другого склада
Подскажите пожалуйста, как мне получить в коде все складские остатки на складе_1, которые были перенесены туда со склада_2?
Т.е. нужно показать какие сейчас на складе_2 есть остатки пришедшие со склада_1. Задача проста в постановке, но через API я не нашел ничего подобного. А ручками у меня получаются какие-то громандные двойные трехуровневые join-ы между таблицами InventSum, InventJournalTrans, InventDim. Буду очень благодарен за совет. |
|
03.02.2006, 11:26 | #2 |
Участник
|
Партионный учет есть? Если нет - не помогут никакие запросы.
|
|
03.02.2006, 11:42 | #3 |
Аманд
|
Посмотрите запрос Мониторинг, он есть во многих формах. Например Журнал Перенос/Склад/Мониторинг
Картинка в прикреплённом файле, складская аналитика только Склад. Последний раз редактировалось Vals; 03.02.2006 в 11:46. |
|
03.02.2006, 12:06 | #4 |
Участник
|
Приход получить не сложно. А вот как быть с расходом...
Если остаток сформировался не только переносом с другого склада, и был расход, то вы можете получить отрицательные остатки. Со склада 2 на склад 1 пришло 10 шт Со склада 3 на склад 1 пришло 5 шт Расход со склада 1 составил 7 шт. Нужно получить остатки склада 1 в "разрезе" склада 3, получаем -2. Нехорошо. Согласен, что без партионного учета сложновато. А Мониторинг как связывает проводки? Ну по номеру складской аналитике уж? |
|
03.02.2006, 12:39 | #5 |
Участник
|
Вот именно, неясно как получить расход.
Если есть потребность в такой информации, значит товар со склада 2 наверное как-то отличается от того же товара со склада 3. Например номером партии =) Можно ввести складскую аналитику "склад откуда приехал товар"... |
|
03.02.2006, 15:04 | #6 |
Участник
|
В общем случае - однозначно связать проводку расхода с проводкой прихода.
Насчет использования аналитики: может разделить по складам, товар который приходит извне и товар который приходит с другого склада? Или по ячейкам? Или по партиям вобщем направление мысли понятно. С партией нормально получается. |
|
03.02.2006, 15:25 | #7 |
Участник
|
Можно еще эти приходы-расходы маркировать. Но будет побочный эффект с себестоимостью =)
|
|
03.02.2006, 16:06 | #8 |
Участник
|
Маркировать я думаю не очень приемлемо. Это нужно будет делать вручную или писать непонятно какую модификацию. Вобщем головняк.
|
|
03.02.2006, 17:53 | #9 |
Аманд
|
МЕня терзают смутные сомнения по поводу такой постановки. Может у вас складами реализованиы Филиалы?
Расскажите подробнее о постановке. |
|
03.02.2006, 18:10 | #10 |
Участник
|
Ага. Мне бы тоже было интересно узнать о постановке подробнее.
|
|
04.02.2006, 11:00 | #11 |
Участник
|
Постановка
Сценарий, в котором мне нужно решать эту задачу такой:
Со склада_1 какое-то время "выдается" (переносится) товар на разные склады, например на склад_2. В какой-то момент надо "потребовать" то, что выдано со склада склад_1 назад со всех складов. А для этого, как раз и надо получить те остатки по каждому из складов, которые пришли со склада_1. Да! Забыл сказать, и это важно, номенклатура с включеной аналитикой серийный номер и есть контроль по нему, т.е. у нас в принципе остатки все не больше 1. Алгоритм я думаю такой: 1. Получить склады (склады-приемники) на которые что-то переносилось со склада_1. 2. "Бежать" по ненулевым остаткам каждого склада-приемника (например склад_2) и смотреть последнюю складскую проводку переноса каждой н. единицы на склад_2. 3. Если последняя проводка переноса была со склада_1, то единица попадает под критерий. Это, я думаю, можно реализовать запросом с несколькими join-ами, но просто, мне кажется, что это будет некорректно, т.к. данных если будет много, то все может тормозить. Хотя из складских проводок выбирается только последняя... В общем в раздумьях... |
|
04.02.2006, 11:03 | #12 |
Участник
|
2 Vals.
Спасибо! Поразбираюсь. |
|
04.02.2006, 11:44 | #13 |
Аманд
|
Цитата:
Сообщение от Romb
Сценарий, в котором мне нужно решать эту задачу такой:
Со склада_1 какое-то время "выдается" (переносится) товар на разные склады, например на склад_2. В какой-то момент надо "потребовать" то, что выдано со склада склад_1 назад со всех складов. А для этого, как раз и надо получить те остатки по каждому из складов, которые пришли со склада_1. Алгоритм я думаю такой: 1. Получить склады (склады-приемники) на которые что-то переносилось со склада_1. 2. "Бежать" по ненулевым остаткам каждого склада-приемника (например склад_2) и смотреть последнюю складскую проводку переноса каждой н. единицы на склад_2. 3. Если последняя проводка переноса была со склада_1, то единица попадает под критерий. Это, я думаю, можно реализовать запросом с несколькими join-ами, но просто, мне кажется, что это будет некорректно, т.к. данных если будет много, то все может тормозить. Хотя из складских проводок выбирается только последняя... В общем в раздумьях... Обратили внимание, что в запросе Лот (Проводки лота) отображаются 2 проводки: Расхода со склада_1 и приход на склад_2 Идентификатор Лота для обоих проводок одинаков. Дальше, я думаю, дело техники С другой стороны, описанные вами переносы, можно выполнить вручную (не будем спорить об удобстве). Открываете журнал Перенос, фильтруете записи по критериям (аналитика перенос С - На по складам и проч. Затем копируете журнальчики функцией копирования и меняете аналитику наоборот. P.S. Предполагаю что я понял Вашу ситуацию с переносами и мне кажется что изначально эти операции нужно было реализовывать по-другому. |
|
|
За это сообщение автора поблагодарили: Romb (3). |
06.02.2006, 07:37 | #14 |
Участник
|
Большое спасибо. Я уже как раз и решил проблему таким образом через запросы в коде.
А что за подозренья по поводу иной реализации? |
|