Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
29 сен 2024, 22:19

Регистр остатков комплектов (проект)

Автор bolobol, 26 сен 2011, 01:12

0 Пользователей и 1 гость просматривают эту тему.

bolobol

Здравствуйте.

Задача всё та же - досконально разобраться с возможностями и правильным применением тех средств платформы 8.2, которые на сегодня любезно предоставлены нам фирмой 1С в их... флуд какой-то ))

Нарисовалась следующая задача:
Поставщик поставляет товар в разных упаковочных объёмах: Коробочка = 12 шт., Коробка = 600 шт., Короб = 900 шт.
Во избежании пересчёта товара на складе - отгрузка из большего объёма меньшего сопровождается опечатыванием остатка с указанием количества.
Оператору заказа необходимо подбирать и согласовывать заказ для наименьшего количества делений больших упаковочных объёмов.
При наличии на складе 1-ого Короба (900 шт.) и Коробки с остатком в 300 шт. система не должна распечатать согласованный заказ на 312 шт. методом отгрузки Коробки с остатком и вскрытия Короба для догрузки 12 шт. - должна быть одна позиция - из Короба взять 312 шт. Напротив, если согласован заказ на 288 шт. - взять из остатков Коробки.

В первом приближении представляется следующая схема:
Регистр остатков: Измерения: Номенклатура, КоличествоВУпаковке, Поставка; Ресурсы: Остаток.
При поступлении товара1: 1 Короб, 2 Коробки, 3 Коробочки будут записи в регистре:
Товар1, 900, Партия1: 1
Товар1, 600, Партия1: 2
Товар1, 12, Партия1: 3
При списании товара1 300 шт. будет запрос к остаткам, где Номенклатура = Товар1, КолвоВУпаковке >= 300, сортировать по КолвоВУпаковке ВОЗР, Период ВОЗР. (Это, вообще, реально?))
И, получается, что реализовать ФИФО никак, или я не прав?
После получения существующих остатков, первая запись будет: Товар1, 600, Партия1: 2, что удовлетворяет списанию и выполнены будут следующие действия:
Расход: Товар1, 600, Партия1: 1
Приход: Товар1, 300, Партия1: 1
Последующее списание 312 шт:
Расход: Товар1, 600, Партия1: 1
Приход: Товар1, 288, Партия1: 1
Остатки будут выглядеть так:
Товар1, 900, Партия1: 1
Товар1, 12, Партия1: 3
Товар1, 300, Партия1: 1
Товар1, 288, Партия1: 1
Таблица разрастается и каждый следующий запрос к остаткам будет получать всё большую и большую таблицу. Явно что-то не так, но тогда как?
Как прикрутить сюда "новый контроль остатков", если изначально даже неизвестно по каким измерениям будет списан товар?, а выполнение условий задания нужно обеспечивать в момент проведения. То есть - нельзя списать количество товара, а потом, ночью, разобраться из какой бы коробки его отгрузить, несмотря на то, что досписывание по партии есть мысль прикрутить именно к кнопке печать, т.е. - по необходимости отправки документов на склад. Таким образом - проведение как резервирование, а печать или ночная регламентная операция - как списание по партиям и подбор упаковки.
Подсоветуйте, куда копаться)) Где ж собака-то порылась?

bolobol

Никаких комментариев, значит ли это, что решение максимально единственно возможное???...

comol

В штатных конфигурациях 1С (да и не только 1с) это решается  понятием "единица измерения" "короб", "коробка", "штука".

В вашем случае нужно будет ещё предусмотреть процедуру "разукомплектации", т.е. списание 1 коробки и оприходования 300 шт. Сделать это можно вполне автоматически Оператор вводит количество коробок и количество штук к отгрузке. По наличию будут показаны остатки в текущем их измерении по ЕИ, контроль остатков тоже будет работать в рамках ЕИ. автоподбор коробки тоже можно сделать, но это уже простенькое FIFO...

В принципе проблема останется только в том что если из коробке с 300 шт отгрузили 288 то 12 шт будут "валяться на складе"... наверное нужно будет ещё ШК на коробки и предусмотреть процедуру "комплектации" если коробки не разовго использования, а товар закупается в штуках...

вообщем задача уже ближе к WMS. Можете в принципе любую WMS посмотреть (от Axelot, Кортекс) там эти задачи решены.. притом красиво, а не "кустарно" как сейчас пытаемся сделать :).

Статьи по оптимизации 1С: http://comol.livejournal.com/

bolobol

Цитата: comol от 28 сен 2011, 11:01
В штатных конфигурациях 1С (да и не только 1с) это решается  понятием "единица измерения" "короб", "коробка", "штука".
Прошу прощения заранее, т.к., возможно, не до конца понял, но... В шатных конфигурациях этот вопрос не решается этим способом, т.к. в регистры всё количество попадает в шт., а приходовать и отгружать можно в коробах, что в проведении пересчитывается автоматически в шт. А тут задача другая - сказано отгрузить один короб - значит и на складе он в виде укомплектованного короба (возможно с большем количеством, но не с меньшим) должен существовать. Плодить на каждое оставшееся в отдельно взятом коробе количество шт, новую единицу измерений - не выход, т.к. найти все единицы, которые в шт больше или равно, чем требуется для отгрузки - только усложнит работу БД на дополнительное условие, а Измерение "КоличествоВУпаковке" и так может являться единицей измерения хранения упаковок. Отмечу также, что создание комплектов, как вариант решения, просто приведёт к увеличению номенклатурных позиций комплектов, а значит и дополнительному поиску, где в комплекте больше или равно шт, чем требуется, а значит - дополнительная работа для БД + разукомплектование, списание, остатко-комплектование.

Цитата: comol от 28 сен 2011, 11:01
Сделать это можно вполне автоматически Оператор вводит количество коробок и количество штук к отгрузке.
А оператор должен вводить заказанное количество в штуках и досогласовывать заказ к наименьшей большей или равной заказу коробке, либо меньшей, согласно договора с контрагентом.

comol

ЦитироватьВ шатных конфигурациях этот вопрос не решается этим способом, т.к. в регистры всё количество попадает в шт
. Ну вы же поняли главное общий принцип - естетсвенно в ващем случае ЕИ будет измерением регистра, иначе как делать всё то что я описал :).
Комплектацию я разукомплектацию я имел ввиду не комплекты, а как раз превращение из коробов в штуки, а из штук в коробки и т.п. штатная логика любой WMS.

Цитироватьоператор должен вводить заказанное количество в штуках и досогласовывать заказ к наименьшей большей или равной заказу коробке, либо меньшей, согласно договора с контрагентом.

Тогда вообще какие проблемы... просто ЕИ даже комплектацию и разукомплектацию делать не нужно только вот это не согласуется с тем что вы пишите:

Цитироватьметодом отгрузки Коробки с остатком и вскрытия Короба для догрузки 12 шт
Статьи по оптимизации 1С: http://comol.livejournal.com/

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск