Integrazioni / ERP / Sage 200
Guida all’integrazione di Sage 200 con SkyPlanner APS per la schedulazione della produzione
Questa guida all’integrazione di Sage 200 spiega ai partner commerciali e ai team IT come collegare Sage 200 Professional e il relativo componente aggiuntivo per la produzione a SkyPlanner APS. L’integrazione tra SkyPlanner e Sage 200 è bidirezionale:
- Prodotti, giacenze di magazzino, ordini di acquisto e ordini di vendita vengono importati tramite la Sage 200 REST API.
- Ordini di produzione, operazioni, manodopera e macchine vengono importati dal componente aggiuntivo per la produzione.
- Le date pianificate per le operazioni vengono riportate negli ordini di produzione.
- Le registrazioni dei tempi degli operatori vengono reinviate per imputare i tempi a ciascuna operazione.
Durante l’avviamento, il team SkyPlanner configura l’integrazione in base al vostro ambiente Sage 200 e fornisce assistenza dopo la messa in produzione. Questa guida è rivolta ai partner e agli sviluppatori che vogliono partecipare al progetto o sviluppare autonomamente soluzioni basate sulla REST API documentata di SkyPlanner (documentazione di riferimento dell’API).
Due fonti in un unico sistema Sage 200
Un’installazione Sage 200 per la produzione si articola su due livelli e l’integrazione legge i dati da entrambi.
1. La Sage 200 REST API per i dati commerciali e di magazzino. Secondo Sage, l’API “lets your application read and modify data in a Sage 200 site” (consente all’applicazione di leggere e modificare i dati dell’installazione). Sono inclusi clienti, fornitori, prodotti, ordini di vendita e di acquisto e conti di contabilità generale. La documentazione di riferimento di Sage 200 Professional (2025.02) raggruppa le risorse in Cash Book, Commercials, Financials, General, Nominal, POP, Price Book, Purchases, Sales, SOP e Stock. Le risorse rilevanti per la schedulazione sono:
| Risorsa | Contenuto |
|---|---|
products | Codice, nome, unità di misura di magazzino, tipo di articolo BOM, costo standard |
warehouse_holdings | quantity_in_stock, quantity_on_order, quantity_allocated_bom, free_stock_available, is_default_manufacturing_warehouse |
pop_orders, pop_order_lines | Ordini di acquisto aperti, line_quantity, requested_delivery_dates |
sop_orders, sop_order_lines | Domanda dei clienti, requested_delivery_date, promised_delivery_date |
warehouses, units | Sedi e unità di misura |
2. Il componente aggiuntivo per la gestione degli ordini di produzione. L’API di Sage 200 non offre endpoint per ordini di produzione, operazioni o risorse produttive. Gli ordini di produzione risiedono in Sicon Works Order Processing, Cim200 o nel modulo legacy Sage 200 Manufacturing. L’integrazione legge ordini di produzione, operazioni e risorse produttive con la modalità supportata dal componente aggiuntivo, concordata con voi e con il vostro partner Sage 200 durante la definizione del perimetro.
Autenticazione e accesso
L’API di Sage 200 “uses OAuth 2.0 with OpenID Connect” (utilizza OAuth con OpenID Connect), con il flusso authorization code grant. L’accesso avviene tramite Sage ID.
- Aderite al Sage 200 API Developer Programme e richiedete le credenziali.
- Associate un Sage ID a un utente Sage 200 che disponga dell’accesso all’azienda e alle funzionalità necessarie per gli endpoint utilizzati.
- Richiedete lo scope
offline_access, altrimenti non verrà rilasciato alcun refresh token. - Inviate
Authorization: Bearer <access_token>,X-SiteeX-Companyin ogni richiesta al database. Entrambi gli ID si ottengono da/sites.
URL di base per Sage 200 Professional: https://api.columbus.sage.com/uk/sage200extra/accounts/v1. Le richieste utilizzano GET, POST, PUT e DELETE e le opzioni di query OData $filter, $select, $top, $skip, $orderby e $expand.
Per Sage 200 Professional, l’API viene abilitata dal fornitore di assistenza del cliente. Nella checklist di Sage, il fornitore conferma che “the API is enabled” (l’API è abilitata) e che “each required user has a Sage ID assigned.” (a ogni utente interessato è assegnato un Sage ID). In Sage 200 Standard l’API è abilitata per impostazione predefinita.
La durata dei token condiziona la progettazione. Gli access token durano 8 ore. I refresh token durano da 1 a 90 giorni e “The refresh window is measured from the user’s initial sign-in, not from the most recent refresh.” (La finestra di rinnovo si calcola dall’accesso iniziale dell’utente, non dall’ultimo rinnovo). Sage afferma che una nuova autenticazione “is unavoidable” (è inevitabile). Prevedete un avviso per richiedere nuovamente il consenso prima che la finestra si chiuda.
Sul lato SkyPlanner, la REST API utilizza un token API per l’autenticazione (SkyPlanner Settings > API) ed è documentata in Swagger/OpenAPI. Il tutorial sull’integrazione illustra le prime chiamate.
Rilevamento delle modifiche
La documentazione di riferimento dell’API di Sage 200 non prevede risorse per webhook o sottoscrizioni. Le modifiche vengono rilevate tramite polling. I record contengono date_time_created e date_time_updated: a ogni interrogazione si usa quindi $filter su date_time_updated e si gestisce la paginazione con $top e $skip.
Interrogate gli ordini di produzione ogni pochi minuti e le giacenze e le righe degli ordini di acquisto ogni ora. SkyPlanner invia webhook quando la schedulazione cambia, quindi i dati vengono riportati nel sistema di origine in risposta agli eventi.
Mappatura dei dati
| Oggetto Sage 200 (origine) | Oggetto SkyPlanner | Direzione | Frequenza |
|---|---|---|---|
products, units (API) | Prodotti e materiali | Sage 200 → SkyPlanner | Caricamento, poi polling |
| Componenti BOM (componente aggiuntivo o modulo BOM) | Struttura del prodotto, prodotti componenti, materiali per prodotto | Sage 200 → SkyPlanner | A ogni modifica |
| Manodopera, macchine e gruppi di risorse produttive (componente aggiuntivo) | Centri di lavoro, gruppi di centri di lavoro, personale | Sage 200 → SkyPlanner | Caricamento iniziale |
| Disponibilità delle risorse produttive: fermi, manutenzione, ferie (componente aggiuntivo) | Turni, assenze | Sage 200 → SkyPlanner | Ogni giorno |
| Ordini di produzione con relative operazioni e tempi per operazione (componente aggiuntivo) | Ordini e operazioni con fasi, durate e scadenze | Sage 200 → SkyPlanner | Ogni pochi minuti |
sop_order_lines: requested_delivery_date, promised_delivery_date (API) | Date di consegna ai clienti | Sage 200 → SkyPlanner | Polling |
warehouse_holdings: quantity_in_stock, free_stock_available (API) | Giacenze di magazzino | Sage 200 → SkyPlanner | Ogni ora |
pop_order_lines: line_quantity, requested_delivery_dates (API) | Ordini di acquisto con data di consegna prevista | Sage 200 → SkyPlanner | Ogni ora |
| Inizio e fine pianificati e risorsa produttiva per l’operazione dell’ordine di produzione | Inizio e fine pianificati e centro di lavoro per operazione | SkyPlanner → Sage 200 | A ogni modifica, tramite webhook |
| Imputazione dei tempi alle operazioni (componente aggiuntivo) | Registrazioni dei tempi e conferme degli operatori | SkyPlanner → Sage 200 | A ogni conferma o per turno |
| Dati sui vincoli di SkyPlanner | Matrice dei tempi di attrezzaggio, utensili come risorse a capacità finita, macchine e personale alternativi | Gestiti in SkyPlanner | Avviamento |
Schemi di integrazione
1. Caricamento iniziale delle anagrafiche. Importate prodotti e unità di misura dall’API, poi risorse produttive, gruppi di risorse produttive e operazioni BOM dal componente aggiuntivo. Un gruppo di risorse produttive composto da tre macchine identiche può essere rappresentato da un gruppo di centri di lavoro o da tre centri di lavoro.
2. Sincronizzazione degli ordini. Leggete gli ordini di produzione aperti con le relative operazioni dal componente aggiuntivo, insieme alle pop_order_lines aperte e alle warehouse_holdings dall’API. La schedulazione verifica sia le giacenze sia gli acquisti in arrivo. L’MRP continua a proporre ordini di produzione in Sage 200 e SkyPlanner schedula quelli che create.
3. Aggiornamento degli ordini con la schedulazione. Per ogni operazione inserita o spostata dal motore, SkyPlanner riporta nell’ordine di produzione l’inizio e la fine pianificati e la risorsa produttiva. Il componente aggiuntivo continua a gestire le proprie quantità, le allocazioni e il calcolo dei costi.
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. I tempi registrati vengono riportati come tempi imputati all’operazione dell’ordine di produzione, così il calcolo dei costi in Sage 200 tiene conto delle ore effettive.
Se il vostro stabilimento registra già i tempi in Sicon Shop Floor Data Capture o Cim200 Shop Floor Data Capture, scegliete un unico canale di registrazione.
5. Titolarità dei dati e regole per i conflitti. Mettetele per iscritto prima della messa in produzione:
| Dati | Sistema responsabile |
|---|---|
| Prodotti, distinte base, quantità degli ordini di produzione, allocazioni, costi | Sage 200 e il componente aggiuntivo |
| Sequenza delle operazioni, orari di inizio e fine, assegnazione ai centri di lavoro | SkyPlanner |
| Matrice dei tempi di attrezzaggio, requisiti di utensili e operatori, risorse produttive alternative | SkyPlanner |
| Consuntivazione dei tempi | Sage 200, alimentato dalle registrazioni dei tempi di SkyPlanner |
La principale fonte di conflitto è il grafico della capacità. Se i pianificatori continuano a trascinare ordini di produzione o operazioni in Sicon Rough Cut Capacity Planning o in Cim200 Graphical Scheduler, le date vengono gestite da due sistemi. Affidate a SkyPlanner la gestione delle date delle operazioni. Con Autopilot, SkyPlanner aggiorna automaticamente la schedulazione quando cambia la produzione.
Le fasi tipiche del progetto
L’implementazione si completa normalmente nell’arco di settimane dall’inizio dell’avviamento. Prima di questa fase, verificate la schedulazione durante la prova gratuita di 30 giorni, usando un’esportazione CSV o Excel degli ordini di produzione aperti. Il progetto prosegue poi con queste fasi:
- Definizione del perimetro. Confermate il componente aggiuntivo e la sua versione, le modalità di lettura degli ordini di produzione e di riscrittura dei dati, le frequenze di sincronizzazione e il canale per la consuntivazione dei tempi.
- Accesso alle API. Il fornitore dell’assistenza abilita l’API di Sage 200, associa un Sage ID a un utente Sage 200 e configura l’accesso alle aziende e alle funzionalità.
- Caricamento iniziale. Prodotti, unità, risorse produttive, gruppi di risorse produttive, operazioni delle distinte base e disponibilità.
- Sincronizzazione degli ordini. Ordini di produzione, righe degli ordini di acquisto e giacenze tramite polling, con un avviso per il rinnovo del consenso.
- Configurazione dei vincoli in SkyPlanner. Matrice dei tempi di attrezzaggio, utensili, numero di operatori per operazione e macchine o personale alternativi.
- Aggiornamento degli ordini con la schedulazione. Le date pianificate delle operazioni vengono riportate negli ordini di produzione; in questa fase si aggiunge anche la consuntivazione dei tempi.
- Test in parallelo e messa in produzione. Confrontate le date con il piano attuale, correggete le anagrafiche, quindi attivate la riscrittura dei dati.
Cosa prevedere per l’integrazione con Sage 200
- Modulo dismesso nella nuova versione. Il modulo preesistente Sage 200 Manufacturing non è più utilizzabile a partire da Sage 200 Professional 2025 R2. Prima di mappare qualsiasi dato, confermate quale soluzione per la gestione della produzione sarà operativa al momento della messa in produzione.
- Tempi delle operazioni ricavati dai costi. Sicon MRP stima i tempi di manodopera e macchina a partire dalle voci di costo delle distinte base di Sage 200. Confrontateli prima con i tempi di lavorazione effettivi.
- Disallineamenti nelle voci di costo. Sage avverte che Nominal, Overhead Nominal e Overhead Recovery % devono corrispondere tra le operazioni delle distinte base e le voci di costo, altrimenti “there will be cost discrepancies.” (si verificheranno discrepanze nei costi).
- Finestra di rinnovo. Il limite massimo di 90 giorni decorre dal primo accesso. Se il consenso non viene mai rinnovato, l’integrazione si arresta lo stesso giorno di ogni trimestre.
- Siti multiazienda. Un sito può contenere più aziende: invia quindi il valore corretto di
X-Companya ogni richiesta.
Integrazione con Sage 200: chi la configura e fornisce assistenza
- Il team SkyPlanner la configura durante l’avviamento e fornisce assistenza dopo la messa in produzione.
- Può partecipare anche il tuo partner Sage 200. Il partner conosce il tuo componente aggiuntivo e abilita l’API su Sage 200 Professional.
- Anche i tuoi sviluppatori possono realizzare ulteriori integrazioni usando la stessa REST API documentata con un token API. Per iniziare basta un token API e il team SkyPlanner offre assistenza quando serve.
Una volta attivato il collegamento, il motore Arcturus elabora la schedulazione a partire dagli ordini di produzione aggiornati di Sage 200 e le date pianificate vengono riportate sulle operazioni degli ordini. SkyPlanner parte da 199 € al mese con 5 centri di lavoro inclusi e fatturazione mensile. L’integrazione viene preventivata in anticipo in base ai tuoi processi e alle tue esigenze, insieme al piano scelto, così conosci il costo totale prima di iniziare. Consulta i prezzi, le funzionalità e il confronto con la pianificazione nativa di Sage 200 nella pagina sulla schedulazione della produzione a capacità finita con Sage 200. Trovi una panoramica nella pagina dedicata a Sage 200 e gli altri ERP nella sezione delle integrazioni ERP.
Recensioni delle aziende manifatturiere su SkyPlanner
2 hrisparmiate ogni settimana
“Con SkyPlanner siamo passati dalla pianificazione della produzione su fogli Excel all’ottimizzazione della produzione in tempo reale.”
Kalle Kalliomäki, specialista della supply chain
UTU · Quadri elettrici e apparecchiature di manovra
La pianificazione della produzione consente di risparmiare 2 ore di lavoro ogni settimana e una nuova coda di lavoro arriva in linea in pochi secondi.
1.000 e piùordini di produzione schedulati automaticamente
“Ora abbiamo un controllo diverso sulla produzione e la nostra conoscenza della capacità produttiva è 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 produzione vengono schedulati automaticamente, con una visione della produzione in tempo reale per tutta l’organizzazione.
Domande frequenti
L’API di Sage 200 include gli ordini di produzione?
No. L’API di Sage 200 Professional copre prodotti, giacenze, ordini di vendita e di acquisto, contabilità e altro, ma non espone risorse per gli ordini di produzione o le operazioni. Gli ordini di produzione provengono dal componente aggiuntivo per la produzione, come Sicon Works Order Processing o Cim200, attraverso la modalità concordata nella definizione del perimetro.
Chi realizza l’integrazione con Sage 200?
Il team SkyPlanner configura l’integrazione bidirezionale in base alla tua configurazione di Sage 200 durante l’avviamento e fornisce assistenza dopo la messa in produzione. Il tuo partner Sage 200 abilita l’API e può partecipare al progetto. Anche i tuoi sviluppatori possono realizzare integrazioni usando la REST API documentata di SkyPlanner: per iniziare basta un token API.
Sage 200 può inviare le modifiche in tempo reale?
L’API di Sage 200 non dispone di webhook. Giacenze e ordini di acquisto vengono letti tramite polling in base a date_time_updated, mentre gli ordini di produzione vengono letti dal componente aggiuntivo a intervalli di pochi minuti. 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 gli ordini di produzione da file CSV o Excel, senza carta di credito. Inizia la prova oppure contatta il team commerciale per definire il perimetro dell’integrazione.