МХП · комбікорм та елеватори · управління годівлі птиці
Технічне завдання під погодження · 14.09.2026

Рецептури комбікорму: розбір кожного пункту управління годівлі птиці

Це відповідь на зафіксовані вимоги від 11.09.2026. По кожному вашому пункту нижче стоїть одне й те саме: що просить замовник, як воно працює сьогодні, яка логіка закладається, що налаштовує людина, що зʼявляється на екрані і за чим цей пункт приймати. Два пункти виявились помилками у нас, і вони вже виправлені на стенді. Там, де у ваших вимогах стоїть «потребує уточнення», ми не питаємо вас повторно, а ставимо робоче рішення і показуємо, де воно змінюється.

Ваші пункти і що з ними

Нумерація збігається з вашим документом, тому цю таблицю можна читати поруч з ним.

Ваш пунктСтанКоротко
3. Робота на реальних даних МХПчекаємо файлистенд рахує на ваших файлах з першого дня, ви підтвердили, що дасте якість, поживність і ціни
4. Дані з систем без ручних вивантаженьза цим ТЗтри режими підключення, джерела названі поіменно, «онлайн» для рецептури це розрахунок на актуальних даних за запитом
5. Загальний обсяг сировини по компаніїза цим ТЗспільна задача по всіх рецептах і заводах з обмеженням наявності
6. Розподіл компонента між фазамиза цим ТЗпослідовність часток задається обмеженням усередині задачі, а не перевіркою після неї
7. Допуски по показниках поживностіза цим ТЗтаблиця допусків, окремо вниз і вгору, окремо на сировину і на норму корму
8. Валін та ізолейцинвиправленопричина була у фіксованому переліку показників у програмі
9. Без жорсткого переліку у шаблонічастково виправленозвʼязок за кодом показника вже працює, лишається прийом файлів у рідному вигляді
10. Сума компонентів понад 100%виправленооптимізатор такого дати не може, причина була у вхідних даних, і вона названа
11. Рецепти рахуються не ізольованоза цим ТЗце той самий механізм, що пункти 5 і 6, окремої роботи не потребує
12. Керовані обмеженняза цим ТЗобсяги, допуски і правила фаз редагує технолог, кожна зміна з автором і датою
13. Автоматизація і участь людиниза цим ТЗрахує агент, затверджує технолог, автозатвердження ми не пропонуємо
14. Ролі, статуси, журналза цим ТЗтри ролі і чотири статуси рецепта, розписані нижче
15. Порівняння з чинною програмоюпотрібен ваш крокперелік функцій нижче: позначте те, чим користуєтесь, і ми відповімо по кожному рядку
16. Повна заміна чинної програмивідповідь нижчеможлива, але рішення ухвалюється за результатом паралельного місяця, а не наперед

Пункт 3, що вже є і чого чекаємо

Стенд від початку працює не на прикладі, а на завантажених файлах: матриця сировини з цінами, рецептури, норми поживності і протоколи лабораторії. Приклад усередині лишається тільки доти, доки не завантажено ваш перший файл, і зникає разом з ним.

Ви підтвердили, що можете підготувати вивантаження з якістю, поживністю і цінами. Цього досить, щоб перевірити коректність розрахунку на ваших показниках. Повний перелік того, що знадобиться для пунктів 5 і 6, стоїть у розділі «Що потрібно від вас».

8. Валін та ізолейцин

Виправлено, працює на стенді

Ви описали причину точно. Перелік показників поживності був заданий у програмі фіксованим списком, тому стовпець, дописаний у файл руками, не читався взагалі. Далі виходило найгірше: норма на валін існувала, а значення у кожного інгредієнта дорівнювало нулю, і агент або оголошував задачу несумісною, або писав «нижче норми» на порожньому стовпці.

Що змінилось

✓Будь-який стовпець файла матриці, який не є службовим (код, назва, ціна, мін, макс, група, постачальник, одиниця, коментар), читається як показник поживності
✓Звʼязок з нормами іде за кодом показника: однаковий код у матриці і у файлі норм, і показник працює нарівні з рештою
✓Після завантаження файла агент прямо пише, які показники побачив понад стандартний набір, тому одруку в назві стовпця видно одразу
✓Якщо норма є, а показника в матриці немає, він більше не рахується як нуль: агент називає цей показник окремо і рахує решту норм

