Integrationer / ERP / Exact

Guide til Exact Online-integration til produktionsplanlægning med SkyPlanner APS

Denne guide til Exact Online-integration viser Exact-partnere og IT-teams, hvordan de forbinder Exact Online Manufacturing med SkyPlanner APS. SkyPlanner integrerer med Exact Online i begge retninger:

  • Produktionsordrer, rutetrin, materialeplaner, arbejdscentre, operationer og styklister hentes ind via Exact Online REST API.
  • Varer, lagerbeholdninger, indkøbsordrer og salgsordrer hentes ind, og ændringer meddeles via Exact Online-webhooks.
  • Planlagte start- og slutdatoer skrives tilbage til hvert rutetrin og til produktionsordren.
  • Operatørernes tidsregistreringer bogføres som tidsposteringer, og færdige mængder bogføres som modtagelser fra produktionsordrer.
Gantt-tidslinje i SkyPlanner APS med opgaver fordelt på arbejdsstationer og en ordreliste nedenunder.

SkyPlanner-teamet tilpasser integrationen til jeres Exact Online-opsætning under opstarten og yder support efter idriftsættelsen. Denne guide er til partnere og udviklere, der vil deltage eller selv bygge videre på SkyPlanners dokumenterede REST API (API-reference). Til sidst er der et kort afsnit om Exact Globe+.

Exact Online REST API til produktion

Exact Online stiller sine data til rådighed via ét REST API, hvor ressourcerne er grupperet efter service. Basisstien er /api/v1/{division}/<service>/<resource>, hvor division er virksomheden i Exact Online. I REST API-referencen er følgende ressourcer til produktionsplanlægning angivet under manufacturing-servicen:

RessourceIndholdMetoder
manufacturing/ShopOrdersProduktionsordrenummer, vare, PlannedQuantity, PlannedStartDate, PlannedDate, status, frigivelsesflagGET, POST, PUT, DELETE
manufacturing/ShopOrderRoutingStepPlansRutetrin pr. produktionsordre: operation, Workcenter, LineNumber, PlannedStartDate, PlannedEndDate, PlannedSetupHours, PlannedRunHoursGET, POST, PUT, DELETE
manufacturing/ShopOrderMaterialPlansMaterialelinjer pr. produktionsordreGET, POST, PUT, DELETE
manufacturing/WorkcentersKode, type, produktionsområde, kapacitetsværdi, satserGET, POST, PUT, DELETE
manufacturing/Operations, OperationResourcesOperationer med tilhørende arbejdscenter samt opstillings- og køretiderGET, POST, PUT, DELETE
manufacturing/BillOfMaterialVersions, BillOfMaterialMaterials, BillOfMaterialRoutingsStyklisteversioner, komponenter og ruteGET, POST, PUT, DELETE
manufacturing/TimeTransactionsRegistrerede timer pr. produktionsordre og rutetrinGET, POST, PUT, DELETE
manufacturing/ShopOrderReceiptsFærdige mængder modtaget fra en produktionsordreGET, POST
manufacturing/MaterialIssuesMaterialer udleveret til en produktionsordreGET, POST
manufacturing/ShopOrderPrioritiesPrioriteringstilstand pr. produktionsordreGET, PUT

Fra de øvrige services:

RessourceIndhold
logistics/ItemsVarestamdata
inventory/ItemWarehousesBeholdning pr. vare og lager
purchaseorder/PurchaseOrders, PurchaseOrderLinesÅbne indkøbsordrer og modtagelsesdatoer
salesorder/SalesOrders, SalesOrderLinesKundebehov og leveringsdatoer

Autentificering og adgang

Exact Online bruger OAuth 2.0 med authorization code-flow og refresh tokens. Exact skriver: “Before you can start integration with Exact Online, you must first register your app in the App Store.” (Før du kan begynde at integrere med Exact Online, skal du registrere din app i App Store.) (Hjælp til Exact Online) Det kræver et Exact Online Developer-abonnement at registrere apps (Exact App Store).

  • Integrationen registreres som en app med en redirect URI.
  • En Exact Online-bruger med adgang til produktion, lager og indkøb giver samtykke én gang.
  • Hver forespørgsel sender Authorization: Bearer <access_token> og angiver division i stien.
  • Access tokens fornyes med et refresh token. Exact begrænser, hvor ofte der må anmodes om et nyt token, så gem tokenet i cache, indtil det udløber.

Exact begrænser også antallet af kald pr. minut og pr. dag for hver app og virksomhed og beder om sekventielle frem for parallelle kald. De gældende grænser står i Exacts artikel om API-grænser. Integrationen er udformet efter disse grænser med filtrerede læsninger via $filter og $select samt Sync API til masseændringer.

