Стоимость внедрения MRP в 1С:ERP и сроки окупаемости

Что такое MRP в контексте 1С:ERP и зачем это производству
MRP (Material Requirements Planning — планирование потребностей в материалах) — это методология, которая позволяет производственному предприятию автоматически рассчитывать, сколько сырья, комплектующих и полуфабрикатов нужно закупить или произвести, чтобы выполнить план выпуска готовой продукции в срок. В задачах по 1С:ERP внедрение MRP занимает одно из центральных мест, поскольку именно этот модуль связывает воедино продажи, производство, закупки и складской учёт.
Без MRP производственный директор вынужден держать в голове или в Excel тысячи позиций номенклатуры, вручную считать потребности, угадывать страховые запасы и постоянно «тушить пожары» — срочные закупки по завышенным ценам, простои оборудования из-за отсутствия деталей, замороженные деньги в избыточных остатках. MRP решает эти проблемы системно.
В 1С:ERP модуль называется «Планирование производства» и реализует MRP II — расширенную версию методологии, которая учитывает не только материальные потребности, но и производственные мощности (CRP). Именно поэтому оценка стоимости внедрения требует комплексного подхода: нельзя автоматизировать только закупки, не настроив производственные заказы, спецификации и рабочие центры.
Из чего складывается бюджет внедрения MRP
Многие руководители предприятий делают одну и ту же ошибку: запрашивают коммерческое предложение у интегратора и ориентируются только на стоимость лицензий. В реальности лицензии — это лишь 20–30% от общего бюджета проекта. Рассмотрим все статьи затрат.
1. Лицензии на программное обеспечение
1С:ERP Управление предприятием 2 распространяется по клиент-серверной модели. Стоимость зависит от количества пользователей и типа лицензии:
- Основная поставка 1С:ERP (на 1 рабочее место, файловая версия) — от 360 000 ₽. Для производства практически не применяется.
- Клиентские лицензии на 1, 5, 10, 20, 50, 100, 300, 500 рабочих мест — от 14 400 ₽ (1 место) до 2 592 000 ₽ (100 мест).
- Лицензия на сервер 1С:Предприятия — от 50 400 ₽ (x86) до 86 400 ₽ (x86-64).
- Лицензия на сервер СУБД (Microsoft SQL Server или PostgreSQL) — от 0 ₽ (PostgreSQL) до 300 000+ ₽ (MS SQL Enterprise).
Для среднего производственного предприятия с 30–50 пользователями бюджет только на лицензии составит 700 000 – 1 500 000 ₽.
2. Серверная инфраструктура
MRP — вычислительно ёмкая задача. Расчёт потребностей на горизонт планирования 3–6 месяцев для номенклатуры в 10 000+ позиций может занимать от нескольких минут до нескольких часов. Это означает требования к серверу:
- Процессор: от 16 ядер, тактовая частота от 3,5 ГГц
- ОЗУ: от 64 ГБ (для 50+ пользователей — от 128 ГБ)
- Хранилище: SSD NVMe, от 2 ТБ в RAID 10
- Резервный сервер (отказоустойчивость)
Стоимость серверного оборудования: 500 000 – 1 500 000 ₽. Альтернатива — аренда облачной инфраструктуры от 30 000 ₽/месяц.
3. Работы по внедрению (основная статья затрат)
Это самая значительная и наименее прозрачная статья бюджета. Она включает:
- Обследование и описание бизнес-процессов — анализ текущего состояния производства, формирование требований к системе. Трудоёмкость: 80–200 часов, стоимость: 200 000 – 600 000 ₽.
- Настройка и доработка системы — настройка видов номенклатуры, спецификаций, рабочих центров, маршрутных карт, параметров MRP. Трудоёмкость: 200–800 часов, стоимость: 600 000 – 3 000 000 ₽.
- Миграция данных — перенос НСИ (нормативно-справочной информации) из Excel, старых систем. Критически важный этап. Стоимость: 200 000 – 800 000 ₽.
- Обучение пользователей — производственные плановики, диспетчеры, кладовщики, снабженцы. Стоимость: 100 000 – 400 000 ₽.
- Опытная эксплуатация и поддержка — сопровождение в первые 3–6 месяцев работы. Стоимость: 150 000 – 500 000 ₽/месяц.
4. Внутренние затраты предприятия
Этот пункт часто игнорируется при составлении бюджета, хотя реально является одним из крупнейших:
- Рабочее время ключевых пользователей (технологи, плановики, руководители) на участие в проекте — 20–40% рабочего времени на 6–18 месяцев
- Затраты на подготовку НСИ (нормирование, написание спецификаций) — часто требует привлечения дополнительных сотрудников
- Потери производительности в период перехода на новую систему
Типовые бюджеты по масштабу предприятия
На основе анализа реальных проектов можно выделить три типовых сценария:
| Масштаб предприятия | Пользователи | Бюджет (ПО + внедрение) | Срок проекта |
|---|---|---|---|
| Малое производство | 10–20 | 1,5 – 4 млн ₽ | 4–8 месяцев |
| Среднее производство | 30–80 | 5 – 15 млн ₽ | 9–18 месяцев |
| Крупное производство | 100–300+ | 20 – 80+ млн ₽ | 18–36 месяцев |
Важно понимать: эти цифры — ориентиры, а не гарантии. Реальный бюджет может отклоняться в 1,5–2 раза в зависимости от сложности производства, качества исходных данных и зрелости процессов предприятия. Чтобы получить точную оценку, рекомендуем найти разработчика 1С с опытом именно в производственном секторе.
Как работает MRP в 1С:ERP: технический взгляд
Прежде чем считать окупаемость, важно понять механику расчёта, чтобы оценить, насколько качественно он будет работать на вашем предприятии.
Ключевые объекты настройки
Для корректной работы MRP необходимо заполнить и поддерживать в актуальном состоянии:
- Спецификации ресурсов — состав изделия: какие материалы, в каком количестве, с каким процентом отходов входят в единицу готовой продукции
- Маршрутные карты — последовательность технологических операций, нормы времени на каждую операцию
- Рабочие центры — оборудование и рабочие места с их производительностью и режимом работы
- Параметры номенклатуры — страховой запас, минимальная партия заказа, время поставки
- Производственный план — что, сколько и когда нужно произвести
Пример кода: получение результатов расчёта MRP
После выполнения расчёта MRP система формирует заказы на производство и закупку. Ниже — пример программного получения и обработки этих данных:
// Процедура анализа результатов расчёта MRP
// и формирования отчёта по дефициту материалов
Процедура СформироватьОтчётПоДефицитуMRP(ДатаНачала, ДатаОкончания)
// Запрос к регистру сведений результатов планирования
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ПланированиеПотребностей.Номенклатура КАК Номенклатура,
| ПланированиеПотребностей.Характеристика КАК Характеристика,
| ПланированиеПотребностей.ДатаПотребности КАК ДатаПотребности,
| ПланированиеПотребностей.КоличествоПотребности КАК КоличествоПотребности,
| ПланированиеПотребностей.КоличествоОбеспечения КАК КоличествоОбеспечения,
| ПланированиеПотребностей.КоличествоПотребности -
| ПланированиеПотребностей.КоличествоОбеспечения КАК Дефицит,
| ПланированиеПотребностей.ВидОбеспечения КАК ВидОбеспечения
|ИЗ
| РегистрСведений.ПланированиеПотребностей КАК ПланированиеПотребностей
|ГДЕ
| ПланированиеПотребностей.ДатаПотребности >= &ДатаНачала
| И ПланированиеПотребностей.ДатаПотребности <= &ДатаОкончания
| И (ПланированиеПотребностей.КоличествоПотребности -
| ПланированиеПотребностей.КоличествоОбеспечения) > 0
|УПОРЯДОЧИТЬ ПО
| ПланированиеПотребностей.ДатаПотребности,
| ПланированиеПотребностей.Номенклатура";
Запрос.УстановитьПараметр("ДатаНачала", ДатаНачала);
Запрос.УстановитьПараметр("ДатаОкончания", ДатаОкончания);
РезультатЗапроса = Запрос.Выполнить();
// Проверяем наличие дефицита
Если РезультатЗапроса.Пустой() Тогда
Сообщить("Дефицит материалов в указанном периоде не обнаружен.");
Возврат;
КонецЕсли;
Выборка = РезультатЗапроса.Выбрать();
// Формируем структуру для группировки по видам обеспечения
ДефицитЗакупка = Новый СписокЗначений;
ДефицитПроизводство = Новый СписокЗначений;
Пока Выборка.Следующий() Цикл
// Формируем строку описания дефицита
ОписаниеДефицита = СтрШаблон(
"%1 (%2): потребность %3, обеспечено %4, дефицит %5",
Выборка.Номенклатура,
Формат(Выборка.ДатаПотребности, "ДФ=дд.ММ.гггг"),
Выборка.КоличествоПотребности,
Выборка.КоличествоОбеспечения,
Выборка.Дефицит
);
// Разделяем по виду обеспечения
Если Выборка.ВидОбеспечения = Перечисления.ВидыОбеспеченияПотребностей.Закупка Тогда
ДефицитЗакупка.Добавить(Выборка.Номенклатура, ОписаниеДефицита);
ИначеЕсли Выборка.ВидОбеспечения = Перечисления.ВидыОбеспеченияПотребностей.Производство Тогда
ДефицитПроизводство.Добавить(Выборка.Номенклатура, ОписаниеДефицита);
КонецЕсли;
КонецЦикла;
// Выводим итоговую информацию
Сообщить(СтрШаблон(
"Анализ MRP завершён. Позиций с дефицитом закупки: %1, производства: %2",
ДефицитЗакупка.Количество(),
ДефицитПроизводство.Количество()
));
КонецПроцедуры
Пример кода: автоматическое создание заказов поставщикам по результатам MRP
// Функция автоматического формирования заказов поставщикам
// на основе рекомендаций MRP
Функция СоздатьЗаказыПоставщикамПоMRP(СценарийПланирования) Экспорт
КоличествоСозданных = 0;
// Получаем рекомендации MRP по закупкам
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Рекомендации.Номенклатура КАК Номенклатура,
| Рекомендации.Характеристика КАК Характеристика,
| Рекомендации.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
| Рекомендации.КоличествоЗаказа КАК КоличествоЗаказа,
| Рекомендации.ДатаЗаказа КАК ДатаЗаказа,
| Рекомендации.ДатаПоставки КАК ДатаПоставки,
| ОсновнойПоставщик.Контрагент КАК Поставщик,
| ОсновнойПоставщик.Соглашение КАК Соглашение
|ИЗ
| РегистрСведений.РекомендацииMRP КАК Рекомендации
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ОсновныеПоставщикиНоменклатуры КАК ОсновнойПоставщик
| ПО Рекомендации.Номенклатура = ОсновнойПоставщик.Номенклатура
|ГДЕ
| Рекомендации.СценарийПланирования = &СценарийПланирования
| И Рекомендации.ВидОбеспечения = ЗНАЧЕНИЕ(Перечисление.ВидыОбеспеченияПотребностей.Закупка)
| И Рекомендации.КоличествоЗаказа > 0
|УПОРЯДОЧИТЬ ПО
| Рекомендации.ДатаЗаказа,
| ОсновнойПоставщик.Контрагент";
Запрос.УстановитьПараметр("СценарийПланирования", СценарийПланирования);
РезультатЗапроса = Запрос.Выполнить();
Выборка = РезультатЗапроса.Выбрать();
// Группируем строки по поставщику для создания одного заказа на поставщика
ТекущийПоставщик = Неопределено;
ТекущийЗаказ = Неопределено;
Пока Выборка.Следующий() Цикл
// Если поставщик изменился — создаём новый заказ
Если Выборка.Поставщик <> ТекущийПоставщик Тогда
// Записываем предыдущий заказ
Если ТекущийЗаказ <> Неопределено Тогда
ТекущийЗаказ.Записать(РежимЗаписиДокумента.Запись);
КоличествоСозданных = КоличествоСозданных + 1;
КонецЕсли;
// Создаём новый заказ поставщику
ТекущийЗаказ = Документы.ЗаказПоставщику.СоздатьДокумент();
ТекущийЗаказ.Дата = ТекущаяДата();
ТекущийЗаказ.Контрагент = Выборка.Поставщик;
ТекущийЗаказ.Соглашение = Выборка.Соглашение;
ТекущийЗаказ.ДатаПоставки = Выборка.ДатаПоставки;
ТекущийЗаказ.КомментарийMRP = "Создан автоматически по результатам MRP";
ТекущийПоставщик = Выборка.Поставщик;
КонецЕсли;
// Добавляем строку товара в заказ
НоваяСтрока = ТекущийЗаказ.Товары.Добавить();
НоваяСтрока.Номенклатура = Выборка.Номенклатура;
НоваяСтрока.Характеристика = Выборка.Характеристика;
НоваяСтрока.Количество = Выборка.КоличествоЗаказа;
НоваяСтрока.ЕдиницаИзмерения = Выборка.ЕдиницаИзмерения;
КонецЦикла;
// Записываем последний заказ
Если ТекущийЗаказ <> Неопределено Тогда
ТекущийЗаказ.Записать(РежимЗаписиДокумента.Запись);
КоличествоСозданных = КоличествоСозданных + 1;
КонецЕсли;
Возврат КоличествоСозданных;
КонецФункции
Расчёт экономического эффекта и ROI
Теперь перейдём к главному вопросу: когда инвестиции в MRP вернутся? Для корректного расчёта нужно идентифицировать все источники экономии.
Источник 1: Снижение складских запасов
Это самый быстро измеримый эффект. Производственные предприятия до внедрения MRP, как правило, держат страховые запасы «на глазок» — с коэффициентом 1,5–3x от реально необходимого. MRP позволяет рассчитать точный страховой запас на основе статистики отклонений и времени поставки.
Пример: Предприятие с оборотом 500 млн ₽/год держит запасы материалов на 60 млн ₽ (12% от выручки). После внедрения MRP запасы снижаются до 35 млн ₽. Высвобождение оборотных средств: 25 млн ₽. При стоимости денег 16% годовых (ключевая ставка ЦБ) ежегодная экономия на финансировании запасов: 4 млн ₽/год.
Источник 2: Снижение срочных закупок
Срочные закупки обходятся на 15–40% дороже плановых из-за наценки за срочность, нестандартных условий доставки и невозможности провести конкурентный отбор. MRP устраняет большинство причин срочных закупок.
Пример: Объём закупок предприятия — 200 млн ₽/год. До MRP 15% закупок (30 млн ₽) — срочные с наценкой 25%. Потери: 7,5 млн ₽/год. После MRP доля срочных закупок снижается до 3–5%. Ежегодная экономия: 3–4,5 млн ₽/год.
Источник 3: Сокращение производственного брака и переделок
Когда материалы подаются в производство не вовремя или не в той последовательности, растёт вероятность ошибок, нарушений технологии, использования неправильных партий. MRP синхронизирует подачу материалов с производственным расписанием.
Типичное снижение брака после внедрения MRP: 15–30% от исходного уровня. Для предприятия с выручкой 500 млн ₽ и уровнем брака 2% (10 млн ₽/год) экономия составит 1,5–3 млн ₽/год.
Источник 4: Рост производительности труда плановиков и снабженцев
Найдите специалиста для решения этой задачи на koderion.ru