Як перевірити. Додайте у файл матриці стовпці val і ile, а у файл норм рядки з тими самими кодами. Обидва показники підуть у розрахунок і стануть у таблицю норм поруч з рештою.

Критерій приймання пункту

На вашому файлі норма по валіну і по ізолейцину рахується, порівняння факту з нормою збігається з вашим ручним розрахунком, а показник, якого немає в матриці, названий, а не оголошений порушеним.

10. Сума компонентів понад 100%

Спершу про сам розрахунок, бо це питання методології. У задачі, яку розвʼязує оптимізатор, рівність «сума часток дорівнює 100» стоїть окремим рядком і виконується точно. Ми прогнали 200 випадкових задач: максимальне відхилення суми становило 6,25 на десять у мінус тринадцятому степені, тобто похибку представлення числа. Скласти рецепт на 169% оптимізатор не може, і тепер це перевіряється на кожному прогоні.

Отже ефект справжній, а джерело у вхідних даних. Ми відтворили три випадки, які дають рівно те, що ви бачили.

Дубль коду інгредієнта

Той самий код двома рядками у матриці або у рецептурі. Оптимізатор рахує їх як дві різні позиції, а на екрані частки складаються: замість 69,17 плюс 29,43 плюс 1,41 виходить 169,17.

Кілограми замість відсотків

Склад заданий у кілограмах на тонну, тобто сума дорівнює 1000. Поживність рахується правильно, а склад читається як десятикратний.

Код, якого немає в матриці

Частка входить у суму складу, але не має ані ціни, ані поживності, тому у вартість і в норми не потрапляє. Раніше вона зникала мовчки.

Що зроблено

✓Дубль коду більше не приймається: файл відбивається з номерами обох рядків
✓Відхилення суми від 100 називається на екрані разом з ймовірною причиною, включно з розпізнаванням кілограмів на тонну
✓Поруч кнопка «звести до 100% пропорційно»: множник видно до натискання, дію виконує людина, ваш файл не змінюється
✓Коди складу, яких немає в матриці, перелічені окремим блоком
✓Усі чотири випадки закриті регресійними перевірками, тому повторно вони не зʼявляться

Критерій приймання пункту

У кожному розрахунку сума часток рівно 100%. Будь-яке відхилення у вхідному файлі назване з номером рядка і причиною, а не виправлене мовчки.

5. Загальний обсяг сировини по компанії

Що просить замовник. Є сировина, для якої окреме обмеження у кожному рецепті не ставиться, зате є загальна кількість, доступна по компанії на всі заводи. Агент має набирати відсоток компонента з огляду на цей загальний ресурс, а не лише на межу всередині рецепта.

Як воно працює сьогодні. Задача рахується по одному рецепту: сума часток дорівнює 100, норми виконані, межі включення дотримані. Скільки тієї самої сировини піде у сусідні рецепти і на сусідні заводи, така задача не знає в принципі.

Очікувана логіка

Змінні. Частка кожного інгредієнта у кожному рецепті на кожному заводі, у відсотках.

Обмеження, які лишаються ті самі. Сума часток кожного рецепта дорівнює 100. Норми поживності кожного рецепта. Межі включення інгредієнта у цьому рецепті.

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

Дві різні задачі. Перша: найдешевший місячний випуск за наявної сировини. Друга: максимум споживання конкретного інгредієнта за тих самих норм. Друга рахується у двох варіантах, і потрібні обидва.

Технічний максимум

Скільки цієї сировини взагалі можна поставити у корми, якщо норми і межі включення при цьому виконані. Це стеля для закупівлі: більше купувати немає сенсу за жодних умов.

Максимум із запасом вартості

Той самий максимум з умовою, що вартість місячного випуску не зростає більше ніж на заданий відсоток від оптимуму. Дефолт нуль з половиною відсотка, міняється у налаштуваннях. Саме це число має практичний сенс у перемовинах з постачальником.

Що налаштовує людина

Поле таблиці лімітівЩо означаєНаш дефолт
інгредієнткод з вашої матриціперелік з файла
рівенькомпанія або конкретний заводкомпанія
обсягдоступна кількість у тоннахпорожньо, ліміт не діє
періодна який проміжок діє обсягмісяць
що робити при нестачіне перевищувати або дозволити з позначкоюне перевищувати