Kald til SkyPlanners REST API autentificeres med et API-token i headeren Authorization-Token (SkyPlanner Settings > API), og API’et er dokumenteret i Swagger/OpenAPI. Integrationsvejledningen gennemgår de første kald.

Webhooks og polling

Exact Online-webhooks sender et POST-kald til jeres callback-URL, når der sker ændringer i et emne, I abonnerer på. Kaldet er signeret med en HMAC SHA256-hash (webhooks). Emnerne omfatter Items, StockPosition, PurchaseOrders, PurchaseOrderLines, SalesOrders og SalesOrderLines. De sender ændringer i lagerbeholdning, indkøb og behov til SkyPlanner, så snart de sker.

Produktionsordrer og rutetrin læses med faste intervaller. Filtrér ShopOrders og ShopOrderRoutingStepPlans på Modified, og brug Sync API til masselæsninger (API-begrænsninger).

SkyPlanner sender sine egne webhooks, når produktionsplanen ændres, så tilbageskrivningen til Exact Online er hændelsesstyret.

Datamapping

Exact Online-ressourceSkyPlanner-objektRetningHyppighed
ItemsProdukter og materialerExact Online → SkyPlannerIndlæsning, derefter webhook
BillOfMaterialVersions, BillOfMaterialMaterialsProduktstruktur, delprodukter, materialer pr. produktExact Online → SkyPlannerVed ændringer
Workcenters, OperationResourcesArbejdsstationer, grupper af arbejdsstationerExact Online → SkyPlannerFørste indlæsning
Operations, BillOfMaterialRoutingsProcestrin med opstillings- og køretiderExact Online → SkyPlannerVed ændringer
ShopOrdersOrdrer med mængde og leveringsfristExact Online → SkyPlannerMed få minutters mellemrum
ShopOrderRoutingStepPlansOpgaver med rækkefølge, arbejdscenter samt opstillings- og køretimerExact Online → SkyPlannerMed få minutters mellemrum
ShopOrderMaterialPlansMaterialer pr. opgaveExact Online → SkyPlannerMed få minutters mellemrum
ItemWarehouses, StockPositionLagerbeholdningerExact Online → SkyPlannerWebhook
PurchaseOrderLinesIndkøbsordrer med forventet leveringsdatoExact Online → SkyPlannerWebhook
SalesOrderLinesLeveringsfrister og prioritet for kundeordrerExact Online → SkyPlannerWebhook
ShopOrderRoutingStepPlans: PlannedStartDate, PlannedEndDate, Workcenter (PUT)Planlagt start, slut og arbejdsstation for hvert trinSkyPlanner → Exact OnlineVed ændringer, via webhook
ShopOrders: PlannedStartDate, PlannedDate (PUT)Ordrens start og slutSkyPlanner → Exact OnlineVed ændringer, via webhook
TimeTransactions (POST)Tidsregistreringer og operatørtilbagemeldingerSkyPlanner → Exact OnlinePr. tilbagemelding eller pr. skift
ShopOrderReceipts (POST)Færdigproduceret antal på sidste trinSkyPlanner → Exact OnlinePr. tilbagemelding
Findes ikke i Exact OnlineOmstillingstidsmatrix, værktøjer som ressourcer med begrænset kapacitet, operatører pr. opgave, alternative arbejdsstationer, skiftVedligeholdes i SkyPlannerOpstart

Integrationsforløb

1. Første indlæsning af stamdata. Læs Workcenters, Operations og OperationResources, derefter varer og styklisteversioner med tilhørende ruter. Et arbejdscenter med tre maskiner bliver til tre arbejdsstationer eller én gruppe af arbejdsstationer. Skift, fravær og overarbejde sættes op i SkyPlanner, fordi et arbejdscenter i Exact kun har én kapacitetsværdi.

2. Ordresynkronisering. Læs åbne ShopOrders med tilhørende ShopOrderRoutingStepPlans og ShopOrderMaterialPlans samt lagerbeholdning og indkøbsordrelinjer. Planlægningen kontrollerer både lagerbeholdning og kommende indkøbsleverancer. MRP giver fortsat ordreforslag i Exact Online, og SkyPlanner planlægger de produktionsordrer, du opretter.

3. Tilbageskrivning af planen. For hvert rutetrin, som planlægningsmotoren har placeret eller flyttet, sender SkyPlanner et PUT-kald til ShopOrderRoutingStepPlans med PlannedStartDate, PlannedEndDate og Workcenter. Produktionsordrens PlannedStartDate og PlannedDate følger første og sidste trin. Exact Online håndterer fortsat antal, materialeplaner og omkostningsberegning.

