Help.profit-navigator
Раздел · Оптимизация

Оптимизация производственно-торговой деятельности

Блок связывает продажи с производством. Он отвечает на два вопроса: выполним ли план по мощностям рабочих центров и во что обходится единица продукции по нормам — с учётом рецептуры и цепочки переделов.

Блок разделён на разделы (05.09.2026, уточнено 06.09). Загрузка данных — набор данных (цена, себестоимость, маржа), справочники и загрузка слепка блока файлом; всё это общее для сценариев. Производство · сценарий 1 — портфель под мощности, БЕЗ рецептуры. Производство по рецептуре (нормы списания, полуфабрикаты, переделы) в разработке и пользователю пока не показывается.

Сценарии различаются входом, а не сложностью: сценарий 1 берёт экономику позиций из выбранного набора и ограничения мощностей; сценарий 2 — рецептуру и нормативную себестоимость. Раньше и то и другое лежало на одном экране, и было непонятно, что из этого обязательно.

Вкладки сценария 1: Постановка задачи → Границы по номенклатуре → Экономика позиций → Оптимизация выпуска → Отчёт. Отдельной загрузки в сценарии больше нет — файл блока грузится в разделе «Загрузка данных», рядом с набором и справочниками.

Вкладка «Оптимизация выпуска» умеет считать двумя методами: по номенклатуре и каналам (решение принимается по ячейке «канал × позиция», два конструкта и три сценария — раздел Д) и прежним, по продуктовым группам. Прежний метод (05.09.2026): подбирает программу с максимальной маржой в границах мощностей, обязательств и спроса, показывает узкие места и выгружает результат в стандарте формата данных.

AИз чего складывается производственная модель

ЭлементЧто задаёт
Рабочие центрыдоступная мощность или фонд времени за период — верхняя граница выпуска
Рецептура (передел)что из чего получается и сколько ресурса каждого центра тратится по цепочке
Нормы расходасколько сырья и ресурсов уходит на единицу — основа нормативной себестоимости
План продажберётся из общего источника платформы: производство считается под него
Нормативная себестоимость = Σ (норма расхода × цена ресурса) по всем переделам цепочки
Проверка выполнимости: потребность плана в мощности центра ≤ доступной мощности
узкое место — центр, чья мощность исчерпывается первой: он и ограничивает весь выпуск
Формат загрузки блока — отдельный от продаж: JSON или Excel по шаблону (22 колонки). Производственная модель загружается целиком: повторная загрузка заменяет набор, частями её не собирают.

Вкладка 1. Загрузка блока (файл)

Загрузить производственные данные проекта одним файлом: рабочие центры, мощности, нормы и спецификацию. Формат — JSON или Excel по шаблону. Вкладка живёт в разделе «Загрузка данных» вместе с выбором набора и справочниками.

Вкладка 4. Перенос: настройка и данные

Перенос блока между серверами — например, с рабочего контура на боевой. В отличие от «Загрузки блока (файл)», которая берёт слепок целиком, здесь два файла и жёсткий порядок: сначала настройка (справочники, мощности центров, нормы времени, рецептуры), затем данные (границы выпуска групп и позиций, спецификация, варианты Vmin).

Почему порядок обязателен. Граница выпуска принадлежит позиции. Загрузите данные в проект, где этой позиции нет, — и они лягут в никуда: расчёт их не увидит, а вы будете думать, что всё на месте. Поэтому файл данных несёт отпечаток настройки — список объектов, под которые он собран.

Что показывается до загрузки. Отпечаток сверяется с настройкой проекта, и разница выводится тремя списками: нет в настройке (эти строки потеряются, показано сколько), нет в файле (эти объекты останутся пустыми), совпало. При расхождении загрузка отклоняется — сначала поставьте парный файл настройки. Кнопка «Загрузить как есть» остаётся: решение ваше, но принимается зряче.

Загрузка замещает соответствующую часть блока, а не дополняет её: половина старой настройки с половиной новой даёт модель, которой не существовало нигде. Данные продаж переносятся отдельно, обычной загрузкой в разделе «Данные» — они принадлежат платформе, а не блоку.

Вкладка 2. Справочники и мощности

Единый вход блока: набор данных, справочники и загрузка слепка блока файлом. Набор — тот же выбор, что в «Продажах»: внешний план, стратегия К1/К2, детальный прогноз, фактические данные из «Анализа» или плановые загрузки. Из набора берутся цена, себестоимость единицы и маржа — на единицу и за период; это и есть вход оптимизации. Справочники — рабочие центры, сырьё, группы, номенклатура и единицы измерения — общие для обоих сценариев, поэтому заполняются здесь, а не в каждом по отдельности.

