Si connette con sistemi ERP e MES come

Integrazioni / ERP / Exact

Guida all’integrazione di Exact Online con SkyPlanner APS per la schedulazione della produzione

Questa guida all’integrazione di Exact Online illustra ai partner Exact e ai team IT come collegare Exact Online Manufacturing a SkyPlanner APS. SkyPlanner si integra con Exact Online in entrambe le direzioni:

  • Ordini di produzione, fasi dei cicli di lavorazione, piani dei materiali, centri di lavoro, operazioni e distinte base vengono importati tramite la REST API di Exact Online.
  • Vengono importati articoli, giacenze, ordini di acquisto e ordini di vendita, con i webhook di Exact Online per le modifiche.
  • Le date di inizio e fine pianificate vengono riportate in ogni fase del ciclo di lavorazione e nell’ordine di produzione.
  • I tempi registrati dagli operatori vengono inviati come registrazioni orarie e le quantità completate come versamenti di produzione.
Diagramma di Gantt di SkyPlanner APS con le operazioni schedulate sui centri di lavoro e un elenco degli ordini in basso.

Durante l’avviamento, il team SkyPlanner configura l’integrazione in base alla configurazione di Exact Online e ne assicura il supporto dopo la messa in esercizio. Questa guida è rivolta ai partner e agli sviluppatori che desiderano partecipare o sviluppare autonomamente soluzioni basate sulla REST API documentata di SkyPlanner (documentazione API). In fondo è presente una breve sezione su Exact Globe+.

La REST API di Exact Online per la produzione

Exact Online espone i propri dati tramite un’unica REST API, con risorse raggruppate per servizio. Il percorso di base è /api/v1/{division}/<service>/<resource>, dove la divisione corrisponde all’azienda in Exact Online. La documentazione della REST API elenca le seguenti risorse del servizio manufacturing per la schedulazione:

RisorsaContenutoMetodi
manufacturing/ShopOrdersNumero dell’ordine di produzione, articolo, PlannedQuantity, PlannedStartDate, PlannedDate, stato, indicatore di rilascioGET, POST, PUT, DELETE
manufacturing/ShopOrderRoutingStepPlansFase del ciclo di lavorazione per ordine di produzione: operazione, Workcenter, LineNumber, PlannedStartDate, PlannedEndDate, PlannedSetupHours, PlannedRunHoursGET, POST, PUT, DELETE
manufacturing/ShopOrderMaterialPlansRighe dei materiali per ordine di produzioneGET, POST, PUT, DELETE
manufacturing/WorkcentersCodice, tipo, area produttiva, valore della capacità, tariffeGET, POST, PUT, DELETE
manufacturing/Operations, OperationResourcesOperazioni e rispettivi centri di lavoro, tempi di attrezzaggio e lavorazioneGET, POST, PUT, DELETE
manufacturing/BillOfMaterialVersions, BillOfMaterialMaterials, BillOfMaterialRoutingsVersioni della distinta base, componenti e ciclo di lavorazioneGET, POST, PUT, DELETE
manufacturing/TimeTransactionsOre registrate per ordine di produzione e fase del ciclo di lavorazioneGET, POST, PUT, DELETE
manufacturing/ShopOrderReceiptsQuantità completate versate da un ordine di produzioneGET, POST
manufacturing/MaterialIssuesMateriale prelevato per un ordine di produzioneGET, POST
manufacturing/ShopOrderPrioritiesModalità di priorità per ordine di produzioneGET, PUT

Dagli altri servizi:

RisorsaContenuto
logistics/ItemsAnagrafica articoli
inventory/ItemWarehousesGiacenze per articolo e magazzino
purchaseorder/PurchaseOrders, PurchaseOrderLinesOrdini di acquisto aperti e date di ricevimento
salesorder/SalesOrders, SalesOrderLinesDomanda dei clienti e date di consegna

Autenticazione e accesso

Exact Online utilizza OAuth 2.0 con il flusso authorization code e i refresh token. Exact: “Before you can start integration with Exact Online, you must first register your app in the App Store.” (Prima di avviare l’integrazione con Exact Online, occorre registrare l’app nell’App Store.) (Guida di Exact Online) Per registrare le app serve un abbonamento Exact Online Developer (Exact App Store).

  • L’integrazione viene registrata come app con un URI di reindirizzamento.
  • Un utente di Exact Online con accesso a produzione, magazzino e acquisti concede il consenso una sola volta.
  • Ogni richiesta invia Authorization: Bearer <access_token> e include la divisione nel percorso.
  • Gli access token vengono rinnovati tramite il refresh token. Exact limita la frequenza con cui è possibile richiedere un nuovo token: conserva quindi il token nella cache fino alla scadenza.