4. Tilbagemeldinger fra produktionen. Operatørerne registrerer arbejdet med SkyPlanner Mobile Confirmations eller Production Timer, og tidsregistreringerne holder planen ajour. Registrerede timer bogføres som TimeTransactions på produktionsordren og rutetrinnet som omstilling eller kørsel. Den sidste tilbagemelding opretter en ShopOrderReceipts-post med det færdigproducerede antal. Hvis fabrikken allerede registrerer tid i Shop Floor Control, skal du vælge én kanal til registreringerne.

5. Dataejerskab og konfliktregler. Skriv dem ned før idriftsættelsen:

DataDataejer
Varer, styklister, mængder på produktionsordrer, materialeplaner, omkostningerExact Online
Rutetrinnenes rækkefølge, start- og sluttider, tildeling til arbejdscenterSkyPlanner
Omstillingstidsmatrix, værktøjer, operatører pr. opgave, alternative ressourcer, skiftSkyPlanner
Tidsregistreringer og færdigmeldingerExact Online, med data fra SkyPlanner

Manuelle datoændringer er den største kilde til konflikter. Hvis planlæggerne fortsætter med at ændre produktionsordrernes datoer i Exact Online, styrer to systemer de samme datoer. Lad SkyPlanner styre datoerne for rutetrinnene. Med Autopilot omplanlægger SkyPlanner automatisk, når der sker ændringer i produktionen.

Et typisk projektforløb

Implementeringen afsluttes normalt i løbet af nogle uger efter opstarten. Inden da kan du validere planen i den gratis prøveperiode på 30 dage med en CSV- eller Excel-eksport af åbne produktionsordrer og rutetrin. Derefter forløber projektet sådan:

  1. Afklaring. Bekræft udgave, divisioner, synkroniseringsfrekvenser, kanal til tidsregistrering og bogføring af færdigmeldinger.
  2. App og samtykke. Registrér appen. Derefter giver en Exact Online-bruger OAuth-samtykke for hver division.
  3. Første indlæsning. Arbejdscentre, operationer, varer, styklisteversioner og ruter.
  4. Ordresynkronisering. Produktionsordrer, planer for rutetrin og materialeplaner synkroniseres med faste intervaller, mens lager og indkøb synkroniseres via webhook.
  5. Opsætning af begrænsninger i SkyPlanner. Skift, omstillingstidsmatrix, værktøjer, antal operatører pr. opgave og alternative maskiner eller medarbejdere.
  6. Tilbageskrivning af planen. Planlagte datoer for rutetrin sendes til Exact Online, derefter tidsregistreringer og færdigmeldinger.
  7. Paralleltest og idriftsættelse. Sammenlign datoerne med den nuværende plan, ret stamdata, og slå derefter tilbageskrivning til.

Det skal du tage højde for i en Exact Online-integration

  • Tider for rutetrin. PlannedSetupHours og PlannedRunHours kommer fra styklistens rute. Kontrollér dem først mod de faktiske køretider.
  • Gruppering af arbejdscentre. Exact har én kapacitetsværdi pr. arbejdscenter. Afgør for hvert arbejdscenter, om det skal blive til én arbejdsstation, flere arbejdsstationer eller en gruppe.
  • Kalendere. Skift, helligdage og fravær håndteres i SkyPlanner. Sæt dem op, før du laver den første plan.
  • Budget for API-kald. Exact begrænser antallet af kald pr. app og virksomhed og forventer, at kaldene foretages sekventielt. Brug webhooks, hvor der findes topics, $filter på Modified og Sync API til masseindlæsning.
  • Flere divisioner. Hver division i Exact Online er en virksomhed med sin egen sti og sit eget samtykke. Knyt hver fabrik til den rette division.
  • Frigivne produktionsordrer. Aftal, hvilke ordrestatusser SkyPlanner må ændre datoer for: åbne og frigivne ordrer eller kun åbne ordrer.
  • Ét system styrer datoerne. Stop manuelle datoændringer i Exact Online, når SkyPlanner overtager styringen af rutetrinnenes datoer.

Exact Globe+