Таблица 2. Мощность рабочего центра целиком

Таблица 1 ограничивает пару «центр × продукт». Когда на одном центре несколько продуктов, они делят один ресурс, и без общего предела расчёт сложит пределы пар — получится план, который цех не сделает. Центр ограничивается двумя способами: фондом времени (часов в месяц) либо мощностью в единицах. При работе по времени в Таблице 1 участвуют время на единицу и время переналадки — подготовки центра под этот продукт.

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

Что сделать: заполните хотя бы одно: мощность центра в месяц или фонд времени. Центр без того и другого ничем не ограничен — платформа предупредит.

Таблица 3. Границы выпуска по продуктовым группам

Мощность ограничивает центр, а эти границы — сам продукт, и тоже в месяц. Снизу — обязательства: контракт с клиентом, ассортиментный минимум. Сверху — предел рынка или продуктовой политики. Пустое поле означает «ограничения нет». Список групп подставляется из справочника, единица — оттуда же.

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

Вкладка «Экономика позиций» — вход оптимизации

По каждой группе показаны цена, себестоимость единицы и маржа — на единицу и за период, средневзвешенно по объёму. Считается по набору, выбранному в «Загрузке данных»: факт, план, стратегия или прогноз; если набор не выбран, берётся факт проекта, и платформа об этом предупреждает. Колонка «Объём в месяц» — то, что сравнивается с коридором мощности: мощность задана в месяц, а набор обычно охватывает несколько месяцев.

Коридор мощности: максимум и минимум

Мощность рабочего центра задаётся в месяц и с двух сторон. Сверху — номинальная мощность = максимальная × % загрузки: столько центр даёт с учётом простоев и переналадок. Снизу — минимальная мощность: технологический минимум, ниже которого центр не грузят. Оптимизация держит выпуск группы внутри этого коридора.

Что сделать: заполните минимум там, где он есть технологически; пустое поле означает «ограничения снизу нет». Если минимум окажется выше номинала, платформа скажет об этом сразу: коридор пуст и задача не решится.

Почему единицы измерения — обязательный справочник

Норматив списания задаётся «единица сырья на единицу продукта»: тонна базового масла на тонну готового, литр молока на килограмм творога. Пока единицы не заведены, норму не с чем сопоставить, а проверка «единица центра против единицы группы» ничего не ловит. Единицы пополняются из загруженных данных, но заводятся и вручную — в файле продаж колонки единиц может не быть; введённые вручную переживают обновление из данных.

Что сделать: заведите единицы на вкладке «Единицы» и нажмите «Сохранить», затем проставьте единицу рабочим центрам, сырью и группам — дальше они подставляются в постановку и рецептуру сами.

Кадр 1. Маршрут блока и загрузка производственных данных

Маршрут блока и загрузка производственных данных
1
2
1

Маршрут блока: пять шагов

Зачем: блок идёт от данных к постановке задачи, себестоимости и отчёту. Четвёртый шаг — «Оптимизация производительности» — сейчас в разработке.

Что сделать: начинайте с загрузки: без производственных данных остальные вкладки показать нечего.

2

Загрузка данных блока «Производство»

Зачем: производственные данные живут отдельно от продаж: рабочие центры с мощностью, рецептура передела, нормы расхода. Продажи блок берёт из общего источника платформы.

Что сделать: загрузите файл блока. Повторная загрузка заменяет набор целиком — производственная модель цельная, частями её не собирают.

Кадр 2. Шаблон формата и пример выгрузки

Шаблон формата и пример выгрузки
3
3

Шаблон и пример выгрузки

Зачем: шаблон задаёт структуру файла: 22 колонки производственного формата (с 06.09 добавлены минимум мощности, время производства и переналадки, мощность центров целиком и границы выпуска — раньше перенос их терял). По нему собирают выгрузку из учётной системы или заполняют руками.

Что сделать: скачайте шаблон и заполните его своими центрами и рецептурой. Пример показывает, как выглядят заполненные данные — сверяйтесь с ним при первой загрузке.

Вкладка 3. Постановка задачи (сценарий 1)

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

Кадр 1. Период и шаг планирования

Период и шаг планирования
4
5
4

Период планирования — отдельно от периода данных

Что показывает: период данных сверху страницы говорит, откуда брать факт и маржу, а период планирования — на какие месяцы строится программа.

Как читать: именно даты планирования попадают в выгрузку. Пока период не задан, расчёт идёт на период данных и файл получает исторические даты — как план он не годится.

