Замена единицы хранения остатков (алгоритм)

13.11.15

Разработка - Математика и алгоритмы

Наверно, все сталкивались с проблемой, когда требуется изменить единицу хранения остатков в справочнике номенклатуры.
Но не всегда понятно, что и в какой последовательности делать, когда по данной номенклатуре уже есть движения в регистрах.
В общем, предлагаю решение в виде алгоритма, который можно использовать для написания своих обработок.

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

Когда это пара документов, недавно введенных, здесь все ясно: отменяем проведение документов, меняем единицу хранения остатков, перезаполняем документы и проводим их. Но когда документов более сотни, да еще в закрытом периоде, в который лезть нельзя? Заводить новую номенклатуру - теряем данные по продажам.

В общем, предлагаю решение в виде алгоритма, который можно использовать для написания своих обработок.

Но предварительно рассмотрим пример из реальной жизни.

Номенклатура (назовем ее «Строительный материал»), как правило, поставщиком продается в метрах кубических, да и заказчик, делая заявку, тоже оперирует кубическими метрами.

Пользователи, естественно, ввели Базовую единицу – м3.

Единица хранения остатков сформировалась как м3 и Коэффициент = 1; (напомню, что коэффициент это количество Базовых единиц в одной единице измерения). Но все дело в том, что данный стройматериал поставляется в паллетах по 10 упаковок по 15 листов в упаковке. Каждый лист имеет размеры 1100х580х55 мм. Соответственно на складе кладовщики реально оперируют не метрами кубическими, а паллетами, упаковками, а потом еще и в розницу стали листами отгружать. Исходя из этого логично было сделать единицей хранения остатков - «Лист», как минимальную единицу измерения.

Но что было сделано в итоге:

Наименование

Коэфф.

  1.  

М3

1

  1.  

Лист

0,03509

  1.  

Упаковка

0,52635

  1.  

Паллет

5,2635

 

Из примера видно, что разрядность у «Коэфф» после нуля достигает 5 знаков. В типовом решении разрядность коэффициента только три разряда после запятой, но если их отбросить, то некорректно будут считаться остатки. (В моем случае клиент пошел на то, что изменили разрядность, как количества, так и коэффициента до 6 знаков и внесли изменения в проведение документов).

Собственно, перед нами задача описать алгоритм перевода из метров кубических в листы и получить следующую картину:

Наименование

Коэфф.

  1.  

М3

28,498 (1/0,03509)

  1.  

Лист

1

  1.  

Упаковка

15

  1.  

Паллет

150

 

  1. Во всех записях регистров накопления и бухгалтерии по нашей номенклатуре изменяем количество. Для пересчета используем формулу: Количество(новое) = Количество(из регистра) *Коэфф (старой ед.хран.)/Коэфф(новой ед.хран.);
  2. Меняем в карточке Номенклатуры единицу хранения остатков на новую.
  3. Устанавливаем новую базовую ед. изм. из единицы хранения остатков.
  4. Пересчитываем коэффициенты всех ед. измерения номенклатуры по формуле: К = К / Кнов.ед.изм ;

Наименование

Коэфф.

  1.  

М3

1/0,03509 = 28,498

  1.  

Лист

0,03509/0,03509 = 1

  1.  

Упаковка

0,52635/0,03509 = 15

  1.  

Паллет

5,2635/0,03509 = 150

 

   5. Обновляем коэффициент в табличных частях документов (саму ед. изм. в документе не меняем, пересчетов количества не производим)

 

Для того, чтобы записывать без ошибок наборы записей регистров, объекты справочников и документов, устанавливаем признак ОбменДанными.Загрузка = Истина;

единицы хранения остатков

См. также

SALE! 10%

Перенос данных 1C Взаиморасчеты Оптовая торговля Логистика, склад и ТМЦ Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Управление торговлей 10 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Управленческий учет Платные (руб)

Можно проверить до покупки, оставьте заявку! Воспользовались более 268 компаний! Перенос данных из УТ 10.3 в УТ 11 | из УТ 10.3 в КА 2 | из УТ 10.3 в ERP. Предлагаем качественное и проверенное временем решение для перехода с УТ 10.3. Можно перенести начальные остатки, нормативно-справочную информацию и все возможные документы. При выгрузке можно установить отбор по периоду, организациям и складам. При выходе новых релизов конфигураций 1C оперативно выпускаем обновление переноса данных.

55778 50200 руб.

24.04.2015    197189    157    244    

287

Логистика, склад и ТМЦ Бухгалтер Пользователь Платформа 1С v8.3 Сельское хозяйство и рыболовство Строительство Горнодобывающая промышленность Розничная и сетевая торговля (FMCG) Транспорт, автопарки, такси Оптовая торговля, дистрибуция, логистика Лесное и деревообрабатывающее хозяйство Управленческий учет Платные (руб)