Exact impone anche limiti alle chiamate al minuto e al giorno per ogni app e azienda e richiede chiamate sequenziali anziché parallele. I limiti attuali sono riportati nell’articolo di Exact sui limiti API. L’integrazione è progettata per rispettarli: letture filtrate con $filter e $select e Sync API per le modifiche massive.

Sul lato SkyPlanner, la REST API si autentica tramite un token API nell’header Authorization-Token (SkyPlanner Settings > API) ed è documentata in Swagger/OpenAPI. Il tutorial di integrazione illustra passo dopo passo le prime chiamate.

Webhook e polling

Quando cambia un topic sottoscritto, i webhook di Exact Online inviano all’URL di callback una richiesta POST firmata con un hash HMAC SHA256 (webhook). I topic includono Items, StockPosition, PurchaseOrders, PurchaseOrderLines, SalesOrders e SalesOrderLines. In questo modo, le modifiche a giacenze, acquisti e domanda vengono trasmesse a SkyPlanner nel momento in cui avvengono.

Gli ordini di produzione e le fasi dei cicli di lavorazione vengono letti a intervalli programmati. Filtra ShopOrders e ShopOrderRoutingStepPlans in base a Modified e usa la Sync API per le letture massive (restrizioni API).

SkyPlanner invia i propri webhook quando cambia la schedulazione: l’aggiornamento dei dati in Exact Online è quindi attivato dagli eventi.

Mappatura dei dati

Risorsa di Exact OnlineOggetto di SkyPlannerDirezioneFrequenza
ItemsProdotti e materialiExact Online → SkyPlannerCaricamento iniziale, poi webhook
BillOfMaterialVersions, BillOfMaterialMaterialsStruttura del prodotto, sottoassiemi, materiali per prodottoExact Online → SkyPlannerA ogni modifica
Workcenters, OperationResourcesCentri di lavoro e gruppi di centri di lavoroExact Online → SkyPlannerCaricamento iniziale
Operations, BillOfMaterialRoutingsFasi di lavorazione con tempi di attrezzaggio e lavorazioneExact Online → SkyPlannerA ogni modifica
ShopOrdersOrdini con quantità e data di scadenzaExact Online → SkyPlannerOgni pochi minuti
ShopOrderRoutingStepPlansOperazioni con sequenza, centro di lavoro, ore di attrezzaggio e lavorazioneExact Online → SkyPlannerOgni pochi minuti
ShopOrderMaterialPlansMateriali per operazioneExact Online → SkyPlannerOgni pochi minuti
ItemWarehouses, StockPositionGiacenze di magazzinoExact Online → SkyPlannerWebhook
PurchaseOrderLinesOrdini di acquisto con data di consegna previstaExact Online → SkyPlannerWebhook
SalesOrderLinesDate di consegna ai clienti e prioritàExact Online → SkyPlannerWebhook
ShopOrderRoutingStepPlans: PlannedStartDate, PlannedEndDate, Workcenter (PUT)Inizio, fine e centro di lavoro pianificati per ogni operazioneSkyPlanner → Exact OnlineA ogni modifica, tramite webhook
ShopOrders: PlannedStartDate, PlannedDate (PUT)Inizio e fine dell’ordineSkyPlanner → Exact OnlineA ogni modifica, tramite webhook
TimeTransactions (POST)Registrazioni dei tempi e conferme degli operatoriSkyPlanner → Exact OnlineA ogni conferma o per turno
ShopOrderReceipts (POST)Quantità completata all’ultima operazioneSkyPlanner → Exact OnlineA ogni conferma
Non presenti in Exact OnlineMatrice dei tempi di attrezzaggio, utensili come risorse a capacità finita, operatori per operazione, centri di lavoro alternativi, turniGestiti in SkyPlannerAvviamento

Modalità di integrazione

1. Caricamento iniziale delle anagrafiche. Leggi Workcenters, Operations e OperationResources, poi gli articoli e le versioni delle distinte base con i relativi cicli di lavorazione. Un centro di lavoro con tre macchine diventa tre centri di lavoro oppure un gruppo di centri di lavoro. Turni, assenze e straordinari si configurano in SkyPlanner, perché il centro di lavoro di Exact ha un solo valore di capacità.

2. Sincronizzazione degli ordini. Leggi gli ShopOrders aperti con i relativi ShopOrderRoutingStepPlans e ShopOrderMaterialPlans, insieme alle giacenze e alle righe degli ordini di acquisto. La schedulazione verifica sia le giacenze sia gli acquisti in arrivo. L’MRP continua a generare proposte d’ordine in Exact Online, mentre SkyPlanner schedula gli ordini di produzione che crei.

