Как в 1С:ERP настроить списание товара в граммах при хранении остатков в килограммах без потери точности?

Бизнес-аналитик 1С v8.3 (Управляемые формы) Управленческий учет Промышленность, строительство и АПК
← На главную

При работе в 1С:ERP 2.4 и 2.5 пользователи часто сталкиваются с проблемой точности при списании материалов, расход которых измеряется в долях грамма. Стандартная ситуация: товар поступает и учитывается на складе в килограммах, но в производство или на расходы его нужно списывать с точностью, например, до 3,45 грамма. Рассмотрим, почему возникает ошибка округления и как правильно настроить систему, чтобы и складской учет был корректным, и отчетность оставалась удобной.

Анализ проблемы: почему 1С округляет граммы?

Для начала разберем техническую сторону вопроса. В платформе 1С:Предприятие 8 для большинства количественных ресурсов в регистрах накопления (таких как ТоварыНаСкладах или ЗапасыИПотребности) жестко задана точность — 3 знака после запятой.

Проанализируем ситуацию: если мы выбираем килограмм в качестве единицы хранения, то минимально возможная величина, которую система может записать в регистр без искажений — это 0,001 кг, что соответствует 1 грамму. Если нам необходимо списать 3,45 грамма, в пересчете на килограммы это составит 0,00345 кг. Система, встретив такое число, будет вынуждена округлить его до третьего знака, превратив в 0,003 кг. В результате 0,45 грамма «повиснут» в воздухе или будут необоснованно списаны/оставлены на остатке. Это критично для дорогостоящего сырья, химических ингредиентов или специй.

Важный вывод: Попытка использовать упаковку «Грамм» при базовой единице «Килограмм» проблему не решит. Любая операция в упаковках все равно пересчитывается в единицу хранения перед записью в регистр остатков. Следовательно, округление до 3 знака после запятой в килограммах произойдет в любом случае.

Решение №1: Грамм как основная единица хранения

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

Рассмотрим преимущества этого подхода:

  1. Точность записи в регистры: при списании 3,45 грамма система запишет именно число 3,45. При точности в 3 знака после запятой мы сможем учитывать даже миллиграммы (0,001 г).
  2. Корректный расчет себестоимости: отсутствие округлений в количестве гарантирует отсутствие копеечных перекосов в стоимостной оценке остатков.
  3. Прозрачность для производства: в спецификациях (ресурсных спецификациях) расход материала будет указан точно, и в этапах производства не возникнет нулевых списаний.

Однако у этого способа есть эстетический недостаток: остатки на складах в стандартных настройках будут отображаться в граммах (например, 150 000 г вместо 150 кг), что неудобно для восприятия менеджерами и кладовщиками. Эту проблему решает следующая настройка.

Решение №2: Использование единиц для отчетов

Чтобы сохранить точность в граммах, но видеть отчеты в килограммах, нам необходимо задействовать функционал Единицы измерения для отчетов. Разберем по шагам, как включить и настроить этот механизм.

Шаг 1. Активация функциональной опции. Перейдем в раздел НСИ и администрирование, далее выберем пункт Настройка НСИ и разделов и перейдем по гиперссылке Номенклатура. В открывшейся форме найдем группу Единицы измерения и установим флажок Единицы измерения для отчетов. Это глобальная настройка, которая добавит новые поля в карточки товаров.

Шаг 2. Настройка карточки номенклатуры. Зайдем в карточку нужного товара. В разделе Учетная информация (или в блоке единиц измерения) найдем поле Единица для отчетов. Здесь мы устанавливаем следующие значения:

Система автоматически предложит коэффициент пересчета (обычно 0,001 или 1000 в зависимости от направления связи). Теперь данные в базе хранятся в граммах, но система «знает», как перевести их в килограммы для пользователя.

Шаг 3. Вывод данных в отчетах. Теперь проанализируем, как увидеть килограммы в отчетах, например, в Ведомости по товарам на складах. Откроем отчет, нажмем кнопку Настройки. Перейдем в расширенный режим (кнопка Расширенный внизу), найдем вкладку Поля и сортировки. Здесь в колонке выбора поля для показателя «Количество» можно выбрать вариант Количество (в единицах для отчетов). После формирования отчета система автоматически разделит все граммы на 1000 и покажет привычные килограммы, сохранив при этом все десятичные знаки, если это необходимо.

Как изменить единицу хранения, если уже были движения?

Часто проблема обнаруживается, когда по номенклатуре уже оформлены поступления и списания. В этом случае поле ЕдиницаХранения в карточке заблокировано для редактирования.

Внимание! Крайне не рекомендуется использовать обработку «Групповое изменение реквизитов» для принудительной смены единицы хранения у существующей позиции. Если вы измените «кг» на «г» в карточке, где на остатке числится 10 единиц, система начнет считать, что у вас на складе 10 грамм вместо 10 килограмм. Все предыдущие документы не пересчитаются автоматически, что приведет к полному хаосу в учете.

Рассмотрим правильный алгоритм действий:

  1. Создадим новую карточку номенклатуры с правильной единицей хранения (граммы) и настроенной единицей для отчетов (килограммы). Чтобы не путаться, старой карточке можно добавить в наименование префикс «НЕ ИСПОЛЬЗОВАТЬ».
  2. Оформим инвентаризацию или документы Списание недостач товаров (со старой карточки) и Оприходование излишков товаров (на новую карточку). При оприходовании важно правильно пересчитать количество: 5 кг превратятся в 5000 г.
  3. Если используется производство, необходимо зайти во все активные РесурсныеСпецификации и заменить старую номенклатуру на новую, указав корректный расход в граммах.

Нюансы работы с упаковками

Некоторые пользователи пытаются решить вопрос через справочник Упаковки. Рассмотрим, почему это удобно для логистики, но бесполезно для точности. Упаковка — это лишь «маска» для ввода данных. Если вы в заказе указываете «1 упаковка (500 грамм)», система при проведении документа умножит 1 на коэффициент 0,5 (если единица хранения кг) и запишет в регистр 0,5 кг. Если же упаковка будет «3,45 грамма», система попытается записать 0,00345 кг и округлит это число до 0,003 кг.

Используйте упаковки только для удобства визуального выбора (например, «Мешок 25 кг» или «Коробка 10 шт»), но для обеспечения математической точности всегда опирайтесь на правильно выбранную единицу хранения.

Заключение

Подведем итог нашего анализа. Для корректного учета мелких расходов в 1С:ERP необходимо придерживаться правила: единица хранения должна быть минимально делимой величиной, используемой в учете. Для весовых товаров с высокой точностью списания — это граммы. А для комфорта пользователей используйте механизм Единицы измерения для отчетов, который позволяет бесшовно переходить от точных складских данных к аналитическим показателям в килограммах или тоннах.

← На главную