В процессе управления производством в конфигурации 1С:Управление производственным предприятием (УПП) одной из критически важных задач является оперативный контроль использования материалов. Зачастую возникает ситуация, когда фактическое потребление превышает плановое, заложенное в заказе. В данной статье мы подробно разберем, как выявить такой перерасход, используя стандартные механизмы системы, логику регистров накопления и программные доработки.
Для начала проанализируем, как система хранит данные о потребностях. Основным источником информации для отчета «Потребности заказов на производстве» является регистр накопления ЗаказыНаПроизводство. Понимание его структуры — это ключ к решению задачи.
Регистр работает по классическому принципу «Приход — Расход»:
ЗаказНаПроизводство. Система анализирует спецификацию продукции и записывает количество материалов, необходимых для выполнения заказа. Это наша «плановая потребность».ОтчетПроизводстваЗаСмену или АктОбОказанииПроизводственныхУслуг. Также списание может происходить через документ РаспределениеМатериаловНаВыпуск, если в учетной политике настроено распределение по факту.Если фактический расход материала по конкретному заказу превышает запланированный «Приход», в регистре образуется отрицательный конечный остаток. Рассмотрим подробнее: в контексте данной системы отрицательный остаток — это и есть перерасход.
Прежде чем приступать к программированию, проанализируем возможности стандартного интерфейса. В УПП существует отчет «Анализ заказов на производство». Чтобы увидеть в нем перерасход, выполним следующие шаги:
Заказ и Номенклатура (материал).Однако стандартный отчет не всегда удобен для оперативного ежедневного мониторинга «сверхнормативки», поэтому разберем, как реализовать эту логику в кастомном отчете или запросе.
Если нам необходимо создать отдельную колонку «Перерасход» в существующем отчете, мы должны использовать конструкцию ВЫБОР в языке запросов 1С. Разберем пример логики, которую следует внедрить в схему компоновки данных (СКД):
ВЫБРАТЬ
ЗаказыНаПроизводствоОстаткиИОбороты.Заказ КАК Заказ,
ЗаказыНаПроизводствоОстаткиИОбороты.Номенклатура КАК Номенклатура,
ЗаказыНаПроизводствоОстаткиИОбороты.КоличествоКонечныйОстаток КАК КонечныйОстаток,
ВЫБОР
КОГДА ЗаказыНаПроизводствоОстаткиИОбороты.КоличествоКонечныйОстаток < 0
ТОГДА -ЗаказыНаПроизводствоОстаткиИОбороты.КоличествоКонечныйОстаток
ИНАЧЕ 0
КОНЕЦ КАК ПерерасходКоличество,
(ЗаказыНаПроизводствоОстаткиИОбороты.КоличествоРасход / ЗаказыНаПроизводствоОстаткиИОбороты.КоличествоПриход * 100) - 100 КАК ПроцентПерерасхода
ИЗ
РегистрНакопления.ЗаказыНаПроизводство.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, , , ) КАК ЗаказыНаПроизводствоОстаткиИОбороты
В данном примере мы не просто выводим остаток, а преобразуем отрицательное значение в положительное число для колонки «Перерасход», что более наглядно для руководителя производства. Дополнительно мы рассчитали ПроцентПерерасхода, который позволяет быстро оценить масштаб проблемы.
Выясним причину, почему данные в регистре ЗаказыНаПроизводство могут быть неполными. Иногда перерасход может быть «скрытым». Например, если в процессе производства спецификацию изменили, а заказ не перепровели. В этом случае стоит сравнить данные с регистром ЗатратыНаВыпуск.
Рассмотрим ситуацию по шагам:
ОтчетПроизводстваЗаСмену.СпецификацииНоменклатуры, актуальной на дату выпуска.ЗатратыНаВыпуск выше, чем нормативное по спецификации, мы имеем дело с технологическим перерасходом, даже если в регистре ЗаказыНаПроизводство все закрыто в ноль (например, из-за ручной корректировки потребностей).При анализе перерасхода в 1С:УПП крайне важно учитывать работу с аналогами. Часто программа показывает «ложный» перерасход. Проанализируем типичный сценарий:
В заказе на производство указан «Материал А» (10 шт.). На складе его не оказалось, и мастер списал в производство «Материал Б» (аналог, 10 шт.). В отчете мы увидим:
Чтобы избежать ошибок в отчетах, необходимо либо использовать документ КорректировкаЗаказаНаПроизводство для замены позиций в потребности, либо настраивать отчет так, чтобы он схлопывал данные по группам аналогов, используя регистр АналогиНоменклатуры.
Разберем, как правильно организовать процесс, чтобы информация о перерасходе была достоверной:
Во-первых, следует контролировать заполнение документов выпуска. Если в ОтчетПроизводстваЗаСмену количество материала проставляется вручную, а не по кнопке «Заполнить», риск возникновения бесконтрольного перерасхода возрастает. Проанализируем возможность настройки прав доступа, запрещающей проведение документов с отклонением от спецификации без согласования.
Во-вторых, необходимо учитывать брак. Если материал был испорчен, его нужно списывать не на выпуск продукции (увеличивая перерасход по заказу), а на соответствующие статьи затрат (например, «Брак в производстве»). Это позволит разделить производственный перерасход (нарушение технологии) и материальные потери из-за низкого качества сырья.
В-третьих, используйте Условное оформление в отчетах на базе СКД. Посмотрите, как это упрощает работу: настройте окрашивание строк с отрицательным остатком в ярко-красный цвет. Это позволит диспетчеру производства мгновенно сфокусироваться на проблемных зонах, не вчитываясь в цифры каждой строки.
Мы рассмотрели, что перерасход в УПП — это не отдельная сущность, а следствие превышения расхода над планом в регистре ЗаказыНаПроизводство. Для эффективного контроля мы рекомендуем сочетать оперативный мониторинг отрицательных остатков с глубоким анализом причин через регистры затрат и механизмы работы с аналогами. Реализация вычисляемых полей в СКД позволит сделать эту информацию доступной и понятной для конечных пользователей.