Integrationer / ERP / ProShop ERP

Guide til ProShop ERP integration med SkyPlanner APS til produktionsplanlægning

Denne integrationsguide viser administratorer, konsulenter og IT-teams, hvordan de forbinder ProShop ERP med SkyPlanner APS. SkyPlanner integreres med ProShop i begge retninger via ProShops egen API:

  • Work Orders med tilhørende operationer, Parts, Work Order BOM-poster, Work Cells, Users, Tools, Fixtures og Purchase Orders overføres til SkyPlanner.
  • Planlagte start- og slutdatoer skrives tilbage til produktionsordrerne.
  • Operatørernes tidsregistreringer kan skrives tilbage til ProShop Time Tracking, hvis I ønsker det.
  • SkyPlanner-webhooks sender ændringer i planen, så snart de sker.
Gantt-tidslinje i SkyPlanner APS med opgaver fordelt på arbejdsstationer og en ordreliste nedenunder.

SkyPlanner-teamet tilpasser integrationen til jeres ProShop-opsætning under onboarding 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).

ProShops integrationsgrænseflader

ProShop tilbyder to integrationsveje til et eksternt planlægningssystem. Begge er beskrevet i ProShop API Developer Documents:

  1. ProShop GraphQL API. “ProShop provides a GraphQL API, available via HTTP(S).” (ProShop stiller en GraphQL API til rådighed via HTTP(S).) Der er ét endpoint: Alle kald er HTTP POST til <proshop root>/api/graphql med query, variables og operationName i en JSON-body. Hvert modul har en forespørgsel i ental til én post og en forespørgsel i flertal til lister. Lister sideinddeles med pageSize (standard 20) og pageStart, returnerer records og totalRecords og accepterer argumenterne filter og query, som svarer til modulets Advanced Search. Skemaet understøtter introspektion. (Introduktion til ProShop API)
  2. Recently Updated Records API. “A simple REST interface allows external integrations to request information between arbitrary points in time.” (En enkel REST-grænseflade lader eksterne integrationer hente oplysninger mellem vilkårlige tidspunkter.) Kald <proshop root>/recentlyupdatedrecords med start (ISO 8601) og eventuelt end og filterby, for eksempel workorders,workcells,purchaseorders,timetracking,deletions. ProShop-teamet skal først aktivere indekset. (Recently Updated Records API)

Skrivning sker via GraphQL-mutationer. Time Tracking Login er det dokumenterede eksempel, og skriveadgang tildeles pr. modul via scopes.

Autentificering og scopes

  • Adgangstoken ved hvert kald. Send det som Authorization: Bearer <token> eller som query-parameteren token.
  • OAuth 2.0 Client Credentials (ProShop 5.2.3 og nyere). En ProShop-systemadministrator åbner System Config > Manage Authorizations, opretter en Authorization med Name og Maximum Scope og markerer Direct Login og Active. Unique ID og Shared Secret bruges som client_id og client_secret. Appen sender grant_type=client_credentials med POST til <proshop root>/home/member/oauth/accesstoken og modtager et Bearer-token med expires_in. Der er intet refresh-token, så anmod om et nyt token, når det udløber. (Forløb med Client Credentials)
  • OAuth 2.0 Authorization Flow til kald, der kræver en brugerkontekst, såsom Time Tracking Login.
  • Scopes. Formatet er SCOPE_NAME:[{r|w|d|p}] for læsning, skrivning, sletning og præferencer. Et planlægningssystem anmoder typisk om workorders:rw parts:r purchaseorders:r users:r tools:r samt Time Tracking, hvis tidsregistreringer skrives tilbage. Fra ProShop 5.1.9 gælder: “a scope grant request is now required on all connections to the API.” (Alle forbindelser til API’et kræver nu en anmodning om tildeling af scopes.) (Scopes til autorisation)
  • Revisionsspor. Ved kald med klientlegitimationsoplysninger vises applikationens navn, ikke en bruger.

På SkyPlanner-siden sker autentificering til REST API med et API-token i headeren Authorization-Token (SkyPlanner Settings > API). API’et er dokumenteret i Swagger/OpenAPI. Integrationsvejledningen gennemgår de første kald.

Hændelser og polling

ProShops udviklerdokumentation beskriver hverken udgående webhooks eller GraphQL-abonnementer. Data fra ProShop hentes derfor med polling, og Recently Updated Records API holder ressourceforbruget nede: Hent alt, der er oprettet, ændret eller slettet siden sidste kørsel, filtreret til de posttyper, planen har brug for. Hent derefter de ændrede produktionsordrer via deres nummer med GraphQL. Ifølge ProShop er det hurtigere end at søge på lastModifiedTime.

