Integrasjoner / ERP / Sage 200
Guide til Sage 200-integrasjon for produksjonsplanlegging med SkyPlanner APS
Denne guiden til Sage 200-integrasjon viser forretningspartnere og IT-team hvordan de kobler Sage 200 Professional og tilleggsmodulen for produksjon til SkyPlanner APS. SkyPlanner integreres med Sage 200 i begge retninger:
- Produkter, lagerbeholdninger, innkjøpsordrer og salgsordrer hentes inn via Sage 200 REST API.
- Produksjonsordrer, operasjoner samt personell- og maskinressurser hentes inn fra tilleggsmodulen for produksjon.
- Planlagte datoer for operasjonene sendes tilbake til produksjonsordrene.
- Operatørenes tidsregistreringer sendes tilbake for timeføring på hver operasjon.
SkyPlanner-teamet tilpasser integrasjonen til Sage 200-oppsettet ditt under innføringen og følger den opp etter driftsstart. Denne guiden er for partnere og utviklere som vil delta i arbeidet eller selv bygge løsninger med SkyPlanners dokumenterte REST API (API-referanse).
To kilder i ett Sage 200-system
En Sage 200-installasjon for produksjon har to lag, og integrasjonen leser fra begge.
1. Sage 200 REST API for handels- og lagerdata. Sage sier at API-et «lets your application read and modify data in a Sage 200 site» (lar applikasjonen din lese og endre data i installasjonen). Dette omfatter kunder, leverandører, produkter, salgs- og innkjøpsordrer samt hovedbokskontoer. Referansen for Sage 200 Professional (2025.02) grupperer ressursene under Cash Book, Commercials, Financials, General, Nominal, POP, Price Book, Purchases, Sales, SOP og Stock. Disse ressursene er relevante for produksjonsplanleggingen:
| Ressurs | Innhold |
|---|---|
products | Kode, navn, lagerenhet, BOM-varetype, standardkost |
warehouse_holdings | quantity_in_stock, quantity_on_order, quantity_allocated_bom, free_stock_available, is_default_manufacturing_warehouse |
pop_orders, pop_order_lines | Åpne innkjøpsordrer, line_quantity, requested_delivery_dates |
sop_orders, sop_order_lines | Kundeetterspørsel, requested_delivery_date, promised_delivery_date |
warehouses, units | Lokasjoner og måleenheter |
2. Tilleggsmodulen for produksjonsordrer. Sage 200 API har ingen endepunkter for produksjonsordrer, operasjoner eller ressurser. Produksjonsordrene ligger i Sicon Works Order Processing, Cim200 eller den eldre modulen Sage 200 Manufacturing. Integrasjonen leser produksjonsordrer, operasjoner og ressurser via en metode som tilleggsmodulen støtter. Metoden avtales med deg og Sage 200-partneren din under avklaringen.
Autentisering og tilgang
Sage 200 API «uses OAuth 2.0 with OpenID Connect» (bruker OAuth med OpenID Connect) med flyten authorization code grant. Innlogging skjer via Sage ID.
- Bli med i Sage 200 API Developer Programme og be om tilgangsopplysninger.
- Knytt en Sage ID til en Sage 200-bruker med tilgang til selskapene og funksjonene som endepunktene du bruker, krever.
- Be om tilgangsomfanget
offline_access. Uten dette utstedes det ikke noe oppdateringstoken. - Send
Authorization: Bearer <access_token>,X-SiteogX-Companymed hver databaseforespørsel. Begge ID-ene hentes fra/sites.
Basis-URL for Sage 200 Professional: https://api.columbus.sage.com/uk/sage200extra/accounts/v1. Forespørslene bruker GET, POST, PUT og DELETE samt OData-spørringsparametrene $filter, $select, $top, $skip, $orderby og $expand.
For Sage 200 Professional er det kundens supportleverandør som aktiverer API-et. I Sages sjekkliste bekrefter leverandøren at «the API is enabled» (API-et er aktivert), og at «each required user has a Sage ID assigned.» (hver bruker som trenger tilgang, har fått tildelt en Sage ID). I Sage 200 Standard er API-et aktivert som standard.
Tokenenes gyldighetstid påvirker utformingen av løsningen. Tilgangstokener er gyldige i 8 timer. Oppdateringstokener er gyldige i mellom 1 og 90 dager, og «The refresh window is measured from the user’s initial sign-in, not from the most recent refresh.» (Fornyelsesperioden måles fra brukerens første innlogging, ikke fra den siste tokenfornyelsen.) Sage opplyser at ny autentisering «is unavoidable» (er uunngåelig). Planlegg et varsel om nytt samtykke før perioden utløper.
På SkyPlanner-siden autentiseres REST API med et API-token (SkyPlanner Settings > API), og API-et er dokumentert i Swagger/OpenAPI. Integrasjonsveiledningen tar deg gjennom de første kallene.
Oppdage endringer
Referansen for Sage 200 API inneholder ingen ressurs for webhooks eller abonnementer. Endringer hentes ved polling. Postene har feltene date_time_created og date_time_updated. Hver pollingrunde bruker derfor $filter på date_time_updated og henter data sidevis med $top og $skip.
Hent produksjonsordrer med noen minutters mellomrom, og lagerbeholdninger og innkjøpsordrelinjer hver time. SkyPlanner sender webhooks når planen endres, så tilbakeskrivingen er hendelsesstyrt.
Datakobling
| Sage 200-objekt (kilde) | SkyPlanner-objekt | Retning | Hyppighet |
|---|---|---|---|
products, units (API) | Produkter og materialer | Sage 200 → SkyPlanner | Innlasting, deretter polling |
| BOM-komponenter (tilleggsmodul eller BOM-modul) | Produktstruktur, delprodukter, materialer per produkt | Sage 200 → SkyPlanner | Ved endring |
| Personell- og maskinressurser, ressursgrupper (tilleggsmodul) | Arbeidsstasjoner, arbeidsstasjonsgrupper, personell | Sage 200 → SkyPlanner | Førstegangsinnlasting |
| Ressurstilgjengelighet: driftsstans, vedlikehold, ferie (tilleggsmodul) | Skift, fravær | Sage 200 → SkyPlanner | Daglig |
| Produksjonsordrer med operasjoner og tider per operasjon (tilleggsmodul) | Ordrer og jobber med trinn, varigheter og frister | Sage 200 → SkyPlanner | Med noen minutters mellomrom |
sop_order_lines: requested_delivery_date, promised_delivery_date (API) | Leveringsfrister til kunder | Sage 200 → SkyPlanner | Polling |
warehouse_holdings: quantity_in_stock, free_stock_available (API) | Lagerbeholdninger | Sage 200 → SkyPlanner | Hver time |
pop_order_lines: line_quantity, requested_delivery_dates (API) | Innkjøpsordrer med forventet leveringsdato | Sage 200 → SkyPlanner | Hver time |
| Planlagt start, slutt og ressurs for operasjoner på produksjonsordren | Planlagt start, slutt og arbeidsstasjon per operasjon | SkyPlanner → Sage 200 | Ved endring, via webhook |
| Timeføring på operasjoner (tilleggsmodul) | Tidsregistreringer og operatørbekreftelser | SkyPlanner → Sage 200 | Per bekreftelse eller per skift |
| Data om begrensninger i SkyPlanner | Matrise for omstillingstider, verktøy som ressurser med begrenset kapasitet, alternative maskiner og personell | Vedlikeholdes i SkyPlanner | Under innføringen |
Integrasjonsmønstre
1. Førstegangsinnlasting av grunndata. Hent produkter og enheter fra API-et, og deretter ressurser, ressursgrupper og BOM-operasjoner fra tilleggsmodulen. En ressursgruppe med tre identiske maskiner kan representeres som én arbeidsstasjonsgruppe eller tre arbeidsstasjoner.
2. Ordresynkronisering. Les åpne produksjonsordrer med tilhørende operasjoner fra tilleggsmodulen, samt åpne pop_order_lines og warehouse_holdings fra API-et. Planleggingen kontrollerer både lagerbeholdning og kommende innkjøpsleveranser. MRP fortsetter å foreslå produksjonsordrer i Sage 200, og SkyPlanner planlegger ordrene du oppretter.
3. Tilbakeskriving av planen. For hver operasjon som planleggingsmotoren har plassert eller flyttet, sender SkyPlanner planlagt start, slutt og ressurs tilbake til produksjonsordren. Tilleggsmodulen beholder sine egne mengder, allokeringer og kostnadsberegninger.
4. Bekreftelser fra produksjonsgulvet. Operatørene registrerer arbeid med SkyPlanner Mobile Confirmations eller Production Timer, og tidsregistreringene holder planen oppdatert. Registrert tid sendes tilbake som timer ført på produksjonsordrens operasjon, slik at kostnadsberegningen i Sage 200 får med de faktiske timene.
Hvis fabrikken din allerede fører timer i Sicon Shop Floor Data Capture eller Cim200 Shop Floor Data Capture, velger du én kanal for timeføring.
5. Regler for dataeierskap og konflikter. Skriv dem ned før driftsstart:
| Data | Eier |
|---|---|
| Produkter, stykklister, mengder på produksjonsordrer, allokeringer, kostnader | Sage 200 og tilleggsmodulen |
| Operasjonsrekkefølge, start- og sluttidspunkter, tildeling av arbeidsstasjoner | SkyPlanner |
| Matrise for omstillingstider, krav til verktøy og operatører, alternative ressurser | SkyPlanner |
| Timeregistrering | Sage 200, med tidslogger fra SkyPlanner |
Kapasitetsdiagrammet er den viktigste kilden til konflikter. Hvis planleggerne fortsetter å dra produksjonsordrer eller operasjoner i Sicon Rough Cut Capacity Planning eller Cim200 Graphical Scheduler, styrer to systemer datoene. La SkyPlanner styre operasjonsdatoene. Med Autopilot planlegger SkyPlanner automatisk på nytt når produksjonen endrer seg.
Typiske prosjekttrinn
Implementeringen er normalt fullført i løpet av noen uker etter at innføringen starter. Før det validerer du planen i den gratis prøveperioden på 30 dager med en CSV- eller Excel-eksport av åpne produksjonsordrer. Prosjektet går deretter gjennom disse trinnene:
- Avklaring. Bekreft tilleggsmodul og versjon, hvordan produksjonsordrer skal leses og data skrives tilbake, hvor ofte data skal synkroniseres, og hvilken kanal som skal brukes til timeregistrering.
- API-tilgang. Supportleverandøren aktiverer Sage 200 API, kobler en Sage ID til en Sage 200-bruker og gir tilgang til selskaper og funksjoner.
- Førstegangsimport. Produkter, enheter, ressurser, ressursgrupper, stykklisteoperasjoner og tilgjengelighet.
- Ordresynkronisering. Produksjonsordrer, innkjøpsordrelinjer og lagerbeholdning hentes ved polling, med varsel om behov for fornyet samtykke.
- Oppsett av begrensninger i SkyPlanner. Matrise for omstillingstider, verktøy, antall operatører per jobb og alternative maskiner eller medarbeidere.
- Tilbakeskriving av planen. Planlagte operasjonsdatoer skrives til produksjonsordrene. Timeregistrering legges til i dette trinnet.
- Parallell testing og produksjonssetting. Sammenlign datoene med gjeldende plan, korriger grunndata og aktiver deretter tilbakeskriving.
Dette må du ta høyde for i en Sage 200-integrasjon
- Utfaset modul i ny versjon. Den eldre modulen Sage 200 Manufacturing kan ikke brukes fra og med Sage 200 Professional 2025 R2. Bekreft hvilken produksjonsløsning som skal være i drift ved produksjonssetting, før du begynner å mappe data.
- Operasjonstider fra kostnadsdata. Sicon MRP estimerer arbeids- og maskintider ut fra kostnadsposter i Sage 200 BOM. Kontroller dem først mot faktiske kjøretider.
- Avvik i kostnadskategorier. Sage advarer om at Nominal, Overhead Nominal og Overhead Recovery % må samsvare mellom stykklisteoperasjoner og kostnadskategorier, ellers «there will be cost discrepancies.» (vil det oppstå kostnadsavvik).
- Frist for fornyelse. Maksimumsgrensen på 90 dager regnes fra første pålogging. En integrasjon som aldri får fornyet samtykke, stopper på samme dag hvert kvartal.
- Installasjoner med flere selskaper. Én installasjon kan inneholde flere selskaper, så send riktig
X-Companyi hver forespørsel.
Hvem setter opp og gir support på Sage 200-integrasjonen?
- SkyPlanner-teamet setter opp integrasjonen under oppstarten og gir support etter produksjonssetting.
- Sage 200-partneren din kan delta. Partneren kjenner tilleggsmodulen din og aktiverer API-et i Sage 200 Professional.
- Egne utviklere kan bygge videre på integrasjonen via samme dokumenterte REST API med et API-token. Et API-token er nok for å komme i gang, og SkyPlanner-teamet hjelper til ved behov.
Når tilkoblingen er på plass, planlegger Arcturus-motoren ut fra oppdaterte produksjonsordrer i Sage 200, og planlagte datoer skrives til operasjonene på produksjonsordrene. SkyPlanner koster fra 199 € per måned med 5 arbeidsstasjoner inkludert og faktureres månedlig. Du får et pristilbud på integrasjonen tilpasset prosessene og behovene dine, sammen med abonnementet, slik at du kjenner hele kostnaden før du starter. Se priser, funksjoner og hvordan Sage 200s egen planlegging står seg i produksjonsplanlegging i Sage 200 med hensyn til faktisk maskin- og bemanningskapasitet. Du finner oversikten på Sage 200-siden og andre ERP-systemer i oversikten over ERP-integrasjoner.
Produsentenes erfaringer med SkyPlanner
2 hspart hver uke
«SkyPlanner har tatt produksjonsplanleggingen vår fra Excel-regneark til optimalisering av produksjonen i sanntid.»
Kalle Kalliomäki, spesialist på forsyningskjeder
UTU · Elektrotavler og koblingsanlegg
Produksjonsplanleggingen sparer 2 timers arbeidstid hver uke, og en ny arbeidskø når produksjonslinjen på sekunder.
1 000-tallsarbeidsordrer planlagt automatisk
«Vi har kontroll på produksjonen på en annen måte, og forståelsen vår av kapasiteten er på et helt annet nivå.»
Hannu Ryynänen, administrerende direktør
Mamec · Industrimiksere, pumper og høyteknologisk kontraktsproduksjon
Tusenvis av arbeidsordrer planlegges automatisk, og hele organisasjonen har oversikt over produksjonen i sanntid.
Ofte stilte spørsmål
Omfatter Sage 200 API produksjonsordrer?
Nei. Sage 200 Professional API dekker blant annet produkter, lagerbeholdning, salgs- og innkjøpsordrer og økonomi, men har ingen ressurser for produksjonsordrer eller operasjoner. Produksjonsordrene hentes fra tilleggsmodulen for produksjon, for eksempel Sicon Works Order Processing eller Cim200, via løsningen som ble avtalt under avklaringen.
Hvem bygger Sage 200-integrasjonen?
SkyPlanner-teamet setter opp toveisintegrasjonen mot Sage 200-oppsettet ditt under oppstarten og gir support etter produksjonssetting. Sage 200-partneren din aktiverer API-et og kan delta i arbeidet. Egne utviklere kan også bygge videre med SkyPlanners dokumenterte REST API, og et API-token er nok for å komme i gang.
Kan Sage 200 sende endringer i sanntid?
Sage 200 API har ingen webhooks. Lagerbeholdning og innkjøpsordrer hentes ved polling basert på date_time_updated, og produksjonsordrer leses fra tilleggsmodulen med noen minutters mellomrom. I motsatt retning sender SkyPlanners egne webhooks planendringer idet de skjer.
Kan vi teste SkyPlanner før integrasjonen bygges?
Ja. Den gratis prøveperioden på 30 dager støtter opptil 20 arbeidsstasjoner med import av produksjonsordrer fra CSV eller Excel. Du trenger ikke kredittkort. Start prøveperioden, eller snakk med salg for å avklare integrasjonen.