Що ви побачите на екрані

✓Максимум по кожному інгредієнту у тоннах за період, обидва варіанти поруч
✓Розкладку, у якому рецепті і на якому заводі скільки відсотків це дає
✓Скільки з доступного обсягу забрано і скільки лишилось
✓Ціну рішення: наскільки зростає вартість тонни кожного рецепта і всього випуску
✓Обмеження, яке зупинило зростання: норма, межа включення, драбина по фазах або наявність іншої сировини
✓Вивантаження у файл, щоб цифра пішла у закупівлю без переписування руками

Чесно про залежність від плану

Максимум по компанії це не властивість сировини, а властивість сировини разом з планом виробництва. Той самий інгредієнт при 45 тис. тонн на місяць і при 60 тис. дасть різні числа, а зміна структури фаз змінить його ще раз. Тому без файла плану агент цю цифру не покаже і не підставить середню.

Критерій приймання пункту

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

6. Розподіл компонента між фазами годівлі

Що просить замовник. Фіксована місячна кількість компонента має розподілятись між рецептами у логічній послідовності. На прикладі макухи соняшникової: від найменшого відсотка введення у Предстарті до найбільшого у Фініші 2.

Як воно працює сьогодні. Порядок часток між фазами перевіряє людина після розрахунку, тому він ловиться не завжди, а виправлення означає повний перерахунок вручну.

Очікувана логіка

Порядок фаз задається один раз: Предстарт, Старт, Ріст, Фініш, Фініш 2. Він живе у налаштуваннях, тому нову фазу або інший ланцюг ви додасте самі.

Обмеження ставиться прямо у задачу: частка інгредієнта у наступній фазі не менша за частку у попередній. Оскільки всі фази рахуються однією задачею разом з лімітом з пункту 5, оптимізатор шукає найдешевший набір рецептів, який драбину вже дотримує, а не підганяє її після.

Правило задається на КОЖЕН інгредієнт окремо. Ми не вважаємо послідовність від Предстарту до Фінішу 2 універсальною для всієї сировини: це логіка обмеженого компонента, і для інших вона може бути зворотною або відсутньою. Дефолт для всіх інгредієнтів це «без правила», перелік з драбиною задає технолог.

Що налаштовує людина

ПолеЩо означаєНаш дефолт
напрямокзростає до фінішу, спадає до фінішу, без правилабез правила
мінімальний крокнаскільки частка наступної фази має бути більшоюнуль, тобто досить не меншої
максимальний крокнаскільки вона може бути більшоюбез обмеження
стеля фазимаксимум саме у цій фазі, наприклад нуль у Предстартімежа включення рецепта

Коли драбина недосяжна

Драбина разом з нормами і наявністю можуть виявитись несумісними. У цьому випадку агент не підбирає компроміс мовчки: він каже, що задача несумісна, і показує, яке саме обмеження треба послабити і на скільки, у тому вигляді, що вже працює у розділі «Ціна обмежень». Рішення про послаблення завжди за технологом.

Критерій приймання пункту

У кожному рецепті, для якого драбину задано, порядок часток дотримано, увесь доступний обсяг компонента розподілено між фазами, і жодна фаза не вийшла за свою стелю. Якщо драбина недосяжна, агент називає обмеження, а не підганяє результат.

7. Допуски по кожному показнику поживності

Що просить замовник. Поле, у якому користувач сам встановлює допустимий відсоток похибки на кожен показник поживності, а не один жорсткий допуск на всі.

Як воно працює сьогодні. У лабораторії один допуск на всі показники, і це справді груба спрощеність: три відсотки на обмінну енергію і три відсотки на натрій це різні за змістом речі.

Очікувана логіка

Важливо не змішати два різні допуски, вони працюють у різних місцях і мають різний зміст.

Допуск на сировину

Наскільки лабораторна проба може відхилятись від паспортного значення матриці, перш ніж це стане сигналом про якість партії. Задається у відсотках або в абсолютних одиницях показника, на ваш вибір по кожному рядку.

Допуск на норму корму

Наскільки фактична поживність готового корму може відхилятись від норми, перш ніж вважати норму порушеною. Задається в абсолютних одиницях показника. Дефолт це половина останнього знака, який ми показуємо, тобто округлення порушенням не вважається.