Et typisk valg er at hente produktionsordrer og tidsregistreringer hvert femte minut og emner og indkøbsordrer hver time. SkyPlanner sender webhooks, når tilstanden eller planen ændres, så tilbageskrivningen er hændelsesstyret.

Datamapping

ProShop-objekt (API)Objekt i SkyPlannerRetningHyppighed
Parts, COTS (GraphQL-scope parts)Produkter og materialerProShop → SkyPlannerFørste indlæsning, derefter ved ændringer
Work Order BOM-posterProduktstruktur, materialer pr. ordreProShop → SkyPlannerMed hver produktionsordre
Operationer på produktionsordren: arbejdscelle, estimeret opstillings- og cyklustid (normtider)Procestrin med varighed samt opstillings- og nedtagningstiderProShop → SkyPlannerMed hver produktionsordre
Work Cells (maskine, arbejdsbord, udstyr)Arbejdsstationer, grupper af arbejdsstationer, effektivitetsgraderProShop → SkyPlannerVed første indlæsning, derefter sjældent
Work Cells tildelt personer, UsersPersonale og operatørtildelingerProShop → SkyPlannerVed første indlæsning, derefter ved ændringer
Arbejdscellernes kalendere (tilgængelige timer, skift)Skift og arbejdsfri dageProShop → SkyPlannerDagligt, eller vedligehold skiftene i SkyPlanner
Work Orders (antal, leveringsdato, status)Ordrer og opgaver med leveringsdatoer og prioritetProShop → SkyPlannerPolling med få minutters mellemrum
Tools, Toolpots, Fixtures, RTAsVærktøjer som fælles ressourcer med begrænset kapacitetProShop → SkyPlannerVed første indlæsning, derefter ved ændringer
Purchase Orders med leveringsdatoerIndkøbsordrer, indgående materialer efter leveringsdatoProShop → SkyPlannerPolling hver time eller ved planlægningskørsel
Produktionsordrens planlagte start og slut (GraphQL-mutation, workorders:w)Planlagt start og slut pr. opgaveSkyPlanner → ProShopVed planændringer via en SkyPlanner-webhook
Time Tracking: opstillings- og køretid samt færdige emner pr. operation på produktionsordrenTidsregistreringer og operatørtilbagemeldingerSkyPlanner → ProShopPr. tilbagemelding eller pr. skift, hvis det tilvælges
Findes ikke i ProShopOmstillingstidsmatrix, opgaver med flere operatører, alternative maskiner og medarbejdereVedligeholdes i SkyPlannerOpsættes under onboarding

Integrationsmønstre

1. Første indlæsning af stamdata. Hent Parts, Work Cells, Users, Tools og Fixtures side for side med GraphQL-forespørgsler i flertal. Sæt pageSize højt ved første indlæsning, og gentag hentningen ud fra totalRecords. Fastlæg, hvordan arbejdscellerne skal mappes: Arbejdsceller, der repræsenterer maskiner, bliver til arbejdsstationer, og arbejdsceller, der repræsenterer personer, bliver til personale, så samme operation kan reservere en maskine og dens operatør samlet.

2. Synkronisering af produktionsordrer. Hent aktive produktionsordrer med tilhørende operationer, normtider og BOM-poster samt åbne indkøbsordrer. SkyPlanner regner bestilte materialer som tilgængelige på indkøbsordrens leveringsdato og opdaterer lagerbeholdningen, når indkøbsordren markeres som Delivered. Ændringer registreres via Recently Updated Records med filterby=workorders,purchaseorders,deletions.

3. Tilbageskrivning af planen. Når planlægningsmotoren placerer eller flytter en opgave, udløser en SkyPlanner-webhook en GraphQL-mutation, som sætter produktionsordrens planlagte datoer via en Authorization med workorders:w. ProShops prognose for rettidig levering og behovsdatoerne for indkøb baseres derefter på SkyPlanners datoer.

4. Tilbagemeldinger fra produktionen. Operatørerne registrerer arbejdet med SkyPlanner Mobile Confirmations eller Production Timer, og tidsregistreringerne holder planen ajour. I vælger, om den faktiske tid skal skrives tilbage til ProShop Time Tracking på produktionsordrens operation. Hvis ikke, registrerer operatørerne tiden i ProShop som hidtil, og SkyPlanner henter den via timetracking.

