Інтеграції / ERP / SAP Business ByDesign
Посібник з інтеграції SAP Business ByDesign для календарного планування виробництва у SkyPlanner APS
Цей посібник з інтеграції SAP Business ByDesign пояснює партнерам та ІТ-командам, як підключити ByDesign до SkyPlanner APS. SkyPlanner обмінюється даними з ByDesign в обох напрямках через офіційно випущені вебсервіси SAP:
- До SkyPlanner надходять випущені виробничі замовлення з технологічними операціями, Production Models, Bills of Material і Bills of Operations, обладнання та трудові ресурси, матеріали, запаси й замовлення на закупівлю.
- До ByDesign повертаються запланований початок кожного виробничого замовлення та основний виробничий ресурс кожної технологічної операції.
- Підтверджені кількості, брак і завершені завдання можуть передаватися назад до виробничих партій.
- Вебхуки SkyPlanner передають зміни графіка одразу, щойно вони відбуваються.
Під час впровадження команда SkyPlanner налаштовує інтеграцію з вашим середовищем ByDesign через REST API та підтримує її після запуску в експлуатацію. Цей посібник призначений для партнерів і розробників, які хочуть долучитися до роботи або самостійно створювати рішення на основі документованого REST API SkyPlanner (довідник API).
Інтерфейси інтеграції SAP ByDesign
Для кожного релізу ByDesign публікує доступні вебсервіси A2X SOAP у переліку API вебсервісів. Для інтеграції календарного планування використовуються такі сервіси:
- Manage Production Orders (ManageProductionOrderIn). READ_PROD_ORDER повертає запитані, найраніші та найпізніші терміни початку й завершення, виробничі ресурси із запланованою та фактичною тривалістю роботи, пріоритет, статус виконання і статус планування. MAINTAIN_BUNDLE_V2 оновлює EarliestStartPeriod або LatestEndPeriod, а також MainResourceID технологічної операції (довідка SAP).
- Manage Production Lots (ManageProductionLotsIn). MaintainBundle створює або оновлює виробничі завдання: записує підтверджену кількість, брак та ознаку завершення підтвердження для кожної точки звітування, завершує завдання із зазначенням працівника-виконавця й часу виконання, а також записує використання виробничих ресурсів (довідка SAP).
- Сервіси запитів. Query Production Orders, Query Production Lots, Query Production Model, Query Production Bill of Materials, Query Production Bill of Operations (також за виробничим ресурсом), Query Materials, Read Equipment Resources, Query Labour Resource, Query Purchase Orders, Query Identified Stocks і Determine Availability of Products.
- OData. Власні сервіси OData для бізнес-об’єктів, а також OData для джерел даних і аналітичних звітів. Щодо вибору бізнес-об’єктів, які відкриваються для доступу, SAP зазначає: “companies are fully empowered to decide which business objects” (компанії мають повне право вирішувати, які саме бізнес-об’єкти) (сценарії інтеграції SAP).
Для читання використовуйте сервіси Query або OData, а для всіх операцій запису — два сервіси Manage.
Автентифікація та ліцензування
На стороні ByDesign створіть комунікаційну систему для SkyPlanner і комунікаційну угоду для потрібних сервісів. Кожна угода має власного технічного користувача. У посібнику SAP з безпеки для автентифікації інтеграції застосунків зазначено “user ID plus password, and the X.509 client certificate” (ідентифікатор користувача з паролем і клієнтський сертифікат) (посібник з безпеки). Для OData можна налаштувати OAuth 2.0. WSDL кожного сервісу можна завантажити з комунікаційної угоди або з Service Explorer.
На стороні SkyPlanner кожен виклик містить токен API в заголовку Authorization-Token. Токен створюється у SkyPlanner у розділі Settings > API. Щоб почати розробку, достатньо токена API.
Події та опитування
SkyPlanner надсилає вебхуки за кожної зміни розкладу, тому зміни плану одразу передаються назад до ByDesign.
Щоб відстежувати зміни в ByDesign, періодично опитуйте сервіси Query. Зчитуйте випущені виробничі замовлення та виробничі партії кожні кілька хвилин, а матеріали, запаси й замовлення на закупівлю — рідше. Результати запитів розбиваються на сторінки за допомогою QueryHitsMaximumNumberValue і LastReturnedObjectID; розмір сторінки за замовчуванням SAP описує на сторінці вебсервісів.
Зіставлення даних
| Об’єкт ByDesign (інтерфейс) | Об’єкт SkyPlanner | Напрямок | Частота |
|---|---|---|---|
| Матеріали (Query Materials) | Продукція та матеріали | ByDesign → SkyPlanner | Початкове завантаження, потім періодичне опитування |
| Production Bill of Material (Query Production Bill of Materials) | Структура виробу, матеріали для кожного виробу | ByDesign → SkyPlanner | Початкове завантаження, далі — у разі змін |
| Production Bill of Operations: технологічні операції, дії Setup, Produce і Tear down (Query Production Bill of Operations) | Етапи технологічного процесу з тривалістю виконання, часом підготовки та завершальних робіт | ByDesign → SkyPlanner | Початкове завантаження, потім у разі змін |
| Production Model (Query Production Model) | Технологічний маршрут виробу для кожного виробничого майданчика | ByDesign → SkyPlanner | Початкове завантаження, потім у разі змін |
| Обладнання та групи виробничих ресурсів (Read Equipment Resources) | Робочі центри, групи робочих центрів, інструменти | ByDesign → SkyPlanner | Початкове завантаження, надалі — зрідка |
| Трудові ресурси, робочий час (Query Labour Resource) | Персонал і зміни | ByDesign → SkyPlanner | Щодня; або ведіть власний графік змін у SkyPlanner |
| Випущені виробничі замовлення та технологічні операції (Query Production Orders, READ_PROD_ORDER) | Замовлення та виробничі завдання з термінами виконання й потребами в матеріалах | ByDesign → SkyPlanner | Опитування кожні кілька хвилин |
| Виробничі партії та завдання (Query Production Lots) | Хід виконання виробничих завдань | ByDesign → SkyPlanner | Опитування кожні кілька хвилин |
| Ідентифіковані запаси, доступність продукції (Query Identified Stocks, Determine Availability of Products) | Складські залишки | ByDesign → SkyPlanner | Опитування щогодини або під час запуску планування |
| Замовлення на закупівлю (Query Purchase Orders) | Замовлення на закупівлю, очікувані надходження матеріалів за датами поставки | ByDesign → SkyPlanner | Опитування щогодини або під час запуску планування |
| EarliestStartPeriod, MainResourceID технологічної операції (Manage Production Orders, MAINTAIN_BUNDLE_V2) | Запланований початок, призначений робочий центр | SkyPlanner → ByDesign | У разі зміни розкладу, через вебхук SkyPlanner |
| Підтверджена кількість, брак, завершення завдання (Manage Production Lots, MaintainBundle) | Записи обліку часу та підтвердження операторів | SkyPlanner → ByDesign | Після кожного підтвердження або за кожну зміну, якщо цей обмін увімкнено |
| Відсутнє в ByDesign | Матриця часу підготовки, потреба в кількох операторах, альтернативні верстати та персонал | Ведеться у SkyPlanner | Налаштовується під час впровадження |
Сценарії інтеграції
1. Початкове завантаження основних даних. Зчитайте матеріали, Production Models, Bills of Material і Bills of Operations, обладнання та трудові ресурси. Ретельно зіставте виробничі ресурси: група з чотирьох верстатів перетворюється на одну групу робочих центрів або чотири робочі центри. Обладнання, що є інструментами, у SkyPlanner стає інструментами з обмеженою доступністю.
2. Синхронізація виробничих замовлень. Зчитайте випущені виробничі замовлення з технологічними операціями й матеріалами, а також відкриті замовлення на закупівлю. SkyPlanner вважає замовлений матеріал доступним на дату поставки, зазначену в замовленні на закупівлю, та оновлює запаси, коли це замовлення отримує статус Delivered. Виробничі пропозиції залишаються в ByDesign Supply Planning, доки не стануть виробничими замовленнями.
3. Зворотний запис розкладу. Коли алгоритм розміщує або переносить замовлення, вебхук SkyPlanner викликає MAINTAIN_BUNDLE_V2 у Manage Production Orders. Цей виклик задає EarliestStartPeriod і MainResourceID технологічної операції, яку вибрав SkyPlanner.
4. Підтвердження з цеху. Оператори реєструють роботу через SkyPlanner Mobile Confirmations або Production Timer, а записи обліку часу підтримують актуальність розкладу. Ви самі вирішуєте, чи передавати фактичні дані назад. Якщо так, MaintainBundle у Manage Production Lots записує підтверджену кількість, брак і завершене завдання із зазначенням працівника-виконавця. Якщо ні, підтвердження, як і раніше, вводяться в ByDesign.
5. Правила відповідальності за дані та розв’язання конфліктів. Зафіксуйте їх до запуску в експлуатацію:
| Дані | Відповідальна система |
|---|---|
| Матеріали, Production Models, кількості, статуси замовлень і партій | ByDesign |
| Послідовність технологічних операцій, час початку й завершення, призначення виробничих ресурсів | SkyPlanner |
| Матриця часу підготовки, вимоги до інструментів та операторів, альтернативні виробничі ресурси | SkyPlanner |
| Зміни та неробочі дні | Одна система, вибрана під час визначення обсягу |
| Підтвердження, рух товарів, калькуляція собівартості | ByDesign: дані вводяться безпосередньо або передаються із записів обліку часу SkyPlanner |
Визначте одну систему, яка записуватиме дати замовлень. Не запускайте Load Leveling для виробничих ресурсів, які планує SkyPlanner, і перевірте, що запуск планування не переносить випущені замовлення, якими керує SkyPlanner.
Типові етапи проєкту
Впровадження зазвичай завершується протягом кількох тижнів після початку підключення. До цього перевірте розклад у межах 30-денного безкоштовного пробного періоду, використовуючи виробничі ресурси, Bills of Operations і відкриті виробничі замовлення, експортовані з ByDesign у форматі CSV або Excel.
- Зіставлення даних. Зафіксуйте таблицю зіставлення, правила відповідальності за дані, частоту синхронізації та рішення щодо зворотного передавання підтверджень.
- Доступ до ByDesign. Створіть комунікаційну систему та комунікаційні угоди й завантажте WSDL. Спочатку перевірте роботу у своєму тестовому середовищі ByDesign.
- Початкове завантаження. Матеріали, Production Models, Bills of Material і Bills of Operations, виробничі ресурси, робочий час.
- Синхронізація виробничих замовлень і замовлень на закупівлю. Періодичне опитування з розбиттям на сторінки, фільтрами та повторними спробами.
- Налаштування обмежень у SkyPlanner. Матриця часу підготовки, інструменти, кількість операторів на виробниче завдання та альтернативні верстати або працівники.
- Зворотний запис розкладу. Виклики MAINTAIN_BUNDLE_V2 через вебхуки SkyPlanner, а також підтвердження виробничих партій, якщо цей обмін увімкнено.
- Паралельне тестування. Використовуйте SkyPlanner паралельно з поточним планом, порівнюйте дати та виправляйте основні дані.
- Запуск у роботу. Увімкніть зворотний запис, коли дані збігатимуться.
Що врахувати під час інтеграції із SAP ByDesign
- Одна дата за виклик. “The EarliestStartPeriod and the LatestEndPeriod cannot be updated together.” (EarliestStartPeriod і LatestEndPeriod не можна оновлювати одночасно.) Для зворотного запису використовуйте дату початку як опорну.
- Без блокування. Сервіси A2X не зберігають стан, тому, за інформацією SAP, забезпечити транзакційне або логічне блокування неможливо. Перед кожним записом повторно зчитуйте замовлення й обробляйте конфлікти.
- Завершення незворотне. “Confirmation Finished Indicator cannot be unchecked once it is set.” (Після встановлення прапорця Confirmation Finished Indicator зняти його неможливо.) Записуйте завершення лише тоді, коли оператор закриває завдання.
- Основні та додаткові виробничі ресурси. Під час календарного планування ByDesign враховує основні виробничі ресурси. Операторів та інструменти, що належать до додаткових ресурсів, змоделюйте у SkyPlanner як ресурси з обмеженою доступністю, щоб вона враховувалася в розкладі.
- Підготовчі та завершальні роботи. У Bills of Operations підготовчі та завершальні роботи зберігаються як окремі дії. Перенесіть час переналагодження, що залежить від послідовності робіт, до матриці часу підготовки.
Хто налаштовує та підтримує інтеграцію із SAP ByDesign
- Команда SkyPlanner налаштовує інтеграцію під час впровадження та підтримує її після запуску в межах узгоджених вебсервісів і запитів OData. Кожна компанія використовує ByDesign по-своєму, і саме під час налаштування враховуються ці особливості.
- Ваш партнер із SAP ByDesign може долучитися. Партнер знає ваш тенант, обсяг проєкту та розширення й може разом із командою SkyPlanner налаштувати communication arrangements.
- Ваші розробники можуть розвивати інтеграцію через REST API SkyPlanner, використовуючи токен API в заголовку
Authorization-Token. За потреби команда SkyPlanner допоможе. Документація доступна в розділі документації з інтеграції SkyPlanner.
Вартість SkyPlanner — від 199 € на місяць із щомісячною оплатою; у ціну входять 5 робочих центрів. Вартість інтеграції розраховується заздалегідь разом із вашим тарифним планом, з урахуванням ваших процесів і потреб. Перегляньте ціни, планування виробництва із SAP ByDesign з урахуванням реальних потужностей обладнання та доступності персоналу, сторінку SAP Business ByDesign і розділ інтеграцій з ERP. Для інших систем SAP є окремі посібники: SAP Business One та SAP S/4HANA.
Відгуки виробників про SkyPlanner
2 годекономії щотижня
«Завдяки SkyPlanner ми перейшли від планування виробництва в таблицях Excel до оптимізації виробництва в реальному часі».
Kalle Kalliomäki, фахівець із ланцюга постачання
UTU · Електрощити та розподільні пристрої
Планування виробництва заощаджує 2 години робочого часу щотижня, а нова черга завдань надходить на лінію за лічені секунди.
+90%до ефективності виробництва
«Ефективність виробництва зросла на 90%».
Abdul Rucyinga, керівник ІТ-відділу
Laboratory & Allied · Фармацевтичне виробництво
Ефективність виробництва зросла на 90%, а створення оптимізованого плану на три місяці для всіх робочих центрів займає менше ніж 30 хвилин.
100%надійність поставок із 2021 року
«SkyPlanner дає нам змогу бачити виробничі потужності та робить планування передбачуваним».
Dan Berglund, COO/CFO
Opes Corporation · Хімічне та харчове виробництво
Надійність поставок становить 100% протягом усього часу використання SkyPlanner — із 2021 року.
Меншезупинок через нестачу матеріалів
«Цінність SkyPlanner для нас у тому, що це інструмент, який працює в щоденній роботі, особливо під час визначення дат поставок».
Tommi Männistö, керівник відділу планування виробництва
Eskomatic · Механічна обробка на замовлення
Автоматичне планування завантаження дає змогу точніше визначати дати поставок, а кількість зупинок виробництва через нестачу матеріалів різко скоротилася.
Поширені запитання
Які API SAP ByDesign використовує SkyPlanner?
Офіційно випущені вебсервіси A2X від SAP. Для читання використовуються сервіси Query, зокрема Query Production Orders і Query Purchase Orders, або спеціально налаштований OData. Для запису — Manage Production Orders і Manage Production Lots.
Які дані SkyPlanner передає для запису в ByDesign?
EarliestStartPeriod і MainResourceID технологічної операції в кожному виробничому замовленні. За вашим вибором у виробничу партію також записуються підтверджені кількості, брак і завершені завдання.
Чи надсилає ByDesign події до SkyPlanner?
SkyPlanner кожні кілька хвилин опитує сервіси Query у ByDesign, щоб отримати дані про замовлення та партії. Сам SkyPlanner надсилає вебхуки після кожної зміни розкладу — вони запускають зворотний запис.
Як SkyPlanner проходить автентифікацію в ByDesign?
Через communication system і communication arrangement із технічним користувачем, як описано в посібнику SAP із безпеки. Власний API SkyPlanner використовує токен API в заголовку Authorization-Token.
Чи передаються виробничі пропозиції до SkyPlanner?
SkyPlanner складає розклад для випущених виробничих замовлень. Пропозиції залишаються в ByDesign Supply Planning, доки не стануть виробничими замовленнями.
Хто створює інтеграцію?
Команда SkyPlanner налаштовує її під час впровадження та підтримує після запуску. Ваш партнер із SAP ByDesign або ваші розробники також можуть розвивати інтеграцію через REST API SkyPlanner, використовуючи токен API.