Что делать: задайте горизонт до расчёта: пикер показывает два будущих года.

5

Шаг расчёта: день, неделя, месяц

Что показывает: дробность производственного плана. Месячные мощности, фонд времени и границы пересчитываются на выбранный шаг автоматически.

Как читать: по дням считают в пределах месяца (только рабочие дни), по неделям — до трёх месяцев, по месяцам — любой горизонт. Модель стационарная: шаг повторяется, поэтому сотни одинаковых дней смысла не имеют.

Что делать: для оперативного плана берите неделю на квартал, для годового бюджета — месяц.

Кадр 2. Таблица 1. Рабочие центры и мощность

Таблица 1. Рабочие центры и мощность
6
6

Таблица 1. Мощность пары «центр × продукт»

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

Как читать: мощность, несоразмерная объёму продаж, — самая частая ошибка ввода: расчёт при ней «работает», но коридор выпуска схлопывается и все сценарии дают один ответ. Платформа скажет об этом прямо в замечаниях.

Что делать: задайте мощность честно и ЗА МЕСЯЦ, с учётом ремонтов; проверьте единицы измерения и процент загрузки.

Кадр 3. Таблица 3. Границы выпуска по группам

Таблица 3. Границы выпуска по группам
7
7

Таблица 3. Границы группы — срез над суммой позиций

Что показывает: минимальный и максимальный выпуск группы за месяц.

Как читать: это срез: он ограничивает сумму позиций группы, но не заменяет обязательства по конкретной номенклатуре — их место на следующей вкладке.

Что делать: ставьте здесь только то, что действительно ограничивает группу целиком: квоту, договор на объём, предел склада.

Вкладка 4. Границы по номенклатуре

Задать минимум и максимум выпуска по каждой позиции и увидеть, чем позиция окупает занятое время производства.

ГГраницы по номенклатуре: зачем позиция, а не группа

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

маржа на час = маржа на единицу × производительность (единиц в час)
пример: 25 руб/ед при 1 ч на единицу = 25 руб/ч; 100 руб/ед при 5 ч = 20 руб/ч
вывод: при дефиците времени выгоднее первая позиция, хотя со штуки она дешевле

Таблица позиций

Что показывает: по каждой позиции — цену, себестоимость, маржу единицы и её разброс по каналам, объём в месяц по набору, время на единицу и переналадку, производительность, маржу на час, тактику и вводимые границы с маржой диапазона.

Как читать: разброс маржи по каналам показывает, насколько «средняя по позиции» скрывает разницу: одна и та же номенклатура в разных каналах приносит разное. Жёлтые строки — позиции, которых в наборе нет (не продавались): границы у них нули, решение принимает человек.

Что делать: уточните время на единицу там, где оно отличается от группового, и поправьте границы. Изменённая строка помечается «правлено вручную» и больше не перезаписывается автозаполнением.

Автозаполнение границ

Что показывает: платформа предлагает границы сама: объём набора ∓ ширина (по умолчанию 25 %). Максимум срезается мощностью группы, поделённой между её позициями пропорционально объёму. Доли округляются вниз до копейки: иначе их сумма выходит больше мощности группы, и расчёт объявляет задачу нерешаемой из-за копейки, которой в цехе не существует.

Как читать: если проверка сообщает, что минимумы забрали почти всю мощность, — модели нечего перераспределять: спрос выше мощности, и коридор схлопнулся. Это не ошибка ввода, а сигнал снизить минимумы и дать оптимизации свободу.

Что делать: заполните ±25 %, затем поправьте руками позиции с обязательствами и новую номенклатуру.

Варианты границ — сохранить и вернуться

Что показывает: список сохранённых наборов границ: название, число позиций, набор данных и период, под которые границы сняты, автор, дата и статус — черновик или утверждён.

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

Что делать: настроили границы — сохраните вариант с понятным названием. Рабочий вариант утвердите: расчёт по неутверждённому считается черновым.

Тактика позиции

Что показывает: квадрант позиции по двум осям относительно медианы ассортимента: звезда — дорогая и быстрая, премиум — дорогая и медленная, объёмная — дешёвая и быстрая, балласт — дешёвая и медленная.

Как читать: тактика ничего не считает — она объясняет, почему оптимизация поднимет одну позицию и срежет другую. Без времени на единицу вторая ось неизвестна, и тактика не определяется.

Что делать: премиальным позициям коридор ставьте уже (спрос на них не разгонишь), объёмным — шире.

Кадр 1. Границы по номенклатуре: маржа на час и тактика

Границы по номенклатуре: маржа на час и тактика
8
8

