Как организовать учет газа и ГСМ в двух единицах измерения (масса и объем) в 1С 8.3

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

При автоматизации предприятий, работающих с газом и горюче-смазочными материалами (ГСМ), одной из самых сложных задач является организация учета одновременно в двух единицах измерения — массе (килограммы, тонны) и объеме (литры, кубические метры). Основная сложность заключается в том, что связь между этими единицами не является линейной: объем напрямую зависит от температуры и плотности вещества. Рассмотрим подробнее, как реализовать подобный учет на платформе 1С 8.3, проанализируем выбор конфигурации и разберем методологические подходы.

Проблема нелинейного пересчета и ограничения типовых решений

Прежде всего, разберем ситуацию, почему стандартный механизм коэффициентов единиц измерения в 1С:Управление торговлей или 1С:ERP часто оказывается неприменимым. В типовых конфигурациях коэффициент между литрами и килограммами жестко задается в карточке номенклатуры или упаковки. Однако для ГСМ и газа ситуация иная:

  1. Изменение плотности: При поступлении партии газа плотность может составлять одну величину, а при следующей поставке — другую.
  2. Смешивание в резервуаре: Когда новая партия вливается в цистерну, плотность смеси меняется. В итоге в накладной на отгрузку должны фигурировать объем, который фактически ушел из емкости, и масса, рассчитанная по текущей плотности смеси.
  3. Температурное расширение: Объем жидкости меняется в зависимости от температуры, в то время как масса остается неизменной.

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

Вариант 1: Доработка 1С:Бухгалтерия предприятия 3.0

Многие эксперты сходятся во мнении, что для небольших и средних предприятий оптимальным путем будет доработка 1С:Бухгалтерия предприятия 3.0 (БП 3.0). Рассмотрим, почему это выгодно:

Использование хозрасчетного регистра: В отличие от 1С:ERP, где проведение документа затрагивает десятки регистров накопления, в БП 3.0 основной упор идет на регистр бухгалтерии Хозрасчетный. Добавление параллельного учета здесь требует меньших трудозатрат.

Для реализации этого метода проанализируем следующие шаги:

  1. Забалансовые счета: Создадим специальные забалансовые счета для учета объема (например, счет ГСМ.Л). При проведении документов поступления и реализации проводки будут делаться одновременно по счету 10 (в массе) и по забалансовому счету (в литрах).
  2. Добавление реквизитов: В документы Поступление (акты, накладные) и Реализация (акты, накладные) добавим колонки для ввода плотности и объема.
  3. Алгоритм пересчета: Напишем программную обработку, которая при изменении одного значения (масса или объем) автоматически пересчитывает другое по введенной плотности.

Пример программной логики для расчета плотности смеси в резервуаре:


// Математическая модель усреднения плотности при поступлении
ПлотностьНовая = (МассаОстаток + МассаПриход) / (ОбъемОстаток + ОбъемПриход);

Вариант 2: Использование архитектуры «Бухгалтерия СХП»

Интересным подходом является заимствование архитектуры из отраслевых решений для сельского хозяйства (например, «Бухгалтерия сельскохозяйственного предприятия»). В таких конфигурациях реализован учет животных в головах и массе (живом весе). Проанализируем, как это можно спроецировать на ГСМ:

Преимущество этого метода в том, что вы получаете чистый двойной количественный учет, который не зависит от жестких коэффициентов в карточке товара. Это позволяет видеть в ОСВ одновременно и тонны, и литры по каждой позиции.

Вариант 3: Отраслевые конфигурации на базе 8.3

Если специфика бизнеса подразумевает хранение на нефтебазах, стоит обратить внимание на специализированные решения, такие как 1С:Торговля нефтепродуктами или 1С:АЗС. В этих системах функционал уже реализован «из коробки»:

  1. Градуировочные таблицы: Возможность пересчета уровня в резервуаре (в сантиметрах) в объем (в литрах) по паспортным данным цистерны.
  2. Учет потерь: Автоматический расчет естественной убыли при хранении и транспортировке газа.
  3. Приведение к стандартным условиям: Пересчет объема к температуре 15°C или 20°C согласно ГОСТ.

Выясним причину, по которой многие отказываются от ERP в пользу БП 3.0 в данной задаче. В 1С:ERP архитектура регистров (например, ЗапасыНаСкладах) жестко ориентирована на одну базовую единицу измерения. Попытка добавить туда второй количественный ресурс приведет к необходимости снимать с поддержки огромное количество общих модулей и форм, что сделает обновление системы крайне затруднительным.

Методические рекомендации по реализации

При разработке собственной подсистемы на 8.3 (Управляемые формы) рекомендуем придерживаться следующих правил:

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

2. Контроль остатков: Важно реализовать контроль остатков по обеим единицам измерения. Разберем ситуацию: если из-за ошибок округления масса обнулилась, а объем остался (или наоборот), система должна предлагать документ корректировки.

3. Интеграция с оборудованием: Поскольку мы работаем в среде 8.3, можно использовать современные средства интеграции (OPC-серверы) для получения данных напрямую с уровнемеров цистерн. Это позволит автоматизировать ввод плотности и объема, исключив человеческий фактор.

Рассмотрим пример кода для обработки изменения объема в форме документа:


&НаКлиенте
Процедура ТоварыОбъемПриИзменении(Элемент)
    СтрокаТаблицы = Элементы.Товары.ТекущиеДанные;
    Если СтрокаТаблицы.Плотность <> 0 Тогда
        СтрокаТаблицы.Количество = СтрокаТаблицы.Объем * СтрокаТаблицы.Плотность;
    КонецЕсли;
КонецПроцедуры

Итоги выбора платформы

Подведем итог: если ваша задача — быстро запустить учет с минимальными затратами, выбирайте БП 3.0 с доработкой забалансового учета. Если же вы планируете глубокую автоматизацию нефтебазы с учетом метрологических характеристик, лучше инвестировать в отраслевое решение на базе ERP, где логика двойных единиц измерения уже заложена в ядро системы. Помните, что для газа и ГСМ критически важен не только сам факт наличия двух единиц, но и корректное списание потерь (усушка, испарение), которое в самописных системах реализовать крайне трудозатратно.

← На главную