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