Позволяет автоматизировать процесс взвешивания ТМЦ в организациях, осуществляющих приемку и отгрузку различным транспортом, для ведения складского учета и контроля остатков на складах. Конфигурация позволяет фиксировать вес вручную, напрямую с весов, а также управлять дополнительным оборудованием и контролировать движение транспорта.

40000 руб.

24.03.2015    127574    308    114    

138

Загрузка и выгрузка в Excel Логистика, склад и ТМЦ Ценообразование, анализ цен Файловый обмен (TXT, XML, DBF), FTP Бухгалтер Пользователь Платформа 1С v8.3 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Эволюция не стоит на месте - новая удобная версия функциональной обработки для Вашего бизнеса! Что же Вы получаете? Удобный и интуитивно понятный интерфейс с 3-мя этапами работы. 2 режима - автоматический и ручной. Чтение XLSX, XLSM, CSV, XML/YML форматов без офиса, на любом сервере! Визуальное связывание колонок файла и реквизитов простым перетаскиванием колонок. Создание или обновление номенклатуры с иерархией, характеристик, доп. реквизитов, упаковок, загрузка практически неограниченного количества картинок на одну номенклатуру (с возможностью загрузки в несколько потоков одновременно), с хранением в томах или в базе. Загрузка номенклатуры поставщиков или поиск по их данным номенклатуры. Загрузка доп. реквизитов в характеристики. Загрузка штрихкодов с генерацией новых. Создание элементов справочников и ПВХ "на лету" для выбранных реквизитов. (Обновление от 10.02.2025, версия 9.9 - 9.15)

16800 руб.

20.11.2015    159019    387    378    

518

Логистика, склад и ТМЦ Бухгалтер Пользователь Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Оптовая торговля, дистрибуция, логистика Управленческий учет Платные (руб)

Программа позволяет организовать учет ответственного хранения товаров с весовыми характеристиками, в том числе со сроком годности и личным кабинетом Поклажедателя. Модуль реализован в виде расширения конфигурации, устанавливается в режиме 1С:Предприятие 8 за 5 минут по инструкции, что позволяет оставить конфигурацию 1С на стандартной поддержке и продолжать получать стандартные обновления от фирмы "1С".

89900 руб.

09.06.2020    40637    30    59    

65

Операции по ВЭД Оптовая торговля Розничная торговля Логистика, склад и ТМЦ Мастера заполнения Бухгалтер Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

СКАЧАЙТЕ И ПОПРОБУЙТЕ БЕСПЛАТНО! Данная обработка расширяет функционал типовой конфигурации «1С:Бухгалтерия предприятия» и позволяет осуществлять автоматическое заполнение ГТД в документах «Реализация товаров и услуг», «Списание товаров», «Отчет о розничных продажах», «Отчет комиссионера (агента) о продажах», «Требование-накладная», «Возврат товаров от покупателя», «Комплектация номенклатуры», «Безвозмездная передача», «Отчет производства за смену». Обработка предназначена для работы в конфигурации «1С:Бухгалтерия предприятия 8, редакция 3.0» Есть версия обработки оптимизированная для работы в 1CFresh

9600 руб.

19.06.2012    140113    274    81    

232
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. karpik666 3930 15.11.15 14:21 Сейчас в теме
Такая проблема решается комплектацией номенклатуры, а не исправлениями в закрытом периоде.
3. konst_pal 12 16.11.15 21:53 Сейчас в теме
(1) karpik666, Комплектация не меняет единицу измерения.
4. karpik666 3930 17.11.15 04:35 Сейчас в теме
(3) мда, комплектация меняет на другую номенклатуру с другой единицей измерения, поэтому, если нужно поменять единицу хранения остатков, то создается новая номенклатура с похожим названием и с нужной единицей измерения.
5. konst_pal 12 17.11.15 09:32 Сейчас в теме
(4) karpik666, Тогда теряем статистику продаж, для торговых крупно-оптовых предприятий это может быть критично. Собственно из-за этого и появилась данная статья.
2. konst_pal 12 16.11.15 21:53 Сейчас в теме
Комплектация не меняет единицу измерения.
6. echo77 1919 18.11.15 08:13 Сейчас в теме
Если есть готовая программа, которая работает как часы - почему бы и нет?
Комплектацией номенклатуры - да, проще
7. V.Nikonov 121 18.11.15 11:50 Сейчас в теме
Увы, решение только за счет увеличения разрядности далеко не всегда проходит. При пересчете может вполне получиться коэффициент в виде периодической дроби!!!
Соответственно при пересчете количества будут возникать погрешности округления.
Например, после расхода остатка документом целиком, могут возникать остатки вроде 0.001 или наоборот -0.003 и т.п.

Следовательно, нужен ещё один пункт алгоритма - Подчистка остатков округления! С методическим решением на что относить эти погрешности?!
8. V.Nikonov 121 18.11.15 11:53 Сейчас в теме
Я предпочитал не менять количество хранения остатков. Подменял Базовую единицу, Единицу для отчетов и Коэффициенты. И на практике бывали случаи, когда пересчитывать регистры совсем не приходилось...
Оставьте свое сообщение