5. Dataejerskab og konfliktregler. Skriv dem ned inden idriftsættelsen:

DataEjer
Emner, operationer, normtider, antal, produktionsordrestatusProShop
Operationernes rækkefølge, start- og sluttider, tildeling af maskiner og operatørerSkyPlanner
Omstillingstidsmatrix, krav til værktøjer og operatører, alternative ressourcerSkyPlanner
Skift og arbejdsfri dageÉt system, valgt under afklaringen
Time Tracking, lager, indkøb, ordrekalkulationProShop, med direkte registrering eller overførsel fra SkyPlanners tidsregistreringer

Vælg ét system til at skrive produktionsordrernes datoer. Når SkyPlanner overtager planlægningen af en arbejdscelle, holder planlæggerne op med at ændre rækkefølgen på cellens liste i ProShop. Så konkurrerer de to planer aldrig.

Typiske trin i projektet

Implementeringen er normalt færdig inden for uger efter starten på onboarding. Inden da skal I validere planen i den gratis prøveperiode på 30 dage med arbejdsceller, operationer og åbne produktionsordrer eksporteret fra ProShop som CSV eller Excel.

  1. Mapping. Fastlæg mappingtabellen, regler for dataejerskab, synkroniseringsfrekvenser og om tidsregistreringer skal skrives tilbage.
  2. Adgang til ProShop. Administratoren opretter en Authorization med det aftalte Maximum Scope og beder ProShop-teamet om at aktivere Recently Updated Records.
  3. Første indlæsning. Parts, Work Cells, Users, Tools, Fixtures og arbejdscellernes kalendere.
  4. Synkronisering af produktions- og indkøbsordrer. Polling efter ændringer med sideinddeling og gentagne forsøg ved fejl.
  5. Opsætning af begrænsninger i SkyPlanner. Omstillingstidsmatrix, værktøjer, antal operatører pr. operation og alternative maskiner eller medarbejdere.
  6. Tilbageskrivning af planen. Mutationer udløst af webhooks fra SkyPlanner samt Time Tracking, hvis det er valgt.
  7. Parallel test. Kør SkyPlanner sideløbende med den nuværende plan i ProShop, sammenlign datoerne, og ret normtiderne.
  8. Idriftsættelse. Aktivér tilbageskrivning, når data stemmer overens.

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

  • Normtiderne er afgørende. ProShop beregner varigheden ud fra estimerede omstillings- og cyklustider. Hent de aktuelle normtider, ikke det oprindelige estimat, og hold omstillingstid adskilt fra køretid, så omstillingsmatricen kan erstatte den faste omstillingstid.
  • Personer som arbejdsceller. En arbejdscelle kan være en person. Knyt disse arbejdsceller til personale i SkyPlanner, ikke til maskiner. Ellers behandles hver operatør som en maskine, der kan køre parallelt med de øvrige.
  • Time Tracking kræver en bruger. Siden april 2026 har mutationen Time Tracking Login haft kravet “requires user context” (kræver brugerkontekst) og er ikke tilladt med Client Credentials. Send operatørernes tidsregistreringer via OAuth 2.0 Authorization Flow, eller behold tidsregistreringen i ProShop, og læs den derfra.
  • Aktivér ændringsindekset. Recently Updated Records virker først, når ProShop-teamet har aktiveret det. Bed om det i den første uge.
  • ITAR-poster. ProShop filtrerer ITAR-begrænsede poster for hver forbindelse, og en indstilling i Developer System Config afgør, om de returneres som null-værdier eller udelades. Aftal, hvilke produktionsordrer integrationen har adgang til, og håndtér null-værdier ved hver læsning.
  • Ekstern bearbejdning. Operationer hos leverandører tager tid, men belaster ikke din kapacitet. Modellér dem som trin, der kun optager tid.

Hvem konfigurerer og supporterer ProShop-integrationen?

  1. SkyPlanner-teamet konfigurerer integrationen under opstarten og yder support efter idriftsættelsen. Det omfatter de aftalte GraphQL-forespørgsler, mutationer og polling efter ændringer. Hver virksomhed bruger ProShop på sin egen måde, og den viden indgår i opsætningen.
  2. Din ProShop-administrator eller -konsulent deltager. De opretter Authorization, angiver scopes, anmoder om ændringsindekset og kender opsætningen af dine arbejdsceller.
  3. Dine egne udviklere kan bygge videre på integrationen via SkyPlanners REST API med et API-token. Et API-token er nok til at komme i gang, og SkyPlanner-teamet hjælper efter behov. Du finder dokumentationen i SkyPlanners integrationsdokumentation.

