Integrationer / ERP / Sage 200
Guide till Sage 200-integration för produktionsplanering med SkyPlanner APS
Den här guiden till Sage 200-integration visar affärspartner och IT-team hur de ansluter Sage 200 Professional och dess tillverkningstillägg till SkyPlanner APS. Integrationen mellan SkyPlanner och Sage 200 fungerar i båda riktningarna:
- Produkter, lagersaldon, inköpsorder och kundorder hämtas via Sage 200 REST API.
- Tillverkningsorder, operationer samt personal- och maskinresurser hämtas från ditt tillverkningstillägg.
- Planerade datum för operationerna förs tillbaka till tillverkningsorderna.
- Operatörernas tidsregistreringar förs tillbaka för tidsrapportering på respektive operation.
SkyPlanner-teamet anpassar integrationen till din Sage 200-miljö under införandet och ger support efter driftsättningen. Den här guiden är till för partner och utvecklare som vill delta eller själva bygga vidare på SkyPlanners dokumenterade REST API (API-referens).
Två källor i ett och samma Sage 200-system
En Sage 200-miljö för tillverkning har två lager, och integrationen läser data från båda.
1. Sage 200 REST API för affärs- och lagerdata. Sage skriver att API:et ”lets your application read and modify data in a Sage 200 site” (låter din applikation läsa och ändra data i miljön). Det omfattar kunder, leverantörer, produkter, kund- och inköpsorder samt huvudbokskonton. I referensdokumentationen för Sage 200 Professional (2025.02) grupperas resurserna under Cash Book, Commercials, Financials, General, Nominal, POP, Price Book, Purchases, Sales, SOP och Stock. Följande resurser är relevanta för produktionsplaneringen:
| Resurs | Innehåll |
|---|---|
products | Kod, namn, lagerenhet, BOM-artikeltyp, standardkostnad |
warehouse_holdings | quantity_in_stock, quantity_on_order, quantity_allocated_bom, free_stock_available, is_default_manufacturing_warehouse |
pop_orders, pop_order_lines | Öppna inköpsorder, line_quantity, requested_delivery_dates |
sop_orders, sop_order_lines | Kundbehov, requested_delivery_date, promised_delivery_date |
warehouses, units | Anläggningar och måttenheter |
2. Tillverkningstillägget för tillverkningsorder. Sage 200 API saknar endpoints för tillverkningsorder, operationer och resurser. Tillverkningsorderna finns i Sicon Works Order Processing, Cim200 eller den äldre modulen Sage 200 Manufacturing. Integrationen läser tillverkningsorder, operationer och resurser via den anslutningsväg som tillägget stöder. Den fastställs tillsammans med dig och din Sage 200-partner under kartläggningen.
Autentisering och åtkomst
Sage 200 API ”uses OAuth 2.0 with OpenID Connect” (använder detta protokoll med OpenID Connect). Autentiseringen följer flödet authorization code grant. Inloggningen sker via Sage ID.
- Gå med i Sage 200 API Developer Programme och begär autentiseringsuppgifter.
- Koppla ett Sage ID till en Sage 200-användare med åtkomst till de företag och funktioner som krävs för de endpoints du använder.
- Begär behörigheten
offline_access, annars utfärdas ingen refresh token. - Skicka med
Authorization: Bearer <access_token>,X-SiteochX-Companyi varje databasanrop. Båda ID:na hämtas från/sites.
Bas-URL för Sage 200 Professional: https://api.columbus.sage.com/uk/sage200extra/accounts/v1. Anropen använder GET, POST, PUT och DELETE samt frågealternativen $filter, $select, $top, $skip, $orderby och $expand i OData.
För Sage 200 Professional aktiveras API:et av kundens supportleverantör. I Sages checklista bekräftar leverantören att ”the API is enabled” (API:et är aktiverat) och att ”each required user has a Sage ID assigned.” (varje användare som behöver åtkomst har tilldelats ett Sage ID). I Sage 200 Standard är API:et aktiverat som standard.
Tokenlivslängderna påverkar integrationslösningen. Access tokens gäller i 8 timmar. Refresh tokens gäller i mellan 1 och 90 dagar, och ”The refresh window is measured from the user’s initial sign-in, not from the most recent refresh.” (Förnyelseperioden räknas från användarens första inloggning, inte från den senaste förnyelsen.) Sage anger att ny autentisering ”is unavoidable” (är oundviklig). Planera in en avisering om att samtycket måste förnyas innan perioden löper ut.
På SkyPlanner-sidan sker autentiseringen för REST API med en API-token (SkyPlanner Settings > API). API:et är dokumenterat i Swagger/OpenAPI. Integrationshandledningen går igenom de första anropen.
Upptäcka ändringar
Referensdokumentationen för Sage 200 API innehåller ingen resurs för webhooks eller prenumerationer. Ändringar hämtas genom polling. Posterna har fälten date_time_created och date_time_updated, så varje pollinganrop filtrerar på date_time_updated med $filter och delar upp resultatet i sidor med $top och $skip.
Hämta tillverkningsorder med några minuters mellanrum och lagersaldon och inköpsorderrader varje timme. SkyPlanner skickar webhooks när produktionsplanen ändras, så återföringen är händelsestyrd.
Datamappning
| Objekt i Sage 200 (källa) | Objekt i SkyPlanner | Riktning | Frekvens |
|---|---|---|---|
products, units (API) | Produkter och material | Sage 200 → SkyPlanner | Inläsning, därefter polling |
| BOM-komponenter (tillägg eller BOM-modul) | Produktstruktur, delprodukter, material per produkt | Sage 200 → SkyPlanner | Vid ändring |
| Personal- och maskinresurser, resursgrupper (tillägg) | Produktionsgrupper, grupper av produktionsgrupper, personal | Sage 200 → SkyPlanner | Första inläsningen |
| Resurstillgänglighet: driftstopp, underhåll, ledighet (tillägg) | Skift, frånvaro | Sage 200 → SkyPlanner | Dagligen |
| Tillverkningsorder med operationer och tider per operation (tillägg) | Order och operationer med steg, varaktigheter och slutdatum | Sage 200 → SkyPlanner | Med några minuters mellanrum |
sop_order_lines: requested_delivery_date, promised_delivery_date (API) | Leveransdatum till kund | Sage 200 → SkyPlanner | Polling |
warehouse_holdings: quantity_in_stock, free_stock_available (API) | Lagersaldon | Sage 200 → SkyPlanner | Varje timme |
pop_order_lines: line_quantity, requested_delivery_dates (API) | Inköpsorder med förväntat leveransdatum | Sage 200 → SkyPlanner | Varje timme |
| Planerad start, sluttid och resurs för operationen på tillverkningsordern | Planerad start, sluttid och produktionsgrupp per operation | SkyPlanner → Sage 200 | Vid ändring, via webhook |
| Tidsrapportering per operation (tillägg) | Tidsregistreringar och operatörskvitteringar | SkyPlanner → Sage 200 | Per kvittering eller skift |
| Data om begränsningar i SkyPlanner | Ställtidsmatris, verktyg som begränsade resurser, alternativa maskiner och personal | Underhålls i SkyPlanner | Vid införandet |
Integrationsflöden
1. Första inläsningen av grunddata. Hämta produkter och enheter från API:et, därefter resurser, resursgrupper och BOM-operationer från tillägget. En resursgrupp med tre identiska maskiner kan motsvara en grupp av produktionsgrupper eller tre produktionsgrupper.
2. Ordersynkronisering. Läs in öppna tillverkningsorder med tillhörande operationer från tillägget samt öppna pop_order_lines och warehouse_holdings från API:et. Produktionsplaneringen kontrollerar både lagersaldon och inkommande inköp. MRP fortsätter att föreslå tillverkningsorder i Sage 200, och SkyPlanner planerar in dem du skapar.
3. Återföring av produktionsplanen. För varje operation som planeringsmotorn har lagt in eller flyttat skickar SkyPlanner tillbaka planerad start, sluttid och resurs till tillverkningsordern. Tillägget behåller sina egna kvantiteter, reservationer och kostnadsberäkningar.
4. Kvitteringar från produktionsgolvet. Operatörerna registrerar arbete med SkyPlanner Mobile Confirmations eller Production Timer, och tidsregistreringarna håller produktionsplanen uppdaterad. Den registrerade tiden förs tillbaka som rapporterad tid på tillverkningsorderns operation, så att kostnadsberäkningen i Sage 200 får med de faktiska timmarna.
Om ni redan rapporterar tid i Sicon Shop Floor Data Capture eller Cim200 Shop Floor Data Capture ska ni välja en enda kanal för tidsrapporteringen.
5. Regler för dataägarskap och konflikter. Dokumentera dem före driftsättningen:
| Data | Ägare |
|---|---|
| Produkter, stycklistor, kvantiteter på tillverkningsorder, reservationer, kostnader | Sage 200 och tillägget |
| Operationsföljd, start- och sluttider, tilldelning av produktionsgrupp | SkyPlanner |
| Ställtidsmatris, verktygs- och operatörskrav, alternativa resurser | SkyPlanner |
| Tidrapportering | Sage 200, med tidrapporter från SkyPlanner |
Kapacitetsdiagrammet är den främsta källan till konflikter. Om planerarna fortsätter att dra tillverkningsorder eller operationer i Sicon Rough Cut Capacity Planning eller Cim200 Graphical Scheduler styr två system datumen. Låt SkyPlanner styra operationsdatumen. Med Autopilot planerar SkyPlanner om automatiskt när produktionen förändras.
Vanliga projektsteg
Implementeringen är normalt klar inom några veckor efter att införandet har startat. Innan dess kan du validera planen under den kostnadsfria provperioden på 30 dagar med en CSV- eller Excel-export av öppna tillverkningsorder. Därefter genomförs projektet så här:
- Kartläggning. Bekräfta tillägg och version, hur tillverkningsorder ska läsas in, hur data ska skrivas tillbaka, synkroniseringsintervall och kanal för tidrapportering.
- API-åtkomst. Supportleverantören aktiverar Sage 200 API, kopplar ett Sage ID till en Sage 200-användare och ställer in åtkomst till företag och funktioner.
- Första inläsningen. Produkter, enheter, resurser, resursgrupper, stycklisteoperationer och tillgänglighet.
- Ordersynkronisering. Tillverkningsorder, inköpsorderrader och lagersaldo hämtas via polling, med avisering när samtycket behöver förnyas.
- Inställning av begränsningar i SkyPlanner. Ställtidsmatris, verktyg, antal operatörer per operation samt alternativa maskiner eller personal.
- Återskrivning av planen. Planerade operationsdatum skrivs tillbaka till tillverkningsorderna. Tidrapportering läggs till i detta steg.
- Parallella tester och driftstart. Jämför datumen med den befintliga planen, rätta grunddata och aktivera sedan återskrivningen.
Att ta hänsyn till vid en integration med Sage 200
- Utfasad modul i en ny version. Den äldre modulen Sage 200 Manufacturing kan inte användas från och med Sage 200 Professional 2025 R2. Bekräfta vilken tillverkningslösning som ska vara i drift vid driftstarten innan ni börjar mappa data.
- Operationstider från kostnadsdata. Sicon MRP uppskattar arbets- och maskintider utifrån kostnadsposter i stycklistorna i Sage 200. Kontrollera dem först mot verkliga körtider.
- Avvikelser mellan kostnadsslag. Sage varnar för att Nominal, Overhead Nominal och Overhead Recovery % måste stämma överens mellan stycklisteoperationerna och kostnadsslagen. Annars blir följden att ”there will be cost discrepancies.” (det uppstår kostnadsavvikelser).
- Tidsgräns för förnyelse. Den maximala perioden på 90 dagar räknas från den första inloggningen. En integration där samtycket aldrig förnyas stannar samma dag varje kvartal.
- Installationer med flera företag. En installation kan innehålla flera företag, så skicka rätt
X-Companyi varje anrop.
Integrationen med Sage 200: vem konfigurerar den och ger support?
- SkyPlanner-teamet konfigurerar integrationen under införandet och ger support efter driftstarten.
- Din Sage 200-partner kan medverka. Partnern känner till ditt tillägg och aktiverar API:et i Sage 200 Professional.
- Dina egna utvecklare kan bygga vidare på integrationen via samma dokumenterade REST API med en API-token. Det räcker med en API-token för att komma igång, och SkyPlanner-teamet hjälper till vid behov.
När anslutningen är på plats planerar Arcturus-motorn utifrån aktuella tillverkningsorder i Sage 200, och de planerade datumen skrivs till tillverkningsordernas operationer. SkyPlanner kostar från 199 € per månad med 5 produktionsgrupper inkluderade och faktureras månadsvis. Du får i förväg en offert på integrationen och ditt abonnemang utifrån dina processer och behov, så att du ser hela kostnaden innan du börjar. Se priser, funktioner och hur Sage 200:s egen planering står sig i jämförelse i Finplanering i Sage 200. En översikt finns på sidan om Sage 200, och andra ERP-system finns i översikten över ERP-integrationer.
Tillverkningsföretagens omdömen om SkyPlanner
2 hsparas varje vecka
”SkyPlanner har tagit vår produktionsplanering från Excel-kalkylblad till produktionsoptimering i realtid.”
Kalle Kalliomäki, specialist inom försörjningskedjan
UTU · Elcentraler och ställverk
Produktionsplaneringen sparar 2 timmars arbetstid varje vecka, och en ny körplan når produktionslinjen på några sekunder.
1 000-talstillverkningsorder planeras automatiskt
”Vi har kontroll över produktionen på ett annat sätt, och vår förståelse för kapaciteten är på en helt annan nivå.”
Hannu Ryynänen, vd
Mamec · Industriella blandare, pumpar och högteknologisk legotillverkning
Tusentals tillverkningsorder planeras automatiskt, och hela organisationen får en realtidsbild av produktionen.
Vanliga frågor
Ingår tillverkningsorder i Sage 200 API?
Nej. Sage 200 Professional API omfattar bland annat produkter, lager, kund- och inköpsorder samt ekonomi, men saknar API-resurser för tillverkningsorder och operationer. Tillverkningsorder hämtas från ditt tillverkningstillägg, exempelvis Sicon Works Order Processing eller Cim200, via den metod som ni kommer överens om under kartläggningen.
Vem bygger integrationen med Sage 200?
SkyPlanner-teamet konfigurerar tvåvägsintegrationen för din Sage 200-miljö under införandet och ger support efter driftstarten. Din Sage 200-partner aktiverar API:et och kan medverka. Dina egna utvecklare kan också bygga vidare med SkyPlanners dokumenterade REST API, och det räcker med en API-token för att komma igång.
Kan Sage 200 skicka ändringar i realtid?
Sage 200 API saknar webhooks. Lager och inköpsorder hämtas via polling utifrån date_time_updated, och tillverkningsorder läses från ditt tillägg med några minuters mellanrum. I motsatt riktning skickar SkyPlanners egna webhooks planändringar så snart de sker.
Kan vi testa SkyPlanner innan vi bygger integrationen?
Ja. Under den kostnadsfria provperioden på 30 dagar kan ni använda upp till 20 produktionsgrupper och importera era tillverkningsorder via CSV eller Excel. Inget kreditkort behövs. Starta provperioden eller kontakta säljteamet för en kartläggning av integrationen.