Вниз і вгору окремо. Ми закладаємо дві межі на кожен показник, а не один симетричний відсоток: для лізину недобір і перебір це різні за ціною речі. Симетричний допуск задається однаковими числами у двох полях, тому цей варіант нікуди не зникає.

Колонка таблиці допусківЩо означає
показник, кодтой самий код, що у матриці і в нормах
одиницябереться з довідника показників
допуск сировини вниз і вгорузначення плюс ознака, це відсотки чи абсолют
допуск норми вниз і вгоруабсолютне значення в одиницях показника
хто змінив і колизміна допуску це рішення, тому воно з автором і датою, а не тихе налаштування

Таблиця редагується в інтерфейсі і завантажується файлом, щоб її можна було підготувати в Excel один раз на всі показники. Зміна допуску одразу перераховує сигнали і розділ якості сировини, без участі розробника.

Критерій приймання пункту

Допуск змінюється у кабінеті без нас, окремо на сировину і на норму, окремо вниз і вгору, і перерахунок відбувається одразу. Показник, у якого допуск не заданий, працює за дефолтом і це видно на екрані.

9. Файл у рідному вигляді

Що просить замовник. Завантажувати рецепт у початковому вигляді, без ручної доробки під формат нашого шаблону. Як звʼязок ви самі назвали код показника поживності, однаковий для показників корму і показників сировини.

Половина вже працює

Звʼязок за кодом показника зроблено разом з пунктом 8: перелік показників більше не обмежений шаблоном, будь-який неслужбовий стовпець читається як показник зі своїм кодом, і за цим самим кодом він зіставляється з нормою. Тобто дописувати показники у шаблон більше не треба.

Що лишається зробити

Лишається друга половина: прийняти сам файл так, як він виходить з вашої системи, без приведення назв стовпців до наших.

✓Формати: xlsx, включно з вивантаженням Power BI, старий xls, csv і txt з будь-яким роздільником
✓Аркуш і рядок шапки шукаються самі: вивантаження часто починається з назви звіту і періоду, а перший аркуш буває титульним
✓Вікно зіставлення: агент показує перші рядки так, як вони у файлі, і пропонує відповідність стовпців, а людина її підтверджує
✓Підтверджене зіставлення запамʼятовується, тому наступного місяця той самий файл читається без жодного питання

Чому зіставлення підтверджує людина

Ми свідомо не вгадуємо, який стовпець чому відповідає. У сусідньому проєкті це коштувало б дорого: у файлі клієнта стовпець з назвою «культура» означав тип угідь, а справжня культура лежала в іншому місці, і мовчазне вгадування поставило б у поле чуже значення, якого ніхто б не побачив. У рецептурі ціна такої помилки та сама. Тому перший файл кожного виду ви підтверджуєте один раз, далі це автоматично.

Критерій приймання пункту

Ваш файл рецептур і ваша матриця сировини завантажуються у тому вигляді, у якому виходять з системи, без правки назв стовпців, а повторне завантаження того самого виду проходить без зіставлення.

4. Дані з 1С, Power BI і LIMS без ручних вивантажень

Що просить замовник. Після впровадження агент не має залежати від постійного ручного завантаження файлів: він бере актуальні дані з наявних джерел і використовує їх для аналізу і розрахунку. Названі джерела: 1С, Power BI, LIMS, звіт лабораторії.

Три режими, і вони йдуть саме у такому порядку

1
Вивантаження, це етап тестування

Ви кладете файли руками, агент рахує. Саме так перевіряється коректність розрахунку на ваших показниках, і саме цей режим не потребує від вашого ІТ нічого.

2
Читання за розкладом, це робочий режим

Агент сам забирає дані з названих джерел і рахує на актуальних. Технічно це або підготовлена вибірка з облікової системи, або файловий обмін у теку за розкладом, або доступ до звіту. Пише агент тільки у себе.

3
Запис назад, лише після пілота і за окремим рішенням

Затверджений рецепт лягає у вашу систему як документ. Це окрема розмова з вашим ІТ і окреме погодження, у цей етап воно не входить.

Що з якого джерела

