Підключення до будь-якої ERP

Відкритий REST API SkyPlanner підключається до ERP, MES та операційних систем, включно з внутрішніми ERP. Створіть інтеграцію самостійно або дозвольте нашій команді допомогти.

Працює і автономно — інтеграція з ERP є опціональною, не обов'язковою.

Обговорити проект інтеграції

Підключається до ERP та MES систем, таких як

Інтеграції / ERP / Microsoft Dynamics 365 Supply Chain Management

Посібник з інтеграції Dynamics 365 Supply Chain Management зі SkyPlanner APS для календарного планування виробництва

Цей посібник з інтеграції Dynamics 365 Supply Chain Management пояснює партнерам та ІТ-командам, як підключити Microsoft Dynamics 365 Supply Chain Management до SkyPlanner APS. SkyPlanner обмінюється даними з Dynamics 365 Supply Chain Management в обох напрямках через стандартні сутності даних цієї системи:

  • До SkyPlanner надходять виробничі замовлення, технологічні операції та завдання маршруту, рядки BOM, виробничі ресурси, календарі, випущені продукти, наявні запаси та рядки замовлень на закупівлю.
  • Запланований час початку й завершення та вибраний виробничий ресурс записуються назад у виробниче замовлення та його технологічні операції маршруту.
  • Відпрацьовані операторами години та кількість продукції передаються назад через журнал маршрутних карток.
  • Вебхуки SkyPlanner передають зміни графіка одразу, щойно вони відбуваються.
Діаграма Ганта у SkyPlanner APS із завданнями, розподіленими між робочими центрами, та списком замовлень унизу.

Під час впровадження команда SkyPlanner налаштовує інтеграцію відповідно до вашої конфігурації Supply Chain Management, а після запуску підтримує її. Цей посібник призначений для партнерів і розробників, які хочуть долучитися до роботи або самостійно створювати рішення на основі документованого REST API SkyPlanner (довідник API).

Варіанти інтеграції з Dynamics 365 SCM