Exact Globe+ er Exacts ERP-system, som sælges og implementeres gennem Exact Globe+-partnere. Exact skriver, at det “koppelt eenvoudig en snel met andere systemen” (nemt og hurtigt kan forbindes med andre systemer) (Exact Globe+). SkyPlanner planlægger produktionsordrer fra Exact Globe+ på samme måde: Produktionsordrer, ruter, ressourcer og lagerbeholdning læses ind, og planlagte datoer og registrerede timer sendes tilbage. Din Exact Globe+-partner og SkyPlanner-teamet aftaler grænsefladen og objekterne til tilbageskrivning under afklaringen.

Exact Online-integrationen: Hvem sætter den op og yder support?

  1. SkyPlanner-teamet sætter integrationen op under opstarten og yder support efter idriftsættelsen.
  2. Din Exact-partner kan deltage. Partneren kender dine udgaver, divisioner og produktionsopsætning.
  3. Dine egne udviklere kan bygge videre på integrationen via SkyPlanners dokumenterede REST API. Et API-token er nok til at komme i gang, og SkyPlanner-teamet hjælper efter behov.

Når forbindelsen er etableret, planlægger Arcturus-motoren ud fra aktuelle produktionsordrer i Exact Online, og hvert rutetrin får sine planlagte datoer. SkyPlanner koster fra 199 € pr. måned med 5 arbejdsstationer inkluderet og månedlig fakturering. Du får på forhånd et tilbud på integrationen ud fra dine processer og behov sammen med dit abonnement, så du kender den samlede pris, før du starter. Se priser og funktioner, og læs, hvordan Exact Onlines egen planlægning klarer sig, i produktionsplanlægning med begrænset maskin- og personalekapacitet i Exact Online. Du finder overblikket på siden om Exact Online og andre ERP-systemer i oversigten over ERP-integrationer.

Produktionsvirksomheders erfaringer med SkyPlanner

Færrestop på grund af materialemangel

“Værdien af SkyPlanner for os er, at det er et værktøj, der fungerer i hverdagen, især når vi skal fastlægge leveringsdatoer.”

Tommi Männistö, chef for produktionsplanlægning
Eskomatic · Spåntagende bearbejdning som underleverandør

Automatisk planlægning af belastningen giver mere præcise leveringsdatoer, og antallet af produktionsstop på grund af materialemangel er faldet markant.

Læs om Eskomatics erfaringer

Hannu Ryynänen, administrerende direktør for Mamec, i virksomhedens produktionshal i Lohja

1.000-vis afarbejdsordrer planlægges automatisk

“Vi har styr på produktionen på en helt anden måde, og vores forståelse af kapaciteten er på et helt andet niveau.”

Hannu Ryynänen, administrerende direktør
Mamec · Industrielle blandere, pumper og højteknologisk kontraktproduktion

Tusindvis af arbejdsordrer planlægges automatisk, og hele organisationen har overblik over produktionen i realtid.

Læs om Mamecs erfaringer

Ofte stillede spørgsmål

Omfatter Exact Online API produktionsordrer og rutetrin?

Ja. Produktionstjenesten indeholder ShopOrders, ShopOrderRoutingStepPlans, ShopOrderMaterialPlans, Workcenters, Operations og BOM-ressourcer, som alle kan læses og skrives. Tidsforbrug registreres via TimeTransactions, og færdigproducerede mængder via ShopOrderReceipts.

Hvordan skrives de planlagte datoer tilbage til Exact Online?

SkyPlanner sender en PUT-anmodning til ShopOrderRoutingStepPlans med PlannedStartDate, PlannedEndDate og Workcenter for hvert trin, der placeres eller flyttes. Produktionsordrens PlannedStartDate og PlannedDate opdateres tilsvarende.

Hvem bygger integrationen til Exact Online?

SkyPlanner-teamet tilpasser tovejsintegrationen til jeres Exact Online-opsætning under opstarten og yder support, efter at den er sat i drift. Jeres Exact-partner kan deltage. Jeres egne udviklere kan også bygge integrationen ved hjælp af SkyPlanners dokumenterede REST API. Et API-token er nok til at komme i gang.

Kan Exact Online sende ændringer i realtid?

Exact Online sender ændringer i varer, lagerbeholdninger, indkøbsordrer og salgsordrer via webhooks. Produktionsordrer og rutetrin læses med korte intervaller via filtrerede forespørgsler. I den modsatte retning sender SkyPlanners webhooks ændringer i produktionsplanen, så snart de sker.

Kan vi teste SkyPlanner, før vi bygger integrationen?

Ja. I den gratis prøveperiode på 30 dage kan I bruge op til 20 arbejdsstationer og importere jeres produktionsordrer fra CSV eller Excel. Det kræver ikke kreditkort. Start prøveperioden, eller tal med salg for at afklare integrationens omfang.