ДаніНаш дефолт по джерелуОновлення
Показники якості партій, протоколиLIMS, звіт лабораторіїщодня і при появі нового протоколу
Ціни сировиниоблікова системапри зміні прайсу, не рідше разу на добу
Залишки і сировина в дорозіоблікова системащодня
План виробництва по рецептах і заводахоблікова системапри затвердженні плану і при його зміні
Рецептури і нормиваш чинний реєстр рецептівпри затвердженні місячного рецепта
Зведення і звітність для керівництваPower BIза розкладом вашого звіту

Що для рецептури означає «онлайн»

Ми закладаємо розрахунок на актуальних даних за запитом плюс оновлення довідників за розкладом, а не безперервний перерахунок у реальному часі. Причина у самому процесі: рецепт затверджується на місяць, а перерахунок посеред дня без рішення технолога нічого не міняє на виробництві. Якщо під «онлайн» ви маєте на увазі щось інше, це змінюється налаштуванням періодичності, а не переробкою рішення.

Що потрібно від вашого ІТ для другого режиму

✓Спосіб доступу до кожного джерела на ваш вибір: вибірка з облікової системи, вивантаження у теку за розкладом або доступ до звіту
✓Технічний користувач тільки на читання
✓Тестовий контур, щоб перше підключення не чіпало бойову базу
✓Домовленість про періодичність, щоб важкі вибірки не йшли у піковий час

Критерій приймання пункту

Розрахунок запускається на даних, які агент забрав сам, без жодного ручного файла, і на екрані видно, з якого джерела і о котрій годині взято кожен набір.

14. Ролі, статуси, погодження і журнал

У ваших вимогах цей розділ позначений як несформульований. Ми не залишаємо його порожнім і ставимо робочу схему: вона потрібна вже на пілоті, бо без неї немає чим підтвердити, хто саме затвердив рецепт.

Технолог

вантажить дані, рахує, редагує обмеження і допуски, подає рецепт на погодження

Керівник управління

те саме плюс затвердження рецепта і зміна лімітів по компанії

Перегляд

бачить розрахунки і документи, нічого не міняє

Статуси рецепта: чернетка, на погодженні, затверджений, архів. Перехід ставить дату і автора, а затверджений рецепт редагується лише створенням нової версії.

Журнал пише кожну зміну обмеження, допуску і правила фаз з автором, датою і парою «було, стало», а також кожне завантаження файла і кожен запуск розрахунку. Це і є відповідь на питання «чому місяць тому вийшла інша цифра».

Підтвердження людиною обовʼязкове

Агент рахує і показує, з чого склалась цифра. Затверджує рецепт людина. Автозатвердження ми не пропонуємо навіть тоді, коли розрахунок сходиться ідеально, і в жодному з режимів пункту 4 його не буде.

15. Перелік функцій вашої програми

Ви попросили детально порівняти нас із програмою, якою МХП рахує рецепти зараз. Порівняти за назвою неможливо: у різних версій тієї самої програми різний набір, а користуєтесь ви не всім. Тому нижче перелік функцій, з яких складається професійна програма розрахунку рецептів, і по кожній стоїть наш стан.

Що зробити вам. Позначте те, чим реально користуєтесь у щоденній роботі. Ми повернемось з відповіддю по кожному позначеному рядку і зі строком по тих, яких у нас ще немає. Це і є те предметне порівняння, без якого на питання про повну заміну відповісти чесно не можна.

вже працює зробимо за цим ТЗ потрібне ваше підтвердження
Позначено 0 з 0
900 символів лишилось

16. Чи замінить це чинну програму

Відповідаємо прямо, бо на такому питанні обережна відповідь нікому не допомагає.

Що вже є і працює на ваших файлах

Ядро це не обгортка над чужим рушієм, а власна лінійна оптимізація: мінімум вартості тонни за обмежень поживності і меж включення. Воно звірене з еталонним розвʼязувачем на 120 випадкових задачах і рахує на ваших матрицях, нормах і цінах. Плюс те, чого у типовій програмі рецептури немає: затверджений склад перевіряється на РЕАЛЬНІЙ сировині за протоколами лабораторії, рахується ціна кожного обмеження, історія по місяцях і сигнали.

Чого бракує, щоб замінити повністю