3. Scrittura della schedulazione in Exact Online. Per ogni operazione del ciclo di lavorazione inserita o spostata dal motore, SkyPlanner invia una richiesta PUT a ShopOrderRoutingStepPlans con PlannedStartDate, PlannedEndDate e Workcenter. I campi PlannedStartDate e PlannedDate dell’ordine di produzione seguono rispettivamente la prima e l’ultima operazione. Quantità, piani dei materiali e calcolo dei costi restano in Exact Online.

4. Conferme dal reparto produttivo. Gli operatori registrano il lavoro con SkyPlanner Mobile Confirmations o Production Timer e le registrazioni dei tempi mantengono aggiornata la schedulazione. Le ore registrate vengono inviate come TimeTransactions, associate all’ordine di produzione e all’operazione del ciclo, distinguendo attrezzaggio e lavorazione. La conferma finale genera un record ShopOrderReceipts per la quantità completata. Se lo stabilimento registra già i tempi in Shop Floor Control, scegli un solo canale di registrazione.

5. Responsabilità sui dati e regole per i conflitti. Definiscile per iscritto prima della messa in produzione:

DatiSistema responsabile
Articoli, distinte base, quantità degli ordini di produzione, piani dei materiali, costiExact Online
Sequenza delle operazioni del ciclo, orari di inizio e fine, assegnazione al centro di lavoroSkyPlanner
Matrice dei tempi di attrezzaggio, utensili, operatori per operazione, risorse produttive alternative, turniSkyPlanner
Registrazioni dei tempi e versamenti di produzioneExact Online, alimentato da SkyPlanner

La principale fonte di conflitti è la modifica manuale delle date. Se i pianificatori continuano a cambiare le date degli ordini di produzione in Exact Online, le date vengono gestite da due sistemi. Affida a SkyPlanner la gestione delle date delle operazioni del ciclo. Con Autopilot, SkyPlanner aggiorna automaticamente la schedulazione quando la produzione cambia.

Fasi tipiche del progetto

L’implementazione viene normalmente completata entro alcune settimane dall’inizio dell’avviamento. Prima di questa fase, verifica la schedulazione durante la prova gratuita di 30 giorni, utilizzando un’esportazione CSV o Excel degli ordini di produzione aperti e delle operazioni dei cicli. Il progetto prosegue poi così:

  1. Definizione del perimetro. Conferma l’edizione, le divisioni, le frequenze di sincronizzazione, il canale di registrazione dei tempi e la modalità di registrazione dei versamenti di produzione.
  2. App e consenso. Registra l’app; poi un utente di Exact Online concede il consenso OAuth per ogni divisione.
  3. Caricamento iniziale. Centri di lavoro, operazioni, articoli, versioni delle distinte base e cicli di lavorazione.
  4. Sincronizzazione degli ordini. Ordini di produzione, piani delle operazioni del ciclo e piani dei materiali a intervalli programmati; giacenze e acquisti tramite webhook.
  5. Configurazione dei vincoli in SkyPlanner. Turni, matrice dei tempi di attrezzaggio, utensili, numero di operatori per operazione e macchine o personale alternativi.
  6. Scrittura della schedulazione in Exact Online. Invio delle date pianificate per le operazioni del ciclo, poi delle registrazioni dei tempi e dei versamenti di produzione.
  7. Test in parallelo e messa in produzione. Confronta le date con il piano attuale, correggi le anagrafiche e poi attiva la scrittura dei dati in Exact Online.

Cosa prevedere per l’integrazione con Exact Online

  • Tempi delle operazioni del ciclo. PlannedSetupHours e PlannedRunHours provengono dal ciclo di lavorazione della distinta base. Prima di procedere, confrontali con i tempi effettivi.
  • Raggruppamento dei centri di lavoro. Exact memorizza un solo valore di capacità per centro di lavoro. Decidi per ciascuno se rappresentarlo in SkyPlanner come un singolo centro di lavoro, più centri o un gruppo.
  • Calendari. Turni, festività e assenze sono gestiti in SkyPlanner. Configurali prima della prima schedulazione.
  • Limiti delle chiamate. Exact limita le chiamate per app e azienda e richiede che siano sequenziali. Usa i webhook per i topic disponibili, $filter su Modified e la Sync API per le letture massive.
  • Più divisioni. Ogni divisione di Exact Online è un’azienda con un proprio percorso e un consenso dedicato. Associa ogni stabilimento alla sua divisione.
  • Ordini di produzione rilasciati. Concorda per quali stati SkyPlanner può modificare le date: ordini aperti e rilasciati, oppure solo ordini aperti.
  • Un solo sistema responsabile delle date. Interrompi le modifiche manuali delle date in Exact Online quando la gestione delle date delle operazioni del ciclo passa a SkyPlanner.

Exact Globe+

