Intégrations / ERP / JobBOSS²
Guide d’intégration de JobBOSS² pour l’ordonnancement de la production avec SkyPlanner APS
Ce guide d’intégration de JobBOSS² explique aux partenaires et aux équipes informatiques comment connecter JobBOSS² d’ECI à SkyPlanner APS. SkyPlanner échange des données dans les deux sens avec JobBOSS², au moyen des API d’ECI :
- SkyPlanner importe les objets Orders et Order Line Items, Order Routings, Estimates, Routings et les matières, Work Centers, Employees, Company Calendar, Job Requirements ainsi que les lignes de commandes fournisseurs.
- Les dates de début et de fin planifiées sont renvoyées vers chaque étape Order Routing.
- Si vous le souhaitez, les relevés de temps des opérateurs peuvent être renvoyés sous forme de Time Ticket Details.
- Les webhooks SkyPlanner transmettent les modifications du planning dès qu’elles surviennent.
L’équipe SkyPlanner configure l’intégration selon votre environnement JobBOSS² pendant la mise en route et en assure le support après la mise en production. Ce guide s’adresse aux partenaires et aux développeurs qui souhaitent participer au projet ou développer eux-mêmes une solution à partir de la REST API documentée de SkyPlanner (référence de l’API). Un atelier de sous-traitance américain l’a déjà fait :
Les interfaces d’intégration de JobBOSS²
ECI publie ses API pour l’industrie, avec leurs spécifications OpenAPI, sur le site de documentation des API de production d’ECI. Deux sont utiles pour l’ordonnancement :
- JobBOSS² API (v1). Une API REST au format JSON, propre à JobBOSS². Elle permet de lire et d’écrire les commandes, Order Line Items, Order Routings, Estimates, Routings, les matières, Job Requirements, Work Centers, Company Calendar, Employees, les commandes fournisseurs, Time Tickets et Time Ticket Details. ECI précise qu’elle « is currently only supported for JobBOSS² hosted (Cloud) customers. » (n’est actuellement prise en charge que pour les clients JobBOSS² hébergés dans le cloud).
- ECI ERP API (v2.1). Une REST API commune à Deacom, M1 et JobBOSS². Pour JobBOSS², elle couvre les ordres de fabrication, leurs opérations et leurs matières, les articles et leurs opérations, les postes de charge, les lignes de commandes fournisseurs et les lignes de relevés de temps. ECI indique que « the actual ERP database could be a cloud hosted ERP or on premises install, » (la base de données ERP peut être hébergée dans le cloud ou installée sur site). C’est donc l’interface à utiliser pour JobBOSS² sur site.
Les deux API suivent les mêmes conventions : des expressions de filtrage telles que lastModDate[gte]=, un paramètre fields=, sort= et une pagination avec take et skip. La valeur par défaut de take est 200. « All dates submitted to the API are assumed to be in UTC. » (Toutes les dates transmises à l’API sont considérées comme étant en UTC.)
La règle d’ECI s’applique aux deux API : « All APIs must be activated by ECI before use. » (Toutes les API doivent être activées par ECI avant utilisation.) Contactez votre responsable de compte ECI dès le début du projet.
Authentification et accès
- Utilisateurs API. L’intégration utilise un utilisateur API créé dans l’Integration Engine Management Console d’ECI. Cet utilisateur détermine le produit, le client et la base de données auxquels les appels accèdent.
- Identifiants client OAuth 2.0. L’identifiant et le secret du client permettent d’obtenir un jeton auprès du point de terminaison de jetons de l’Authentication API. Chaque appel transmet ensuite
Authorization: Bearer [token]. - Périmètre des accès. Accordez à l’utilisateur API l’accès aux seules ressources nécessaires au tableau de correspondance ci-dessous.
Côté SkyPlanner, la REST API utilise un jeton API pour l’authentification (SkyPlanner Settings > API). Elle est documentée dans Swagger/OpenAPI. Le tutoriel d’intégration vous guide pour les premiers appels.
Événements et interrogation périodique
Aucune des deux API d’ECI ne documente de webhooks. Les données de JobBOSS² sont récupérées par interrogation périodique : filtrez les objets Order Line Items, Order Routings et les lignes de commandes fournisseurs sur lastModDate depuis la dernière exécution, puis paginez avec take et skip. La fréquence est définie pour chaque atelier : toutes les quelques minutes pour les ordres de fabrication, toutes les heures pour les stocks.
SkyPlanner envoie des webhooks lors d’un changement d’état ou d’une modification du planning. Le renvoi des données est donc déclenché par les événements.
Correspondance des données
| Objet JobBOSS² (ressource de JobBOSS² API) | Objet SkyPlanner | Sens | Fréquence |
|---|---|---|---|
Estimates (/estimates), matières (/materials) | Produits, matières, structure produit | JobBOSS² → SkyPlanner | Chargement initial, puis à chaque modification |
Routings (/routings) : poste de charge, temps de réglage, temps de cycle, effectif de l’équipe, machines affectées à l’opération | Étapes de fabrication avec durées et temps de réglage | JobBOSS² → SkyPlanner | Chargement initial, puis à chaque modification |
Work Centers (/work-centers) : heures par équipe, fonctionnement sur les équipes 1 à 3, jours travaillés | Postes de travail, groupes de postes de travail, rendements | JobBOSS² → SkyPlanner | Chargement initial, rarement ensuite |
Company Calendar (/company-calendars), Employees (/employees) | Horaires d’équipe, jours non travaillés, personnel | JobBOSS² → SkyPlanner | Chaque jour, ou gestion des horaires d’équipe dans SkyPlanner |
Orders et Order Line Items (/order-line-items) : numéro d’ordre de fabrication, date d’échéance, priorité, quantité à fabriquer | Commandes avec échéances et priorités | JobBOSS² → SkyPlanner | Interrogation toutes les quelques minutes |
Order Routings (/order-routings) : étapes de fabrication, statut, heures restantes | Opérations par étape de fabrication | JobBOSS² → SkyPlanner | Interrogation toutes les quelques minutes |
Job Requirements (/job-requirements), lignes de commandes fournisseurs (/purchase-order-line-items) | Besoins en matières, commandes fournisseurs par date de livraison | JobBOSS² → SkyPlanner | Interrogation toutes les heures ou à chaque calcul du planning |
Champs d’Order Routing : estimatedStartDate, estimatedEndDate, workCenter, employeeCode (PATCH) | Début et fin planifiés, machine et opérateur par étape | SkyPlanner → JobBOSS² | À chaque modification du planning, via un webhook SkyPlanner |
| Time Ticket Details (POST) : ordre de fabrication, étape, poste de charge, employé, temps de réglage, temps de cycle, pièces terminées et rebutées, heures de début et de fin | Relevés de temps et déclarations des opérateurs | SkyPlanner → JobBOSS² | À chaque déclaration ou par équipe, si cette option est retenue |
| Absent de JobBOSS² | Matrice des temps de changement, outils à capacité limitée, machines et personnel de remplacement | Gérés dans SkyPlanner | Configurés pendant la mise en route |
Pour JobBOSS² sur site, ces mêmes objets sont lus via les ressources de l’ERP API /jobs, /job-operations, /job-materials, /parts, /part-operations, /work-centers et /purchase-order-lines. Les relevés de temps sont envoyés à /timecard-lines.
Schémas d’intégration
1. Chargement initial des données de base. Lisez les objets Estimates, Routings, les matières, Work Centers, Company Calendar et Employees. Définissez soigneusement la correspondance des postes de charge : un poste de charge comprenant quatre tours devient un groupe de postes de travail ou quatre postes de travail, pour que SkyPlanner ordonnance le travail sur chaque machine.
2. Synchronisation des ordres de fabrication. Lisez les Order Line Items ouverts avec leurs Order Routings, Job Requirements et lignes de commandes fournisseurs ouvertes. SkyPlanner considère les matières commandées comme disponibles à la date de livraison de la commande fournisseur et met le stock à jour lorsque celle-ci passe au statut Delivered. Excluez les ordres de fabrication suspendus et clôturés.
3. Renvoi du planning. Lorsque le moteur positionne ou déplace une étape, un webhook SkyPlanner déclenche une requête PATCH vers /api/v1/orders/{orderNumber}/order-line-items/{itemNumber}/order-routings/{stepNumber}. Cette requête renseigne estimatedStartDate et estimatedEndDate en UTC, ainsi que workCenter et employeeCode si SkyPlanner a réaffecté l’étape à une autre machine ou à une autre personne. Les dates sont inscrites sur les étapes de fabrication déjà affichées dans Whiteboard, Planning Board et Scheduling Advisor.
4. Déclarations en atelier. Les opérateurs enregistrent leur travail avec SkyPlanner Mobile Confirmations ou Production Timer, et les relevés de temps maintiennent le planning à jour. Vous choisissez si les temps réels sont renvoyés vers JobBOSS². Si oui, chaque déclaration devient un Time Ticket Detail avec le temps de réglage, le temps de cycle et les quantités de pièces. Sinon, la collecte des données reste dans JobBOSS² et SkyPlanner lit l’avancement dans Order Routings.
5. Systèmes de référence et règles de gestion des conflits. Consignez ces règles avant la mise en production :
| Données | Système de référence |
|---|---|
| Estimates, Routings, quantités, échéances, statut des ordres de fabrication | JobBOSS² |
| Enchaînement des étapes, heures de début et de fin, machine et opérateur par étape | SkyPlanner |
| Matrice des temps de changement, besoins en outils et en opérateurs, ressources de remplacement | SkyPlanner |
| Horaires d’équipe et jours non travaillés | Un seul système, choisi lors du cadrage |
| Relevés de temps, sorties de matières, réceptions, calcul des coûts | JobBOSS², avec saisie directe ou transfert depuis les relevés de temps SkyPlanner |
Désignez un seul système pour écrire les dates des étapes de fabrication. Pour les ordres de fabrication qu’il ordonnance, SkyPlanner remplace la replanification dans Whiteboard : les responsables de l’ordonnancement déplacent donc les opérations dans SkyPlanner, puis les dates sont transmises à JobBOSS².
Étapes types du projet
La mise en œuvre est normalement achevée en quelques semaines après le début de l’accompagnement. Au préalable, validez le planning pendant l’essai gratuit de 30 jours, avec les Work Centers, les gammes de fabrication et les ordres de fabrication ouverts exportés de JobBOSS² au format CSV ou Excel.
- Correspondance des données. Définissez la table de correspondance, les règles de propriété des données, les fréquences de synchronisation et le renvoi éventuel des relevés de temps.
- Accès ECI. Demandez à ECI d’activer JobBOSS² API ou ERP API et de créer l’utilisateur API. Effectuez les tests sur une société de test si vous en avez une.
- Chargement initial. Estimates, Routings, Work Centers, calendrier et employés.
- Synchronisation des ordres de fabrication et des commandes fournisseurs. Interrogation périodique avec filtres
lastModDate, pagination et nouvelles tentatives en cas d’échec. - Paramétrage des contraintes dans SkyPlanner. Matrice des temps de changement, outils, nombre d’opérateurs par opération et machines ou personnel de remplacement.
- Renvoi du planning. Appels PATCH sur Order Routing déclenchés par les webhooks de SkyPlanner, avec envoi des Time Ticket Details si cette option est retenue.
- Tests en parallèle. Utilisez SkyPlanner en parallèle du tableau de planification actuel, comparez les dates et corrigez les données de base.
- Mise en production. Activez le renvoi des données une fois leur concordance vérifiée.
Les points à prévoir pour une intégration JobBOSS²
- Hébergement ou installation sur site. JobBOSS² API s’adresse aux clients hébergés. Les installations sur site utilisent ERP API, dont la liste des ressources diffère. Choisissez la voie à suivre à l’étape 1.
- Tout en UTC. L’API lit et écrit les heures en UTC. Convertissez-les à l’heure locale de l’usine, sinon un début prévu à 7:00 sera décalé.
- Les machines derrière les postes de charge. Un poste de charge peut représenter une machine, un groupe de machines, une cellule ou des personnes. Le nombre de machines et la taille de l’équipe renseignés à chaque étape de la gamme indiquent à SkyPlanner combien de ressources sont nécessaires.
- Sous-traitance. Les étapes affectées à un fournisseur plutôt qu’à un poste de charge représentent un délai, et non une charge sur votre capacité. Modélisez-les comme des étapes définies uniquement par leur durée.
- Chevauchement et étapes sans surveillance. Des indicateurs permettent de préciser si les étapes d’une gamme peuvent se chevaucher ou s’exécuter sans surveillance. Transférez ces deux indicateurs pour planifier correctement le travail sans présence humaine.
- Unités de temps. Les temps de réglage et de cycle ont chacun leurs unités. Le temps d’attente, lui, n’est pas du temps machine. Convertissez les unités à l’importation, sinon toutes les durées seront fausses.
- Pagination. Par défaut, les pages contiennent 200 enregistrements. Gérez la pagination à chaque lecture.
Qui configure et assure le support de l’intégration JobBOSS² ?
- L’équipe SkyPlanner configure l’intégration pendant la mise en place et assure son support après la mise en production, pour les ressources et selon les règles d’interrogation convenues. Chaque atelier utilise JobBOSS² à sa manière : ce savoir-faire est pris en compte à cette étape.
- Votre partenaire JobBOSS² peut participer. Il connaît votre configuration et peut organiser avec ECI l’activation de l’API et la création de l’utilisateur API, aux côtés de l’équipe SkyPlanner.
- Vos propres développeurs peuvent compléter l’intégration en utilisant la REST API de SkyPlanner avec un jeton API. Ce jeton suffit pour démarrer, et l’équipe SkyPlanner vous aide si nécessaire. Consultez la documentation d’intégration SkyPlanner.
SkyPlanner est proposé à partir de 199 € par mois, avec 5 postes de travail inclus et une facturation mensuelle. L’intégration fait l’objet d’un devis préalable adapté à vos processus et à vos besoins, en complément de votre abonnement. Consultez les tarifs, la page sur l’ordonnancement de production avec JobBOSS², la page JobBOSS², les fonctionnalités de SkyPlanner et les intégrations ERP.
Des industriels qui utilisent SkyPlanner
2 hgagnées chaque semaine
« SkyPlanner nous a fait passer d’une planification de la production sur des feuilles Excel à une optimisation de la production en temps réel. »
Kalle Kalliomäki, spécialiste de la chaîne logistique
UTU · Tableaux et appareillage électriques
La planification de la production fait gagner 2 heures de travail par semaine, et une nouvelle file d’opérations parvient à la ligne en quelques secondes.
+90 %d’efficacité en production
« L’efficacité en production a augmenté de 90 %. »
Abdul Rucyinga, responsable informatique
Laboratory & Allied · Fabrication pharmaceutique
L’efficacité en production a augmenté de 90 %, et l’établissement d’un planning optimisé sur trois mois pour l’ensemble des postes de travail prend moins de 30 minutes.
1 000 et plusordres de fabrication ordonnancés automatiquement
« Nous maîtrisons la production d’une tout autre manière, et nous comprenons bien mieux notre capacité. »
Hannu Ryynänen, directeur général
Mamec · Mélangeurs industriels, pompes et sous-traitance de haute technologie
Des milliers d’ordres de fabrication sont ordonnancés automatiquement, et toute l’entreprise dispose d’une vue en temps réel de la production.
98 %de livraisons dans les délais, contre environ 50 % auparavant
« SkyPlanner joue un rôle décisif pour nous permettre de continuer à respecter nos délais de livraison. »
Hannu Lahtinen, directeur général
KJH-Comp · Tôlerie et sous-traitance industrielle
Le taux de respect des délais de livraison est passé d’environ 50 % à 98 % au plus haut, et l’ordonnancement ne mobilise désormais qu’un seul responsable au lieu de deux.
FAQ
JobBOSS² dispose-t-il d’une API ?
Oui. ECI publie JobBOSS² API et ERP API, cette dernière étant indépendante du produit utilisé. Toutes deux sont des API REST avec des spécifications OpenAPI. Pour les clients hébergés, JobBOSS² API permet de lire et d’écrire les commandes, Order Routings, Estimates, Work Centers, commandes d’achat et Time Tickets.
Comment l’intégration s’authentifie-t-elle auprès de JobBOSS² ?
Avec le flux client credentials d’OAuth 2.0. ECI active l’API, un utilisateur API est créé depuis la console Integration Engine Management Console et chaque appel transmet un jeton Bearer.
JobBOSS² prend-il en charge les webhooks ?
La documentation des API d’ECI ne mentionne aucun webhook. L’intégration interroge donc périodiquement JobBOSS² avec des filtres lastModDate, à une fréquence définie pour chaque atelier. Les webhooks de SkyPlanner transmettent les modifications du planning dès qu’elles se produisent.
Comment les dates planifiées sont-elles renvoyées dans JobBOSS² ?
Étape par étape. SkyPlanner met à jour chaque Order Routing par un appel PATCH avec estimatedStartDate et estimatedEndDate, ainsi que workCenter et employeeCode lorsque l’étape a été réaffectée à une autre machine ou à un autre opérateur.
Un partenaire JobBOSS² doit-il proposer ECI APS ou SkyPlanner ?
SkyPlanner, si le client souhaite mettre en service en quelques semaines un ordonnancement à capacité finie intégrant plusieurs ressources. ECI APS est un module complémentaire distinct reposant sur LYNQ. SkyPlanner se connecte via JobBOSS² API d’ECI, planifie les changements de série, les équipes, les montages et les matières, et recalcule automatiquement le planning. Il est proposé à partir de 199 € par mois.
Peut-on tester SkyPlanner avant de développer l’intégration ?
Oui. L’essai gratuit de 30 jours permet d’utiliser jusqu’à 20 postes de travail avec des imports CSV ou Excel depuis JobBOSS², sans carte bancaire. Démarrez l’essai ou contactez l’équipe commerciale pour cadrer l’intégration.