Коридор выпуска по каждой позиции

Что показывает: цену, себестоимость, маржу единицы и её разброс по каналам, объём набора, время на единицу, производительность, маржу на час, тактику и вводимые границы.

Как читать: разброс маржи по каналам показывает, насколько средняя по позиции скрывает разницу. Жёлтые строки — позиции, которых нет в наборе: границы у них нули, решение принимает человек. Маржа на час = маржа единицы × производительность: при дефиците времени выигрывает не самая дорогая позиция.

Что делать: уточните время на единицу там, где оно отличается от группового, и поправьте границы. Правленая строка помечается и больше не перезаписывается автозаполнением.

Кадр 2. Варианты границ: сохранить и вернуться

Варианты границ: сохранить и вернуться
9
9

Реестр вариантов границ

Что показывает: сохранённые наборы границ: название, число позиций, набор данных и период, под которые они сняты, автор, дата и статус.

Как читать: вариант помнит НАБОР ДАННЫХ. Снятый под другой набор он не подставляется молча: номенклатура и период не совпали бы, и расчёт пошёл бы не по тем границам.

Что делать: настроили границы — сохраните вариант с понятным названием и утвердите рабочий.

Вкладка 5. Экономика позиций

Получить нормативную себестоимость: во что обходится единица продукции по нормам расхода и переделам — и как она складывается в разрезе групп.

Кадр 1. Экономика позиций выбранного набора

Экономика позиций выбранного набора
10
10

Экономика набора по продуктам

Что показывает: цену, средневзвешенную себестоимость, маржу единицы и объём в месяц по каждому продукту выбранного набора.

Как читать: это вход модели: те же числа идут в оптимизацию. Меняете набор в разделе «Загрузка данных» — меняется и программа.

Что делать: сверьте маржу с тем, что считает финансовая служба: расхождение здесь пройдёт во все дальнейшие расчёты.

Вкладка 6. Отчёт

Собрать снимок блока в документы, выгрузить программу выпуска в стандарте формата данных (14 колонок плюс «Рабочий центр» и «Объём производства») и перенести производственные данные между контурами.

Кадр 1. Отчёт блока и выгрузка данных

Отчёт блока и выгрузка данных
11
11

Отчёт блока — зеркало экрана

Зачем: word и Excel собираются из того, что рассчитано в блоке: центры, рецептура, нормативная себестоимость. Рядом — выгрузка данных блока в JSON или Excel для переноса в другой контур.

Что сделать: формируйте отчёт после того, как проверили мощности и рецептуру: документ фиксирует состояние модели на момент сборки.

ВВозврат к состоянию до последнего сохранения

Кнопка «Сохранить» в блоке перезаписывает таблицу целиком: сохранённая по ошибке пустая или неполная сетка стирает прежние строки. Поэтому перед каждым сохранением платформа снимает слепок всех таблиц блока — рабочих центров, мощности центров, границ выпуска, рецептуры и спецификации.

Карточка «Возврат к состоянию до последнего сохранения»

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

Как читать: числа в карточке — это состояние, которое вернётся при нажатии кнопки. Если там больше строк, чем сейчас на экране, значит последнее сохранение данные потеряло.

Что делать: нажмите «Вернуть состояние до сохранения». Возврат обратим: перед ним снимается новый слепок, поэтому повторное нажатие вернёт то, что было до возврата. Хранится одно — последнее — состояние: для отмены неудачного сохранения этого достаточно, архивом версий карточка не является.

Вкладка 7. Оптимизация выпуска (сценарий 1)

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

Кадр 1. Условия расчёта: спрос и пороги сценариев

Условия расчёта: спрос и пороги сценариев
12
12

Условия расчёта

Что показывает: галочку рыночного потолка и два ползунка: порог сценария «дорогая единица» и уступку маржи в сценарии «оборот».

Как читать: потолок ячейки растягивается пропорционально максимуму позиции: сказали «рынок даёт +25 %» — каждый канал берёт +25 % своего объёма. Снятая галочка убирает рыночный предел вовсе.

Что делать: начните с порогов по умолчанию и двигайте их, когда увидите, во что упирается программа.

Кадр 2. Сравнение: два конструкта на три сценария

Сравнение: два конструкта на три сценария
13
13

Шесть расчётов одной таблицей

Что показывает: маржу за шаг и за горизонт, объём, среднюю маржу на единицу и на час, загрузку узкого центра, покрытие спроса и условие каждого расчёта.