БлокЩо це означаєСкладність
Спільна задача по рецептах і заводахпункти 5 і 6 цього ТЗ разом з обмеженням наявностісередня, ядро вже це вміє
Обмеження на співвідношення показниківлізин до сирого протеїну, кальцій до фосфору, енергія до протеїнунизька, це лінійні обмеження
Обмеження на групи сировинисумарна частка зернових, сумарна частка шротів, стеля на побічні продуктинизька
Премікси, носії і мікродозуваннярозрахунок дозування, крок дозатора, мінімальна навіска змішувачасередня, частина обмежень стає цілочисельною
Довідники як робочий обʼєктпоказники, сировина, постачальники і версії матриці всередині програми, а не файламисередня
Версії рецепта і погодженняпункт 14 цього ТЗ плюс порівняння двох версій і вивантаження у вашу системусередня
Сценарії заміни сировинисировини немає, чим замінити і що це коштуєнизька, це та сама задача з іншими межами
Те, що ви позначите у переліку вищефункції вашої чинної програми, яких ми поки не бачимоскажемо по кожній після вашої позначки

Що лишається за людиною у будь-якому разі

Зоотехнічна норма і рішення про рецепт лишаються за технологом. Агент рахує, показує, з чого склалась цифра, і сигналить про розбіжність, а затверджує рецепт людина.

Як ми пропонуємо ухвалювати це рішення

Замінити програму можливо, але це продукт на кілька етапів, і вирішувати наперед немає сенсу. Розумний шлях це паралельний місяць: агент рахує поруч з чинною програмою на тих самих даних, кожна розбіжність розбирається по рядках, і на виході є протокол, за яким видно, чи можна довіряти. Поки паралельний місяць не пройдено, ми не рекомендуємо вимикати чинну програму і не будемо стверджувати, що заміна вже можлива.

Наші рішення по відкритих питаннях

У ваших вимогах пʼятнадцять пунктів позначені як такі, що потребують уточнення. Ми не повертаємо їх вам питаннями: по кожному стоїть робоче рішення, за яким можна починати. Якщо десь у вас інакше, позначте рядок, і ми поміняємо саме його.

Питання з ваших вимогНаше рішенняДе змінюється
Яку програму МХП використовує і який її функціонал обовʼязковийпорівнюємо за переліком функцій вище, а не за назвоюваші позначки у переліку
Повна заміна чи паралельна робота на першому етапіпаралельна робота, рішення про заміну за результатом паралельного місяцярішення після протоколу звірки
Правила розподілу між фазами для різних компонентівправило задається на кожен інгредієнт окремотаблиця драбини
Чи універсальне правило «від Предстарту до Фінішу 2»ні, це напрямок конкретного інгредієнта, за замовчуванням драбина вимкненатаблиця драбини
На якому рівні задається загальний ліміткомпанія, з можливістю звузити до заводуколонка «рівень» у таблиці лімітів
За який період контролюється обсягмісяць, бо рецепт затверджується на місяцьколонка «період» у таблиці лімітів
Похибка симетрична чи окремо вниз і вгоруокремо вниз і вгору, симетрія задається однаковими числамитаблиця допусків
Які ще показники крім val та ileперелік не обмежений, читається будь-який стовпець вашого файласам файл матриці
Який код використовувати для зіставленнякод показника з вашого довідника, як ви й запропонуваликолонка коду у файлах
Які формати приймати без приведення до шаблонуxlsx включно з Power BI, xls, csv, txt, з підтвердженням зіставлення один развікно зіставлення
Що означає робота «в режимі онлайн»розрахунок за запитом на актуальних даних плюс оновлення довідників за розкладомперіодичність у налаштуваннях
Яке джерело основне для кожного типу данихтаблиця у розділі 4 цього ТЗналаштування підключень
Хто має право змінювати обмеження і допускикерівник управління і призначені технологи, кожна зміна з автором і датоюролі у розділі 14
Чи потрібне погодження людиноютак, обовʼязкове, автозатвердження не пропонуємоне змінюється
Ролі, статуси, погодження і журналтри ролі і чотири статуси, розписані у розділі 14налаштування ролей

Що потрібно від вас

Формати ті самі, що вже приймає стенд, тому готувати заново нічого не треба. Позначено, без чого конкретний пункт не порахується.