Exact Globe+ è l’ERP di Exact venduto e implementato tramite i partner Exact Globe+. Exact dichiara che “koppelt eenvoudig en snel met andere systemen” (si collega facilmente e rapidamente ad altri sistemi) (Exact Globe+). SkyPlanner schedula gli ordini di produzione di Exact Globe+ nello stesso modo: riceve ordini di produzione, cicli di lavorazione, risorse produttive e giacenze, e restituisce date pianificate e ore registrate. Il tuo partner Exact Globe+ e il team SkyPlanner concordano l’interfaccia e gli oggetti su cui scrivere i dati durante la definizione del perimetro.

Integrazione con Exact Online: chi la configura e chi fornisce assistenza

  1. Il team SkyPlanner la configura durante l’avviamento e fornisce assistenza dopo la messa in produzione.
  2. Il tuo partner Exact può partecipare. Conosce le tue edizioni, le divisioni e la configurazione della produzione.
  3. I tuoi sviluppatori possono estendere l’integrazione utilizzando la REST API documentata di SkyPlanner. Per iniziare basta un token API e il team SkyPlanner fornisce assistenza quando serve.

Una volta attivato il collegamento, il motore Arcturus schedula gli ordini di produzione aggiornati di Exact Online e riporta le date pianificate su ogni operazione del ciclo. SkyPlanner parte da 199 € al mese con 5 centri di lavoro inclusi e fatturazione mensile. Il costo dell’integrazione viene preventivato in anticipo in base al tuo processo e alle tue esigenze, insieme al piano scelto, così conosci il costo complessivo prima di iniziare. Consulta prezzi e funzionalità; per un confronto con la pianificazione nativa di Exact Online, leggi Schedulazione della produzione a capacità finita con Exact Online. Trovi una panoramica nella pagina Exact Online e gli altri ERP nella sezione dedicata alle integrazioni ERP.

Le opinioni delle aziende manifatturiere su SkyPlanner

Menofermi per carenza di materiali

“Il valore di SkyPlanner per noi sta nell’avere uno strumento che funziona nell’uso quotidiano, soprattutto per definire le date di consegna.”

Tommi Männistö, responsabile della pianificazione della produzione
Eskomatic · Lavorazioni meccaniche conto terzi

La schedulazione automatica dei carichi consente di definire date di consegna più precise e i fermi di produzione dovuti alla carenza di materiali sono diminuiti nettamente.

Leggi la testimonianza di Eskomatic

Hannu Ryynänen, amministratore delegato di Mamec, nel reparto produttivo dell'azienda a Lohja

1.000 e piùordini di lavoro schedulati automaticamente

“Abbiamo un controllo diverso sulla produzione e la nostra comprensione della capacità è a un livello completamente diverso.”

Hannu Ryynänen, amministratore delegato
Mamec · Miscelatori industriali, pompe e produzione conto terzi ad alta tecnologia

Migliaia di ordini di lavoro vengono schedulati automaticamente, con una visione della produzione in tempo reale per tutta l’organizzazione.

Leggi la testimonianza di Mamec

Domande frequenti

L’API di Exact Online include gli ordini di produzione e le operazioni dei cicli di lavorazione?

Sì. Il servizio di produzione mette a disposizione ShopOrders, ShopOrderRoutingStepPlans, ShopOrderMaterialPlans, Workcenters, Operations e le risorse BOM, tutti accessibili in lettura e scrittura. I tempi vengono registrati tramite TimeTransactions e le quantità completate tramite ShopOrderReceipts.

Come vengono riportate in Exact Online le date pianificate?

Per ogni operazione che inserisce o sposta, SkyPlanner invia una richiesta PUT a ShopOrderRoutingStepPlans con PlannedStartDate, PlannedEndDate e Workcenter. I campi PlannedStartDate e PlannedDate dell’ordine di produzione vengono aggiornati di conseguenza.

Chi realizza l’integrazione con Exact Online?

Durante l’avviamento, il team SkyPlanner configura l’integrazione bidirezionale in base alla vostra configurazione di Exact Online e fornisce assistenza anche dopo la messa in esercizio. Il vostro partner Exact può partecipare. Anche i vostri sviluppatori possono realizzare l’integrazione utilizzando la REST API documentata di SkyPlanner: per iniziare basta un token API.

Exact Online può inviare le modifiche in tempo reale?

I webhook di Exact Online inviano le modifiche ad articoli, giacenze, ordini di acquisto e ordini di vendita. Gli ordini di produzione e le operazioni del ciclo di lavorazione vengono letti a intervalli brevi tramite richieste filtrate. Nella direzione opposta, i webhook di SkyPlanner inviano le modifiche alla schedulazione non appena avvengono.

Possiamo provare SkyPlanner prima di realizzare l’integrazione?

Sì. La prova gratuita di 30 giorni supporta fino a 20 centri di lavoro e consente di importare i vostri ordini di produzione da file CSV o Excel, senza carta di credito. Avviate la prova oppure contattate il team commerciale per definire il perimetro dell’integrazione.