Как читать: к1 «от рынка» держит объёмы каналов на факте и меняет только наполнение; К2 «от производства» перекладывает объём между каналами — разрыв между ними и есть цена неприкосновенности сбытовой политики. Звёздочка помечает лучший по марже, но «лучший» не значит «правильный»: сценарий «оборот» меняет маржу на объём.

Что делать: нажмите на строку — ниже раскроется её план, своды и выгрузки.

Кадр 3. План продаж по ячейкам «канал × номенклатура»

План продаж по ячейкам «канал × номенклатура»
14
14

Решение по ячейкам

Что показывает: сколько какой позиции продавать в каком канале против базы набора, с рыночным потолком, маржой единицы и маржой строки.

Как читать: это и есть решение модели. Одна и та же позиция в разных каналах приносит разное, поэтому режется и растёт она в каналах по-разному — средняя по группе это скрывала бы.

Что делать: смотрите строки с наибольшим отклонением от базы: это и есть предлагаемое изменение сбытовой политики.

Кадр 4. Матрица тактик: маржа единицы и производительность

Матрица тактик: маржа единицы и производительность
15
15

Карта ассортимента

Что показывает: каждую позицию на двух осях: сколько штук даёт час работы центра и сколько зарабатываем со штуки. Размер точки — план продаж, пунктир — медианы.

Как читать: правый верхний угол — звёзды, левый верхний — премиум-тяжеловесы, правый нижний — объёмные, левый нижний — балласт. Матрица ничего не считает: она объясняет, почему модель подняла одну позицию и срезала другую.

Что делать: если график пуст, заполните время на единицу во вкладке «Границы по номенклатуре».

Кадр 5. Свод по центрам и цена дополнительного часа

Свод по центрам и цена дополнительного часа
16
16

Узкие места и цена ресурса

Что показывает: чем ограничен каждый центр, сколько ресурса выбрано, где загрузка сто процентов и сколько маржи принесёт ещё один час работы.

Как читать: цена дополнительного ресурса считается пересчётом всей задачи, а не приблизительной оценкой: это прямой ответ на вопрос «стоит ли покупать смену».

Что делать: сравните эту цифру со стоимостью смены, аренды или аутсорса — решение о расширении мощности принимается по ней.

Кадр 6. Проверка исполнимости плана

Проверка исполнимости плана
17
17

Приёмка плана

Что показывает: результат независимой проверки: каждое ограничение задачи пересчитано заново по самим числам плана — баланс продаж и выпуска, мощности пар, ресурс центров, границы позиций и групп, рыночные потолки.

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

Что делать: перед тем как отдать программу производству, убедитесь, что здесь нет ни одной строки «нарушено».

Кадр 7. Две выгрузки: результат и программа

Две выгрузки: результат и программа
18
18

Выгрузки результата

Что показывает: две кнопки: плоский файл результата для анализа и программу выпуска в формате загрузки данных.

Как читать: в плоском файле строка — «канал × позиция × центр × шаг» со всеми показателями и автофильтром, рядом листами идёт зеркало экрана. Программа выпуска нужна не для чтения, а чтобы вернуться в систему как план: 14 колонок стандарта плюс рабочий центр и объём производства.

Что делать: для разбора берите первую кнопку, для загрузки результата обратно в платформу — вторую.

БКак устроена модель оптимизации выпуска

Модель отвечает на вопрос «что и на каком центре производить», когда мощности не хватает на весь спрос. Шаг расчёта — месяц: мощности, границы и спрос заданы в месяц, поэтому и программа месячная, а за период она умножается на число месяцев выбранного набора.

Что максимизируем: Σ (маржа на единицу × выпуск) по всем парам «центр × продукт»
Пара «центр × продукт»: мин. мощность ≤ выпуск ≤ макс. мощность × % загрузки (Таблица 1)
Продукт целиком: мин. выпуск ≤ Σ по центрам ≤ макс. выпуск (Таблица 3) и ≤ спрос набора
Центр целиком по времени: Σ (время на ед. × выпуск + переналадка) ≤ фонд времени, ч/мес
Центр целиком по мощности: Σ выпуск ≤ мощность центра в месяц (Таблица 2)
ОграничениеОткуда берётсяЧто означает на практике
Коридор парыТаблица 1сколько этого продукта физически даёт этот центр; технологический минимум действует только на запущенный продукт — невыгодный продукт не грузят на минимум, его просто не ставят в план
Ресурс центраТаблица 2несколько продуктов на одном центре делят общий ресурс: часы (с учётом переналадки под каждый запущенный продукт) либо единицы
Границы продуктаТаблица 3минимум — обязательство: выполняется, даже если маржа отрицательная; максимум — предел рынка или политики
Спрос набораЭкономика позицийбольше, чем можно продать, не производим: разница легла бы на склад, а изменение запасов сценарий 1 не считает
Маржа берётся из выбранного набора — средневзвешенно по объёму, те же цифры, что во вкладке «Экономика позиций». Меняете набор в «Загрузке данных» — меняется и программа. Расчёт не кэшируется: после правки мощностей или данных на экране всегда свежий результат.