ЩоНавіщоБез цього
Матриця сировини з цінами, з усіма вашими показниками, включно з val та ileоснова розрахункуне рахується нічого
Рецептури по всіх фазах з позначкою фази і заводупункти 5 і 6максимум по компанії і драбина
Норми поживності по кожній фазіоснова розрахункуне рахується нічого
План виробництва по рецептах і заводах на період, у тоннахпункт 5максимум по компанії, приблизно він не оцінюється
Наявність і законтрактовані обсяги сировини на періодпункт 5обмеження наявності
Перелік інгредієнтів з драбиною: напрямок, мінімальний і максимальний крокпункт 6драбина лишається вимкненою
Таблиця допусків або підтвердження наших дефолтівпункт 7працює один спільний допуск, як зараз
Протоколи лабораторії за останні місяціперевірка складу на реальній сировинірахуємо лише за паспортом матриці
Позначений перелік функцій вашої чинної програмипункт 15порівняння і відповідь про заміну
Один закритий місяць з розрахунком чинної програмипаралельна звірканемає з чим порівнювати

Критерії приймання

Це те, за чим ви прийматимете роботу. Формулювання взяті з ваших вимог, кожен пункт перевіряється на ваших файлах, а не на прикладі.

1
Агент коректно працює з фактичними даними компанії

Ваші файли завантажуються і рахуються, результат збігається з вашим контрольним розрахунком у межах заданого допуску.

2
Рецептура математично коректна

Сума часток рівно 100% у кожному розрахунку. Будь-яке відхилення у вхідному файлі назване з номером рядка і причиною.

3
Враховується загальний обсяг сировини по компанії

Сумарне споживання по всіх рецептах і заводах не перевищує заявлену наявність, і названо обмеження, яке зупинило зростання.

4
Обмежена сировина розподілена між фазами

Порядок часток дотримано у кожному рецепті, для якого драбину задано, або названо обмеження, яке робить її недосяжною.

5
Допуски встановлює користувач

Окремо на кожен показник, окремо на сировину і на норму, без участі розробника, з негайним перерахунком.

6
Валін, ізолейцин і решта ваших показників беруть участь у розрахунку

Показник, якого немає в матриці, названий окремо і не оголошений порушеним.

7
Файл приймається у робочому вигляді

Без ручного приведення назв стовпців до нашого шаблону, з підтвердженням зіставлення один раз.

8
Результат на контрольному кейсі порівняний з чинною програмою

Протокол розбіжностей: по кожній позиції або нуль, або пояснення конкретним рядком вхідних даних. Плюс перелік функцій чинної програми з позначкою, що закрито повністю, що доробляється і що лишається поза межами. Це головний критерій, решта сім це умови, без яких він не має сенсу.

Окремий критерій на повну заміну чинної програми зараз поставити неможливо, і ми цього не робимо: спершу ваш позначений перелік функцій, потім паралельний місяць, і лише потім розмова про заміну.

Етапи

Пункти 8 і 10 уже у проді, окремого часу не потребують. Відлік іде від дня, коли ми отримали файли і позначений перелік функцій.

ТижденьЩо робимоЩо ви бачите в кінці
1прийом ваших файлів у рідному вигляді, довідник фаз, таблиця драбини і таблиця допусківпункти 7 і 9 працюють на ваших рецептурах
2спільна задача по всіх рецептах і заводах з обмеженням наявності, максимум по кожній сировині у двох варіантах, розподіл між фазамипункти 5, 6 і 11 з розкладкою по рецептах і ціною рішення
3ролі, статуси і журнал, відповідь по кожному рядку вашого переліку функційпункти 12, 13, 14 і предметне порівняння з чинною програмою
4паралельний місяць проти чинної програми, розбір розбіжностейпротокол розбіжностей і рішення про приймання

Підключення до 1С, Power BI і LIMS з пункту 4 іде окремим потоком разом з вашим ІТ і не тримає перші три тижні: до нього стенд працює на ваших вивантаженнях.

Уточнення

Якщо десь ми зрозуміли неточно або якийсь пункт треба сформулювати інакше, напишіть тут, і ми переробимо саме цей пункт, а не весь документ.

Initask · управління годівлі птиці МХП · ТЗ від 14.09.2026, зібране за зафіксованими вимогами від 11.09.2026. Розрахунки, про які тут ідеться, перевіряються руками на робочому стенді: він рахує на ваших файлах, а не на прикладі.