Supply Chain Management надає доступ до своїх даних через сутності даних. Для календарного планування важливі чотири варіанти:

  1. OData v4 REST endpoint. [Your organization's root URL]/data надає доступ до кожної сутності даних із позначкою IsPublic та повну підтримку створення, читання, оновлення й видалення. Підтримуються $filter, $count, $orderby, $skip, $top, $select і $expand першого рівня. Розбиттям на сторінки керує сервер; максимальний розмір сторінки — 10 000 записів. Пакетні запити дають змогу об’єднувати операції запису в набори змін. OData працює синхронно. (джерело)
  2. API для пакетного обміну даними. Data management package REST API та періодичні інтеграції передають великі обсяги даних асинхронно. Microsoft: “If the volume is more than a few hundred thousand records, use the batch data API.” (Якщо обсяг перевищує кілька сотень тисяч записів, використовуйте API для пакетного обміну даними.) Цей API також підтримується в локальних розгортаннях. (джерело)
  3. Бізнес-події. Програми Finance and operations публікують бізнес-події в Azure Service Bus, Event Grid, кінцевих точках HTTPS або Power Automate. (джерело)
  4. Користувацькі служби та дії OData. Користувацькі служби X++ і прив’язані дії OData виконують бізнес-логіку на вимогу.

Для щоденного обміну даними інтеграція SkyPlanner використовує кінцеву точку OData, а для початкового завантаження великого обсягу — API пакетного обміну даними. У Supply Chain Management нічого встановлювати не потрібно.

Автентифікація

Зареєструйте застосунок у Microsoft Entra ID (service principal). У Supply Chain Management зіставте цей застосунок із користувачем, якому призначено потрібні для інтеграції ролі безпеки. Інтеграція читає дані про виробництво, виробничі ресурси й запаси та записує дані календарного планування виробничих замовлень і журнали. Токени запитуються в Entra ID за допомогою облікових даних клієнта.

Доступні інтеграції дані визначають два правила:

  • Юридичні особи. OData повертає дані компанії за замовчуванням, якщо до запиту не додано ?cross-company=true. Підприємства з кількома виробничими майданчиками фільтрують дані за dataAreaId.
  • Публічні назви. Нижче наведено назви сутностей із модуля Data management. Публічні назви колекцій OData можуть відрізнятися, тому отримуйте їх із /data/$metadata вашого середовища.

На боці SkyPlanner автентифікація в REST API відбувається за токеном API (SkyPlanner Settings > API). Документація доступна у Swagger/OpenAPI. Навчальний посібник з інтеграції покроково пояснює перші виклики.

Зіставлення даних

Сутність D365 SCMОб’єкт SkyPlannerНапрямокПеріодичність
Випущені продукти (ItemNumber)Продукти й матеріалиSCM → SkyPlannerПочаткове завантаження, далі — лише зміни
Рядки виробничої BOM (ProdProductionOrderBillOfMaterialsLineEntity), рядки BOMСтруктура продукту, матеріали для кожного замовленняSCM → SkyPlannerПід час кожної синхронізації замовлень
Маршрут, версії маршруту, технологічні операції маршруту, властивості технологічних операцій (RouteOperationPropertiesV2Entity)Етапи процесу з часом налагодження та виконанняSCM → SkyPlannerПочаткове завантаження, далі — у разі змін
Виробничі ресурси (OpResOperationsResourceEntity), групи виробничих ресурсів, можливостіРобочі центри, групи робочих центрів, коефіцієнти ефективностіSCM → SkyPlannerПочаткове завантаження, надалі — зрідка
Календарі робочого часу, календарні дні й часові інтервали, призначення календарівЗміниSCM → SkyPlannerЩодня; інший варіант — вести зміни у SkyPlanner
Заголовки виробничих замовлень (ProdProductionOrderHeaderEntity)Замовлення з термінами виконання та статусамиSCM → SkyPlannerКожні кілька хвилин або за бізнес-подією
Технологічні операції маршруту (ProdProductionOrderRouteOperationEntity), завдання маршруту (ProdProductionOrderRouteJobEntity)Виробничі завдання з тривалістю та вимогами до виробничих ресурсівSCM → SkyPlannerПід час кожної синхронізації замовлень
Наявні запасиСкладські залишкиSCM → SkyPlannerЩогодини або під час розрахунку розкладу
Рядки замовлень на закупівлю з датою поставкиОчікувані надходження матеріалів; запаси оновлюються, коли замовленню на закупівлю присвоєно статус DeliveredSCM → SkyPlannerЩогодини або під час розрахунку розкладу
Заплановані дата й час початку та завершення і виробничий ресурс кожної технологічної операції маршрутуЗаплановані початок, завершення та робочий центр для кожної технологічної операціїSkyPlanner → SCMУ разі зміни розкладу, через вебхук SkyPlanner
Журнал маршрутних карток (ProdRouteCardProductionJournalEntryEntity: RegisteredHours, ReportedGoodInventoryQuantity)Записи обліку часу та кількість продукціїSkyPlanner → SCMЗа кожним підтвердженням або за кожну зміну, якщо вибрано цей варіант
Налаштування обмежень у SkyPlannerМатриця часу переналагодження, інструменти як обмежені виробничі ресурси, кількість операторів, альтернативні виробничі ресурсиВедеться у SkyPlannerНалаштовується під час впровадження

Схеми інтеграції

1. Початкове завантаження основних даних. Завантажте виробничі ресурси, їхні групи, календарі, випущені продукти, маршрути та BOM. Для обсягів у сотні тисяч записів використовуйте API пакетного обміну даними, а для менших — посторінкове завантаження через OData. Зіставте кожен виробничий ресурс SCM із робочим центром SkyPlanner. Не обмежуйтеся зіставленням груп: календарне планування технологічних операцій резервує групи, але в цеху роботу виконують конкретні виробничі ресурси.

2. Синхронізація замовлень. Зчитуйте затверджені виробничі замовлення зі статусами, за які відповідає SkyPlanner, зазвичай Scheduled і Released, разом із технологічними операціями та завданнями маршруту й рядками BOM. Також зчитуйте відкриті рядки замовлень на закупівлю. SkyPlanner вважає замовлений матеріал доступним на дату поставки із замовлення на закупівлю та оновлює запаси, коли цьому замовленню присвоєно статус Delivered.

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

3. Зворотний запис розкладу. Для кожної технологічної операції, яку рушій розмістив або переніс, SkyPlanner записує заплановані дату й час початку та завершення і виробничий ресурс у технологічну операцію маршруту. Для цього використовуються назви полів із /data/$metadata вашого середовища. Зміни передаються пакетними наборами змін OData, тож результат одного розрахунку розкладу записується як одне узгоджене оновлення.

4. Підтвердження з цеху. Оператори реєструють роботу через SkyPlanner Mobile Confirmations або Production Timer, а записи обліку часу підтримують актуальність розкладу. Години й кількість придатної продукції можуть передаватися назад як рядки журналу маршрутних карток. Функцію Report as finished і далі використовуйте там, де й зараз: у SCM або Production floor execution.

Для кожного проведення виберіть один канал. Якщо реєструвати ті самі години і зі SkyPlanner, і з Production floor execution, вони дублюватимуться.

5. Відповідальність за дані та правила розв’язання конфліктів. Зафіксуйте їх до запуску:

ДаніВідповідальна система
Продукти, BOM, маршрути, кількість, статус замовлення, розрахунок собівартостіSupply Chain Management
Планові виробничі замовленняPlanning Optimization
Послідовність технологічних операцій, заплановані початок і завершення, призначення виробничих ресурсівSkyPlanner
Матриця часу переналагодження, інструменти, кількість операторів, альтернативні виробничі ресурсиSkyPlanner
Зміни та відсутність працівниківОдна система, вибрана під час визначення обсягу
Проведення відпрацьованих годин і випуску продукціїSupply Chain Management; за вибраного варіанта — на основі записів обліку часу SkyPlanner

Основне джерело конфліктів — власний механізм планування виробничих завдань у SCM. Якщо планувальник змінює графік замовлення в SCM, дати SkyPlanner перезаписуються. Для замовлень, якими керує SkyPlanner, використовуйте IsProductionOrderSchedulingLocked у заголовку виробничого замовлення. Будь-яке замовлення, змінене в SCM, вважайте новою версією та синхронізуйте повторно. Коли у виробництві відбуваються зміни, Autopilot автоматично перебудовує графік.

Що входить до проєкту

Впровадження зазвичай завершується протягом кількох тижнів від початку підключення. Перед цим ви можете працювати з власними даними протягом 30-денного безкоштовного пробного періоду. Експортуйте виробничі ресурси, технологічні маршрути й відкриті виробничі замовлення через проєкт експорту в модулі Data management або надбудову Excel, імпортуйте їх у форматі CSV чи Excel та перевірте графік.

  1. Визначення обсягу. Узгодьте таблицю зіставлення, статуси, якими керує SkyPlanner, частоту синхронізації та канал проведення даних.
  2. Доступ. Зареєструйте застосунок Entra ID, зіставте його з користувачем SCM із ролями, що надають мінімально необхідні права, та перевірте імена публічних сутностей у /data/$metadata. Спочатку зробіть це в тестовому середовищі, потім — у робочому.
  3. Початкове завантаження. Виробничі ресурси, календарі, випущені продукти, технологічні маршрути, специфікації BOM.
  4. Синхронізація замовлень і замовлень на закупівлю. Періодичні запити змінених записів із $filter, а також бізнес-події, якщо вони є у вашому каталозі.
  5. Налаштування обмежень у SkyPlanner. Матриця часу переналагодження, інструменти, кількість операторів та альтернативні верстати чи працівники.
  6. Зворотний запис графіка. Пакетне оновлення технологічних операцій маршруту та блокування планування для замовлень, якими керує SkyPlanner.
  7. Паралельне тестування. Використовуйте SkyPlanner паралельно з поточним планом, порівнюйте дати й виправляйте основні дані.
  8. Запуск у роботу. Увімкніть зворотний запис, коли дані узгоджуватимуться.

Що врахувати під час інтеграції з Dynamics 365 SCM

  • Подвійне врахування ефективності. SCM розраховує час за формулою “Scheduling time = Time x 100 / Efficiency percentage.” (Формула коригує час планування відповідно до відсотка ефективності.) Зіставте ефективність з ефективністю робочого центру SkyPlanner лише один раз. Не застосовуйте її повторно до вже скоригованого часу.
  • Календарі прив’язані до груп виробничих ресурсів. Зчитуйте призначення календарів як для групи, так і для кожного виробничого ресурсу, інакше дані про потужність розходитимуться.
  • Планування технологічних операцій і виробничих завдань. Замовлення, сплановані на рівні технологічних операцій, не мають часу початку й завершення та конкретного виробничого ресурсу. Синхронізуйте технологічні операції маршруту й вимоги до виробничих ресурсів, а не лише дати.
  • Параметри обмеження потужності. Виробничі ресурси, для яких Finite capacity має значення No, можуть бути перевантажені в SCM. У SkyPlanner моделюйте кожне реальне обмеження як обов’язкову межу потужності.
  • 32 виробничі ресурси на технологічну операцію. У SCM під час планування виробничих завдань діє обмеження: 32 виробничі ресурси на технологічну операцію. У SkyPlanner альтернативи задаються через групи робочих центрів та альтернативні робочі центри.
  • Сторінкова видача й обсяг даних. OData повертає до 10 000 записів на сторінку й розгортає пов’язані дані на один рівень углиб. Для початкового завантаження великих обсягів використовуйте API пакетного обміну даними.
  • Юридичні особи. Без cross-company=true і фільтрів dataAreaId на підприємстві з кількома компаніями синхронізуватимуться дані лише компанії за замовчуванням.

Хто налаштовує інтеграцію

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

  1. Команда SkyPlanner налаштовує інтеграцію під час підключення та підтримує її після запуску — як на стороні SkyPlanner, так і для узгоджених сутностей даних SCM. Кожне підприємство використовує D365 SCM по-своєму, і саме тут потрібне розуміння цих особливостей.
  2. Ваш партнер Dynamics може долучитися. Він знає вашу конфігурацію, розширення та ролі безпеки й може налаштувати застосунок Entra ID та доступ до сутностей. SkyPlanner надає REST API, документацію Swagger/OpenAPI та вебхуки.
  3. Ваші розробники можуть створювати власні рішення на основі того самого задокументованого REST API, використовуючи токен API. Для початку достатньо токена API, а команда SkyPlanner допоможе за потреби.

Після підключення рушій Arcturus будує графік за актуальними виробничими замовленнями SCM, а заплановані дати записуються в технологічні операції маршруту. Вартість SkyPlanner починається від 199 € на місяць і включає 5 робочих центрів. Оплата — щомісячна. Вартість інтеграції для ваших процесів і потреб розраховується заздалегідь разом із тарифним планом, тож ви бачите повну вартість ще до початку роботи.

Порівняння з власними засобами планування SCM читайте в матеріалі «Планування виробництва в Dynamics 365 SCM з урахуванням реальних потужностей верстатів і персоналу». Загальний огляд доступний на сторінці Dynamics 365 SCM, а інші ERP — у розділі інтеграцій з ERP.

Спробувати безкоштовно Зв’язатися з відділом продажів

Відгуки виробників про SkyPlanner

Kalle Kalliomäki, фахівець із ланцюгів постачання UTU, у цеху виробництва електрощитів в Улвілі

2 годекономії щотижня

«Завдяки SkyPlanner ми перейшли від планування виробництва в таблицях Excel до оптимізації виробництва в реальному часі».

Kalle Kalliomäki, фахівець із ланцюгів постачання
UTU · Електрощити та розподільне обладнання

Планування виробництва заощаджує 2 години робочого часу щотижня, а нова черга завдань надходить на лінію за лічені секунди.

Читати відгук UTU

Оператори в костюмах для чистих приміщень біля лінії розливу у флакони на фармацевтичному заводі Laboratory & Allied у Найробі

+90%до ефективності виробництва

«Ефективність виробництва зросла на 90%».

Abdul Rucyinga, керівник ІТ-відділу
Laboratory & Allied · Фармацевтичне виробництво

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

Читати відгук Laboratory & Allied

100%надійності поставок із 2021 року

«SkyPlanner дає нам чітке уявлення про потужності й робить планування передбачуваним».

Dan Berglund, COO/CFO
Opes Corporation · Хімічне та харчове виробництво

Надійність поставок становить 100% протягом усього часу використання SkyPlanner — із 2021 року.

Читати відгук Opes Corporation

Hannu Ryynänen, генеральний директор Mamec, у виробничому цеху компанії в Лох’ї

1 000+виробничих замовлень плануються автоматично

«Ми зовсім по-іншому контролюємо виробництво, а наше розуміння потужностей вийшло на цілком інший рівень».

Hannu Ryynänen, генеральний директор
Mamec · Промислові змішувачі, насоси та високотехнологічне контрактне виробництво

Тисячі виробничих замовлень плануються автоматично, а вся організація бачить стан виробництва в реальному часі.

Читати відгук Mamec

Поширені запитання

Який API D365 SCM використовує інтеграція?

Кінцеву точку REST OData v4 за адресою /data, яка надає доступ до всіх публічних сутностей даних із повною підтримкою створення, читання, оновлення та видалення. Для початкового завантаження великих обсягів використовується API пакетного обміну даними. Бізнес-події забезпечують спрацювання тригерів майже в реальному часі, якщо такі події є у вашому каталозі.

Чи потрібно щось установлювати в Supply Chain Management?

Ні. Інтеграція використовує стандартні сутності даних через OData. Ваш адміністратор реєструє застосунок Microsoft Entra ID та зіставляє його з користувачем SCM, якому призначено потрібні ролі.

Як заплановані дати передаються зі SkyPlanner у Supply Chain Management?

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

Навіщо підключати SkyPlanner замість налаштування планування виробничих завдань у SCM?

Planning Optimization враховує обмеження потужності лише в межах заданого часового горизонту, а поза ним планує так, ніби потужність необмежена (джерело). Механізм планування виробничих завдань SCM розміщує виробничі замовлення по одному з урахуванням уже зарезервованої потужності, а час переналагодження задається на рівні технологічної операції (джерело). Microsoft також не радить застосовувати зведене планування з обмеженням потужності, коли робочі зміни впливають на доступну потужність (джерело). SkyPlanner планує всі підтверджені замовлення разом, використовуючи матрицю часу переналагодження, а Autopilot автоматично перебудовує графік за кожної суттєвої зміни. Команда SkyPlanner налаштовує та підтримує двосторонню інтеграцію, а ваш партнер Dynamics може відповідати за сторону SCM.

Чи має SkyPlanner складати графік для планових виробничих замовлень?

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

Чи працює інтеграція з локально розгорнутою Supply Chain Management?

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

Чи можна протестувати SkyPlanner до створення інтеграції?

Так. Протягом 30-денного безкоштовного пробного періоду можна використовувати до 20 робочих центрів та імпортувати дані з Supply Chain Management у форматі CSV чи Excel. Банківська картка не потрібна. Почніть пробний період або зв’яжіться з відділом продажів, щоб визначити обсяг інтеграції.