Диагностика постановки

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

Как читать: знак ⛔ означает нерешаемость — задача не посчитается, пока это не исправлено; ⚠️ — предупреждение: расчёт пройдёт, но часть продуктов или центров останется вне модели.

Что делать: проверки указывают конкретную строку конкретной таблицы — правьте там, а не в результате.

Результат: программа выпуска (центр × продукт)

Что показывает: сколько какого продукта выпускать на каждом центре — в месяц и за период, с пределом пары, её загрузкой, маржой на единицу и маржой строки. Для центров, считающихся по времени, заполнена колонка «Время, ч/мес».

Как читать: загрузка пары 100% означает, что предел из Таблицы 1 выбран полностью — дальше рост возможен только расширением мощности. Фильтры сверху дают разрез по продукту и по рабочему центру.

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

Свод по продуктам: выпуск против спроса

Что показывает: по каждому продукту — спрос набора, рекомендованный выпуск, разницу между ними и то, какое ограничение остановило выпуск.

Как читать: «Δ к спросу» со знаком минус — недопоставка: спрос есть, мощности не хватило. Колонка «Что ограничило» называет виновника: спрос, границы продукта, мощность пар или мощность центра.

Что делать: продукты с большой недопоставкой и высокой маржой — первые кандидаты на расширение мощности или на перенос части объёма на другой центр.

Свод по рабочим центрам: загрузка и узкие места

Что показывает: чем ограничен каждый центр (временем или единицами), сколько ресурса выбрано, какая загрузка и где она достигла 100%.

Как читать: центр со стопроцентной загрузкой — узкое место: именно он ограничивает маржу всего производства. Центр с пометкой «не ограничен» означает незаполненную Таблицу 2 — его выпуск в модели завышен.

Что делать: расширение мощности имеет смысл только на узком месте; вложение в ненагруженный центр маржи не добавит.

Выгрузка программы выпуска — формат данных

Что показывает: результат оптимизации в стандарте формата данных продаж (14 колонок), расширенном двумя: «Рабочий центр» — где произведено, и «Объём производства» — сколько выпущено.

Как читать: объёмные показатели стандарта относятся к продажам, добавленная колонка — к производству. Их разница есть изменение запасов; сценарий 1 запасы не рассматривает (Δзапасов = 0), поэтому объёмы равны. Месячная программа раскладывается на номенклатуру по миксу выбранного набора, поэтому итог файла сходится с цифрами на экране.

Что сделать: файл в стандартном формате грузится обратно в систему: результат оптимизации становится планом следующего расчёта. Кнопка есть и во вкладке «Оптимизация выпуска», и во вкладке «Отчёт».

ДРасчёт по номенклатуре и каналам: два конструкта и три сценария

Во вкладке «Оптимизация выпуска» есть переключатель метода. Прежний расчёт работает на паре «рабочий центр × продуктовая группа» и на средней марже группы. Новый принимает решение по ячейке «канал × номенклатура»: одна и та же позиция в разных каналах приносит разное (в демо-данных разброс внутри группы доходит до 3,7 раза), и средняя это скрывает. Кроме того, обязательство по конкретной позиции нельзя закрыть другой позицией той же группы.

Что решаем: продажу x[канал, позиция] и выпуск y[центр, позиция] за месяц
Что максимизируем: Σ (маржа ячейки × продажа) — либо объём в сценарии «Оборот»
Баланс: Σ продажи по каналам = Σ выпуск по центрам (склад не копим)
Позиция: мин. объём ≤ Σ по каналам ≤ макс. объём («Границы по номенклатуре»)
Группа: границы Таблицы 3 действуют как срез над суммой позиций
Центр: мощность пары, а целиком — фонд часов с переналадкой либо мощность в единицах

Два конструкта — это одна модель с разной настройкой

КонструктЧто зафиксированоУправленческий смысл
К1 «от рынка»объём каждого канала равен факту наборасбытовая политика неприкосновенна: перестраиваем ассортимент внутри канала, не трогая его объём
К2 «от производства»объём канала свободен в пределах рынкаищем максимум того, что даёт цех; рынок подстраиваем. Разрыв К1 и К2 — цена неприкосновенности каналов
Почему не «сначала позиции, потом группы, потом каналы». Последовательный обход уровней зависит от порядка проходов и невоспроизводим, а его предел равен решению единой задачи. Поэтому направление задаётся ограничениями, а не отдельным алгоритмом.