SkyPlanner fås fra 199 € pr. måned med 5 arbejdsstationer inkluderet og månedlig fakturering. Du får på forhånd et tilbud på integrationen sammen med dit abonnement, tilpasset dine processer og behov. Se priser, produktionsplanlægning med ProShop, der tager højde for maskinernes og medarbejdernes faktiske kapacitet, siden om ProShop ERP, SkyPlanners funktioner og oversigten over ERP-integrationer.

Produktionsvirksomheders erfaringer med SkyPlanner

Kalle Kalliomäki, forsyningskædespecialist hos UTU, i eltavleproduktionen i Ulvila

2 hsparet hver uge

“SkyPlanner har flyttet vores produktionsplanlægning fra Excel-regneark til optimering af produktionen i realtid.”

Kalle Kalliomäki, forsyningskædespecialist
UTU · Eltavler og koblingsanlæg

Produktionsplanlægningen sparer 2 timers arbejdstid hver uge, og en ny opgavekø når ud til produktionslinjen på få sekunder.

Læs UTU’s anmeldelse

Operatører i renrumsdragter ved en flaskepåfyldningslinje på Laboratory & Allieds lægemiddelfabrik i Nairobi

+90%produktionseffektivitet

“Effektiviteten i produktionen er steget med 90%.”

Abdul Rucyinga, IT-chef
Laboratory & Allied · Lægemiddelproduktion

Produktionseffektiviteten er steget med 90%, og det tager under 30 minutter at lave en optimeret plan for tre måneder på tværs af alle arbejdsstationer.

Læs Laboratory & Allieds anmeldelse

En svejser fra KJH-Comp sliber en svejst stålkonstruktion på fabrikken i Alahärmä

98%leveringssikkerhed, op fra ca. 50%

“SkyPlanner spiller en afgørende rolle i at opretholde vores leveringssikkerhed.”

Hannu Lahtinen, administrerende direktør
KJH-Comp · Pladebearbejdning og kontraktproduktion

Leveringssikkerheden steg fra omkring 50% til helt op til 98%, og planlægningen kræver nu én arbejdsleder i stedet for to.

Læs KJH-Comps anmeldelse

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

1.000-visaf produktionsordrer planlagt automatisk

“Vi har fået 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 produktionsordrer planlægges automatisk, og hele organisationen har overblik over produktionen i realtid.

Læs Mamecs anmeldelse

Ofte stillede spørgsmål

Har ProShop et API?

Ja. ProShop har et GraphQL API på <proshop root>/api/graphql med OAuth 2.0 eller Basic Authentication og scopes for de enkelte moduler. Et REST-endpoint, Recently Updated Records, returnerer poster, der er oprettet, ændret eller slettet inden for et tidsinterval.

Understøtter ProShop webhooks?

ProShops udviklerdokumentation beskriver ingen udgående webhooks. Integrationen forespørger Recently Updated Records API med et interval, der fastlægges for den enkelte virksomhed. SkyPlanners egne webhooks sender ændringer i planen, så snart de sker.

Hvordan skrives planlagte datoer tilbage til ProShop?

Via en GraphQL-mutation på produktionsordren med en Authorization, der har skrivescope til workorders. SkyPlanner udløser mutationen via en webhook, hver gang planen ændres.

Hvem opretter adgangsoplysningerne til ProShops API?

Det gør en ProShop-systemadministrator under System Config > Manage Authorizations. Direct Login aktiverer Client Credentials-flowet, og Maximum Scope begrænser, hvad integrationen kan læse og skrive.

Bør en ProShop-konsulent anbefale ProShops produktionsplanlægning eller SkyPlanner?

SkyPlanner, når rækkefølgen i kundens produktion er afgørende for leveringen. ProShops plan viser prioritet og prognoser for rettidig levering pr. arbejdscelle, og planlæggerne justerer prioriteterne. SkyPlanner forbindes via GraphQL API, optimerer automatisk hele planen og planlægger omstillinger, operatører, værktøjer og materialer. Det inkluderer et ubegrænset antal brugere og fås fra 199 € pr. måned.

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

Ja. Den gratis prøveperiode på 30 dage understøtter op til 20 arbejdsstationer med import fra ProShop via CSV eller Excel. Det kræver ikke noget kreditkort. Start prøveperioden, eller tal med salg for at få afklaret integrationens omfang.