Три сценария — три стратегии одной программы

СценарийЧто максимизируетУсловиеКогда выбирают
С0. Максимум маржимаржубез пороговэталон: верхняя граница возможного
С1. Дорогая единицамаржусредняя маржа единицы программы не ниже, чем в факте (ползунком до +50 %)премиальный портфель: меньше штук, дороже каждая
С2. Оборотобъёммаржа не ниже (1 − ε) от С0, ε ползунком, по умолчанию 5 %сколько объёма добираем, отдав часть маржи

Итого шесть расчётов — они считаются за один прогон и сравниваются одной таблицей. Основа сценариев — простое разложение: маржа на час = маржа на единицу × производительность. Позиция с маржой 25 руб и часом на единицу даёт 25 руб/ч, позиция с маржой 100 руб и пятью часами — только 20 руб/ч: при дефиците времени первая выгоднее, хотя со штуки зарабатывает вчетверо меньше.

Период и шаг планирования

Периодов на странице два, и это разные вещи. «Период производства» сверху — период данных: откуда берутся факт, цена, себестоимость и маржа ячеек. «Период планирования» во вкладке «Постановка задачи» — то, на что строится программа: именно эти даты попадают в выгрузку, поэтому файл можно грузить обратно как план. Пока период планирования не задан, расчёт идёт на период данных, и в выгрузке оказываются исторические даты — как план такой файл не годится.

Шаг расчётаРекомендуемый горизонтЧто означает
По днямв пределах одного месяцасчитаются только рабочие дни (пн–пт); месячные мощности, фонд времени и границы делятся на число рабочих дней
По неделямдо 3 месяцевшагом становится календарная неделя, в выгрузке заполняется колонка «НЕДЕЛЯ»
По месяцамлюбой: квартал, год, несколько летмесячные величины идут как есть
Модель стационарная: считается один типовой шаг, и он повторяется на все шаги горизонта. Поэтому дневная разбивка даёт ровный план, а не расписание партий, а сезонность и переходящие запасы появятся только в динамической постановке. Одно следствие видно сразу: переналадка не делится на число шагов — она тратится каждый раз, когда позиция запущена, поэтому недельный план обычно чуть дешевле по марже, чем месячный: запусков больше.

Как понимается спрос

Потолок ячейки растягивается пропорционально максимуму позиции из вкладки «Границы по номенклатуре»: если позиции задан рост на 25 %, то и каждый канал может взять +25 % своего объёма — ёмкость канала соразмерна его нынешнему присутствию, а не всей позиции. Галочка «не выходить за спрос» снимает рыночный потолок вовсе (разница ушла бы на склад, а изменение запасов метод не считает).

Период и шаг планирования

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

Как читать: месячные мощности, фонд времени и границы автоматически пересчитываются на выбранный шаг: при недельном шаге фонд 2 400 ч/мес превращается в ≈514 ч/нед. Предупреждение о шаге — рекомендация, а не запрет: расчёт пройдёт и на сотне одинаковых дней, просто читать его будет тяжело.

Что делать: задайте период планирования до расчёта — иначе выгрузка получит прошлые даты. Для оперативного плана берите неделю на квартал, для годового бюджета — месяц.

Сравнение: 2 конструкта × 3 сценария

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

Как читать: звёздочка помечает лучший по марже — это не значит «правильный»: К1 бережёт сбытовую политику, С2 меняет маржу на объём. Серые строки со статусом «не решено» означают, что условия расчёта несовместимы — короткая причина стоит в колонке «Условие».

Что делать: нажмите на строку — ниже раскроется её план, своды и выгрузка. Сравнивайте не только маржу: разница К1 и К2 показывает, сколько стоит неприкосновенность каналов.

План продаж по ячейкам «канал × номенклатура»

Что показывает: главную таблицу результата: сколько какой позиции продавать в каком канале, против базы набора, с рыночным потолком, маржой единицы и маржой строки.

Как читать: «Δ к базе» со знаком минус — позицию в этом канале режем, плюс — наращиваем. Колонка «Что ограничило» заполняется там, где ячейка упёрлась в рыночный потолок. Фильтры сверху дают разрез по каналу, группе и позиции.

Что делать: смотрите сначала строки с наибольшим «Δ к базе» — это и есть предлагаемое изменение сбытовой политики.

Позиции: план, границы и что его ограничило

Что показывает: по каждой позиции — базу, план, границы из вкладки «Границы по номенклатуре», маржу единицы и маржу на час, и причину, по которой выпуск именно такой.

Как читать: причина называет конкретную таблицу: максимум или минимум позиции, рыночный потолок, максимум группы (Таблица 3), мощность центра или пары. «Невыгодна» означает, что ресурс отдан позициям с большей маржой на час.

Что делать: работайте с той таблицей, которую назвала причина. Поднимать выпуск позиции, упёршейся в мощность, правкой границ бесполезно.

Матрица тактик: маржа единицы × производительность

Что показывает: карту ассортимента: по горизонтали — сколько штук даёт час работы центра, по вертикали — сколько зарабатываем со штуки. Размер точки — план продаж, пунктир — медианы ассортимента.

Как читать: правый верхний угол — звёзды (дорого и быстро), левый верхний — премиум-тяжеловесы (дорого, но съедают время), правый нижний — объёмные, левый нижний — балласт. Матрица ничего не считает: она объясняет, почему модель подняла одну позицию и срезала другую.

Что делать: если график пуст, заполните «Время на единицу» во вкладке «Границы по номенклатуре» — без времени производительность не посчитать.

Выпуск по рабочим центрам и свод по центрам

Что показывает: первая таблица — что и где производить (выпуск в месяц и за период, время, маржа на час, доля центра в выпуске позиции); вторая — чем ограничен каждый центр, сколько ресурса выбрано, где узкое место и цена дополнительного ресурса.

Как читать: «Цена доп. ресурса» — сколько маржи в месяц принесёт ещё один час (или единица мощности) на этом центре. Считается пересчётом всей задачи, а не приблизительной оценкой, поэтому это прямой ответ на вопрос «стоит ли покупать смену».

Что делать: сравните цену дополнительного часа со стоимостью смены, аренды или аутсорса — решение о расширении мощности принимается по этой цифре.

Своды по группам и каналам

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

Как читать: это следствие решения по позициям, а не отдельный расчёт: структура групп и каналов складывается снизу вверх. В конструкте К1 объёмы каналов равны базе — меняется только их наполнение.

Что делать: свод по каналам — то, что обсуждается со сбытом; свод по группам — то, что обсуждается с производством.

Результат расчёта — плоский файл Excel

Что показывает: весь результат одной плоской таблицей: строка — «канал × позиция × рабочий центр», а в колонках всё, по чему обычно фильтруют: база и план, доля центра, цена, маржа единицы и маржа на час, производительность, тактика, границы позиции, что её ограничило, режим и загрузка центра, узкое место и цена дополнительного часа. Отдельными листами идёт зеркало экрана: сравнение сценариев, позиции, выпуск и свод по центрам, своды по группам и каналам, замечания расчёта.

Как читать: на первом листе включён автофильтр — по нему сразу строятся сводные таблицы Excel. Сумма колонки «Маржа строки» равна марже программы на экране, сумма «Выпуск в месяц» — её объёму: файл собирается из уже посчитанного результата, а не пересчитывается заново. Конструкт, сценарий и условие расчёта проставлены в каждой строке — файлы разных сценариев можно складывать в один и сравнивать.

Что делать: эта выгрузка — для анализа руками. Если нужно вернуть результат в систему как план, берите вторую кнопку — «Программа выпуска» в формате загрузки данных.

Выгрузка программы по ячейкам — формат загрузки

Что показывает: программу в стандарте формата данных продаж (14 колонок) плюс «Рабочий центр» и «Объём производства». Строки идут по ячейкам «канал × позиция × центр» на каждый месяц набора.

Как читать: раскладка по миксу здесь не нужна — модель сама даёт строки по каналам и позициям, поэтому итог файла совпадает с цифрами на экране до копейки. Объём продаж равен объёму производства: Δзапасов = 0.

Что делать: файл грузится обратно в систему как план: результат оптимизации становится входными данными следующего расчёта — прогноза, стратегии или план-факта.

Прежний расчёт по группам оставлен рядом — переключателем в шапке вкладки. Он полезен для сверки: если два метода расходятся сильно, причина почти всегда в том, что маржа внутри группы неоднородна по каналам, и средняя её скрывала.
Следующая задача (ЦФ2) — максимизация общего объёма выпуска комплекса по теории ограничений: продукты ранжируются по марже на единицу узкого ресурса, а не на единицу продукции. Производственный цикл на единицу берётся из нормативной спецификации. Методология обсуждается отдельно.
© Profit Navigator · К оглавлению · Кабинет