Integraatiot / ERP / ProShop ERP
ProShop ERP -integraatio-opas tuotannonsuunnitteluun SkyPlanner APS:llä
Tämä ProShop-integraatio-opas kertoo pääkäyttäjille, konsulteille ja IT-tiimeille, miten ProShop ERP yhdistetään SkyPlanner APS:ään. SkyPlannerin ja ProShopin välinen integraatio toimii molempiin suuntiin ProShopin oman API:n kautta:
- SkyPlanneriin tuodaan Work Orders työvaiheineen sekä Parts, Work Order BOM -tietueet, Work Cells, Users, Tools, Fixtures ja Purchase Orders.
- Suunnitellut aloitus- ja lopetuspäivämäärät viedään takaisin työmääräimille.
- Työntekijöiden työajat voidaan halutessasi viedä takaisin ProShop Time Tracking -moduuliin.
- SkyPlannerin webhookit lähettävät aikataulumuutokset heti niiden tapahtuessa.
SkyPlanner-tiimi määrittää integraation ProShop-ympäristöösi sopivaksi käyttöönoton aikana ja tukee sitä myös tuotantokäytön alettua. Tämä opas on tarkoitettu kumppaneille ja kehittäjille, jotka haluavat osallistua toteutukseen tai rakentaa itse ratkaisuja SkyPlannerin dokumentoidun REST API:n pohjalta (API-viite).
ProShopin integraatiorajapinnat
ProShop tarjoaa ulkoiselle tuotannonsuunnitteluohjelmistolle kaksi vaihtoehtoa, jotka on kuvattu ProShop API Developer Documents -dokumentaatiossa:
- ProShop GraphQL API. “ProShop provides a GraphQL API, available via HTTP(S).” (ProShop tarjoaa GraphQL API:n, jota voi käyttää HTTP(S):n kautta.) Rajapinnassa on yksi päätepiste: jokainen kutsu on HTTP POST osoitteeseen
<proshop root>/api/graphql, ja sen JSON-rungossa ovatquery,variablesjaoperationName. Jokaisessa moduulissa on yksikkömuotoinen kysely yhden tietueen hakemiseen ja monikkomuotoinen kysely listojen hakemiseen. Listat sivutetaan parametreillapageSize(oletusarvo 20) japageStart. Vastauksessa palautuvatrecordsjatotalRecords. Listakyselyt hyväksyvät myösfilter– jaquery-argumentit, jotka vastaavat kunkin moduulin Advanced Search -toimintoa. Skeemaa voi tarkastella introspektiolla. (Johdanto ProShop API:n käyttöön) - Recently Updated Records API. “A simple REST interface allows external integrations to request information between arbitrary points in time.” (Yksinkertaisen REST-rajapinnan kautta ulkoiset integraatiot voivat pyytää tietoja vapaasti valitulta aikaväliltä.) Kutsu osoitetta
<proshop root>/recentlyupdatedrecordsparametrillastart(ISO 8601) sekä valinnaisilla parametreillaendjafilterby, esimerkiksiworkorders,workcells,purchaseorders,timetracking,deletions. ProShop-tiimin on ensin otettava indeksi käyttöön. (Recently Updated Records API)
Kirjoitukset tehdään GraphQL-mutaatioilla. Dokumentaatiossa esimerkkinä on Time Tracking Login, ja kirjoitusoikeudet myönnetään moduulikohtaisesti scopeilla.
Todennus ja scopet
- Käyttöoikeustunnus jokaiseen kutsuun. Lähetä se muodossa
Authorization: Bearer <token>taitoken-kyselyparametrina. - OAuth 2.0 Client Credentials (ProShop 5.2.3 ja uudemmat). ProShopin järjestelmänvalvoja avaa kohdan System Config > Manage Authorizations, luo Authorization-määrityksen, jossa ovat Name ja Maximum Scope, ja valitsee Direct Login– ja Active-valintaruudut. Unique ID ja Shared Secret vastaavat arvoja
client_idjaclient_secret. Sovellus lähettää POST-pyynnöllä arvongrant_type=client_credentialsosoitteeseen<proshop root>/home/member/oauth/accesstokenja saa Bearer-tunnuksen sekäexpires_in-arvon. Uusimistunnusta ei ole, joten pyydä uusi tunnus edellisen vanhentuessa. (Client Credentials -kulku) - OAuth 2.0 Authorization Flow kutsuille, jotka tarvitsevat käyttäjäkontekstin, kuten Time Tracking Login.
- Scopet. Muoto on
SCOPE_NAME:[{r|w|d|p}], jossa kirjaimet tarkoittavat luku-, kirjoitus-, poisto- ja asetusoikeuksia. Tuotannonsuunnitteluohjelmisto pyytää yleensä oikeudetworkorders:rw parts:r purchaseorders:r users:r tools:rsekä Time Tracking -oikeudet, jos työajat viedään takaisin. ProShop-versiosta 5.1.9 alkaen “a scope grant request is now required on all connections to the API.” (Kaikki API-yhteydet edellyttävät nyt scope-oikeuksien myöntämispyyntöä.) (Valtuutuksen scopet) - Jäljitysloki. Sovelluksen tunnuksilla tehdyissä kutsuissa näkyy sovelluksen nimi, ei käyttäjän nimeä.
SkyPlannerin REST API käyttää todennukseen API-tunnusta, joka lähetetään Authorization-Token-otsakkeessa (SkyPlanner Settings > API). Rajapinta on dokumentoitu Swagger/OpenAPI-muodossa. Integraatio-opas käy läpi ensimmäiset kutsut.
Tapahtumat ja pollaus
ProShopin kehittäjädokumentaatiossa ei kuvata lähteviä webhookeja eikä GraphQL-tilauksia. ProShopin tietoja haetaan pollauksella, ja Recently Updated Records API pitää sen kevyenä: pyydä kaikki edellisen ajon jälkeen luodut, muokatut tai poistetut tietueet ja rajaa haku tuotantosuunnitelman tarvitsemiin tietuetyyppeihin. Hae sitten muuttuneet työmääräimet numeron perusteella GraphQL:n kautta. ProShopin mukaan se on nopeampaa kuin haku kentällä lastModifiedTime.
Työmääräimet ja työajanseurannan tiedot haetaan tyypillisesti viiden minuutin välein, nimikkeet ja ostotilaukset tunnin välein. SkyPlanner lähettää webhookeja tilan tai tuotantosuunnitelman muuttuessa, joten tietojen vienti takaisin ProShopiin on tapahtumapohjaista.
Tietojen vastaavuudet
| ProShop-objekti (API) | SkyPlannerin objekti | Suunta | Siirtotiheys |
|---|---|---|---|
Parts, COTS (GraphQL-scope parts) | Tuotteet ja materiaalit | ProShop → SkyPlanner | Alkulataus, sen jälkeen muutosten yhteydessä |
| Work Order BOM -tietueet | Tuoterakenne, tilauskohtaiset materiaalit | ProShop → SkyPlanner | Kunkin työmääräimen yhteydessä |
| Työmääräimen työvaiheet: työsolu, arvioitu asetus- ja jaksoaika (tavoiteajat) | Työvaiheet kestoineen sekä asetus- ja purkuaikoineen | ProShop → SkyPlanner | Kunkin työmääräimen yhteydessä |
| Work Cells (kone, työpenkki, laite) | Työpisteet, työpisteryhmät, tehokkuudet | ProShop → SkyPlanner | Alkulataus, sen jälkeen harvoin |
| Henkilöille määritetyt Work Cells, Users | Henkilöstö ja työntekijöiden kohdistukset | ProShop → SkyPlanner | Alkulataus, sen jälkeen muutosten yhteydessä |
| Työsolujen kalenterit (käytettävissä olevat tunnit, työvuorot) | Työvuorot ja vapaapäivät | ProShop → SkyPlanner | Päivittäin, tai työvuoroja ylläpidetään SkyPlannerissa |
| Work Orders (määrä, määräpäivä, tila) | Tilaukset ja työt määräpäivineen ja prioriteetteineen | ProShop → SkyPlanner | Pollaus muutaman minuutin välein |
| Tools, Toolpots, Fixtures, RTAs | Työkalut yhteisinä resursseina, joiden määrä on rajallinen | ProShop → SkyPlanner | Alkulataus, sen jälkeen muutosten yhteydessä |
| Purchase Orders määräpäivineen | Ostotilaukset, saapuva materiaali toimituspäivän mukaan | ProShop → SkyPlanner | Pollaus tunnin välein tai suunnitteluajon yhteydessä |
Työmääräimen suunniteltu aloitus ja lopetus (GraphQL-mutaatio, workorders:w) | Työkohtainen suunniteltu aloitus ja lopetus | SkyPlanner → ProShop | Tuotantosuunnitelman muuttuessa SkyPlannerin webhookin kautta |
| Time Tracking: asetus- ja käyntiaika sekä valmistuneet kappaleet työmääräimen työvaiheittain | Aikakirjaukset ja työntekijöiden kuittaukset | SkyPlanner → ProShop | Kuittaus- tai työvuorokohtaisesti, jos valittu käyttöön |
| Ei ProShopissa | Asetusaikamatriisi, usean työntekijän työt, vaihtoehtoiset koneet ja henkilöt | Ylläpidetään SkyPlannerissa | Määritetään käyttöönoton aikana |
Integraation toteutustavat
1. Perustietojen alkulataus. Hae Parts-, Work Cells-, Users-, Tools- ja Fixtures-tietueet sivuittain GraphQL:n monikkomuotoisilla kyselyillä. Aseta pageSize suureksi ensimmäistä latausta varten ja jatka hakua totalRecords-arvon mukaan. Päätä työsolujen vastaavuudet: koneita kuvaavista työsoluista tulee työpisteitä ja henkilöitä kuvaavista työsoluista henkilöstöä. Näin sama työvaihe voi varata sekä koneen että sen käyttäjän.
2. Työmääräimien synkronointi. Lue aktiiviset työmääräimet työvaiheineen, tavoiteaikoineen ja BOM-tietueineen sekä avoimet ostotilaukset. SkyPlanner käsittelee tilattua materiaalia saatavilla olevana ostotilauksen toimituspäivänä ja päivittää varastosaldon, kun ostotilaus merkitään Delivered-tilaan. Muutokset tunnistetaan Recently Updated Records -rajapinnan kautta parametrilla filterby=workorders,purchaseorders,deletions.
3. Tuotantosuunnitelman vienti takaisin. Kun suunnittelumoottori sijoittaa tai siirtää työn, SkyPlannerin webhook käynnistää GraphQL-mutaation, joka asettaa työmääräimen suunnitellut päivämäärät. Tähän käytetään Authorization-määritystä, jolla on workorders:w-oikeus. ProShopin ennuste aikataulussa pysymisestä ja hankintojen tarvepäivät perustuvat tämän jälkeen SkyPlannerin päivämääriin.
4. Tuotannon kuittaukset. Työntekijät kirjaavat työnsä SkyPlanner Mobile Confirmations- tai Production Timer -toiminnolla, ja aikakirjaukset pitävät tuotantosuunnitelman ajan tasalla. Päätät itse, viedäänkö toteutuneet työajat ProShop Time Tracking -moduuliin työmääräimen työvaiheelle. Jos niitä ei viedä, työntekijät kirjaavat aikansa ProShopiin kuten ennenkin, ja SkyPlanner lukee ne timetracking-toiminnon kautta.
5. Tietojen omistajuus ja ristiriitojen käsittely. Kirjaa säännöt ennen tuotantokäytön aloitusta:
| Tiedot | Omistaja |
|---|---|
| Nimikkeet, työvaiheet, tavoiteajat, määrät, työmääräimen tila | ProShop |
| Työvaiheiden järjestys, aloitus- ja lopetusajat, koneiden ja työntekijöiden kohdistukset | SkyPlanner |
| Asetusaikamatriisi, työkalu- ja työntekijävaatimukset, vaihtoehtoiset resurssit | SkyPlanner |
| Työvuorot ja vapaapäivät | Yksi määrittelyssä valittu järjestelmä |
| Time Tracking, varasto, hankinnat, työkohtainen kustannuslaskenta | ProShop; tiedot kirjataan siellä tai tuodaan SkyPlannerin aikakirjauksista |
Valitse vain yksi järjestelmä kirjoittamaan työmääräimien päivämäärät. Kun SkyPlanner suunnittelee työsolun työt, suunnittelijat eivät enää muuta kyseisen työsolun työjärjestystä ProShopissa. Näin kaksi suunnitelmaa eivät kilpaile keskenään.
Projektin tyypilliset vaiheet
Toteutus valmistuu tavallisesti viikkojen kuluessa käyttöönoton alkamisesta. Varmista sitä ennen tuotantosuunnitelman toimivuus 30 päivän maksuttomalla kokeilujaksolla. Käytä siihen ProShopista CSV- tai Excel-muodossa vietyjä työsoluja, työvaiheita ja avoimia työmääräimiä.
- Tietojen vastaavuudet. Sovi vastaavuustaulukosta, tietojen omistajuudesta, synkronointiväleistä ja siitä, viedäänkö työajat takaisin.
- ProShopin käyttöoikeudet. Järjestelmänvalvoja luo Authorization-määrityksen sovitulla Maximum Scope -arvolla ja pyytää ProShop-tiimiä ottamaan Recently Updated Records -rajapinnan käyttöön.
- Alkulataus. Parts, Work Cells, Users, Tools, Fixtures sekä työsolujen kalenterit.
- Työmääräimien ja ostotilausten synkronointi. Muutosten pollaus, jossa käytetään sivutusta ja uudelleenyrityksiä.
- Rajoitteiden määritys SkyPlannerissa. Asetusaikamatriisi, työkalut, työvaihekohtaiset työntekijämäärät sekä vaihtoehtoiset koneet tai henkilöt.
- Tuotantosuunnitelman vienti takaisin. SkyPlannerin webhookien käynnistämät mutaatiot sekä Time Tracking, jos se valitaan käyttöön.
- Rinnakkaistestaus. Käytä SkyPlanneria nykyisen ProShop-suunnitelman rinnalla, vertaa päivämääriä ja korjaa tavoiteajat.
- Tuotantokäyttöön siirtyminen. Ota takaisinkirjoitus käyttöön, kun tiedot täsmäävät.
Mitä ProShop-integraatiossa on huomioitava
- Tavoiteajat ratkaisevat kaiken. ProShop laskee keston arvioiduista asetus- ja jaksoajoista. Hae nykyiset tavoiteajat alkuperäisen arvion sijaan ja erota asetusaika valmistusajasta, jotta asetusaikamatriisi voi korvata yksittäisen asetusaika-arvon.
- Henkilöt työsoluina. Työsolu voi olla henkilö. Kohdista tällaiset työsolut SkyPlannerin henkilöihin, älä koneisiin. Muuten jokaisesta työntekijästä tulee rinnakkainen kone.
- Time Tracking tarvitsee käyttäjän. Huhtikuusta 2026 lähtien Time Tracking Login -mutaatio ”requires user context” (edellyttää käyttäjäkontekstia), eikä sitä voi valtuuttaa Client Credentials -menetelmällä. Lähetä työntekijöiden aikakirjaukset OAuth 2.0 Authorization Flow -menetelmällä tai jatka työaikojen kirjaamista ProShopiin ja lue ne sieltä.
- Ota muutosindeksi käyttöön. Recently Updated Records toimii vasta, kun ProShopin tiimi on ottanut sen käyttöön. Pyydä käyttöönottoa ensimmäisellä viikolla.
- ITAR-tietueet. ProShop suodattaa ITAR-rajoitusten alaiset tietueet yhteyskohtaisesti. Developer System Config -asetus määrittää, palautetaanko ne null-arvoina vai jätetäänkö ne pois. Sovi, mitkä työmääräimet integraatio näkee, ja käsittele null-arvot jokaisella lukukerralla.
- Alihankintavaiheet. Toimittajilla tehtävät työvaiheet vievät aikaa mutta eivät kuluta omaa kapasiteettiasi. Mallinna ne pelkkään kestoon perustuvina vaiheina.
Kuka määrittää ProShop-integraation ja vastaa sen tuesta
- SkyPlannerin tiimi määrittää integraation käyttöönoton yhteydessä ja tukee sitä tuotantokäytössä. Tuki kattaa sovitut GraphQL-kyselyt, mutaatiot ja muutosten säännöllisen kyselyn. Jokainen tehdas käyttää ProShopia omalla tavallaan, ja nämä käytännöt huomioidaan tässä vaiheessa.
- ProShop-pääkäyttäjänne tai -konsulttinne osallistuu työhön. Hän luo Authorization-määrityksen, asettaa käyttöoikeuksien laajuudet, pyytää muutosindeksin käyttöönottoa ja tuntee työsolujenne määritykset.
- Omat kehittäjänne voivat laajentaa integraatiota SkyPlannerin REST API -rajapinnan kautta API-tunnisteella. Alkuun pääsee pelkällä API-tunnisteella, ja SkyPlannerin tiimi auttaa tarvittaessa. Ohjeet löytyvät SkyPlannerin integraatiodokumentaatiosta.
SkyPlannerin hinta on alkaen 199 € kuukaudessa kuukausilaskutuksella, ja hintaan sisältyy 5 työpistettä. Integraatiosta annetaan etukäteen prosessisi ja tarpeidesi mukainen tarjous valitsemasi paketin yhteydessä. Tutustu hinnastoon, ProShopin hienokuormitukseen, ProShop ERP -sivuun, SkyPlannerin ominaisuuksiin ja ERP-integraatioiden koontisivuun.
Valmistavan teollisuuden kokemuksia SkyPlannerista
2 hsäästöä joka viikko
”SkyPlanner on vienyt tuotannonsuunnittelumme Excel-taulukoista reaaliaikaiseen tuotannon optimointiin.”
Kalle Kalliomäki, toimitusketjuasiantuntija
UTU · Sähkökeskukset ja kojeistot
Tuotannonsuunnittelu säästää 2 tuntia työaikaa joka viikko, ja uusi työjono saadaan linjalle sekunneissa.
+90%tuotannon tehokkuutta
”Tuotannon tehokkuus on kasvanut 90 %.”
Abdul Rucyinga, IT-johtaja
Laboratory & Allied · Lääkevalmistus
Tuotannon tehokkuus on kasvanut 90 %, ja kaikki työpisteet kattava optimoitu suunnitelma kolmeksi kuukaudeksi valmistuu alle 30 minuutissa.
98%toimitusvarmuus, nousua noin 50 %:sta
”SkyPlannerilla on ratkaiseva rooli toimitusvarmuutemme ylläpitämisessä.”
Hannu Lahtinen, toimitusjohtaja
KJH-Comp · Ohutlevymekaniikka ja sopimusvalmistus
Toimitusvarmuus nousi noin 50 %:sta jopa 98 %:iin, ja tuotannonsuunnitteluun tarvitaan nyt kahden työnjohtajan sijaan yksi.
1 000:iatyömääräimiä aikataulutetaan automaattisesti
”Tuotanto on aivan eri tavalla hallinnassa, ja ymmärryksemme kapasiteetista on täysin eri tasolla.”
Hannu Ryynänen, toimitusjohtaja
Mamec · Teollisuussekoittimet, pumput ja korkean teknologian sopimusvalmistus
Tuhansien työmääräinten aikataulut suunnitellaan automaattisesti, ja koko organisaatiolla on reaaliaikainen näkymä tuotantoon.
Usein kysytyt kysymykset
Onko ProShopissa API-rajapinta?
Kyllä. ProShopissa on GraphQL API osoitteessa <proshop root>/api/graphql. Se käyttää OAuth 2.0- tai Basic Authentication -todennusta ja moduulikohtaisia käyttöoikeuksia. Recently Updated Records -niminen REST-päätepiste palauttaa tietueet, jotka on luotu, joita on muokattu tai jotka on poistettu annetulla aikavälillä.
Tukeeko ProShop webhookeja?
ProShopin kehittäjädokumentaatiossa ei kuvata ulospäin lähettäviä webhookeja. Integraatio kyselee Recently Updated Records API -rajapintaa tehdaskohtaisesti määritetyin väliajoin. SkyPlannerin omat webhookit lähettävät suunnitelman muutokset heti niiden tapahtuessa.
Miten suunnitellut päivämäärät kirjoitetaan takaisin ProShopiin?
Työmääräimeen kohdistuvalla GraphQL-mutaatiolla. Käytössä on Authorization-määritys, jolla on kirjoitusoikeus kohteeseen workorders. SkyPlanner käynnistää mutaation webhookista aina, kun suunnitelma muuttuu.
Kuka luo ProShopin API-tunnukset?
ProShopin järjestelmänvalvoja kohdassa System Config > Manage Authorizations. Direct Login ottaa Client Credentials -menetelmän käyttöön, ja Maximum Scope rajaa, mitä integraatio voi lukea ja kirjoittaa.
Kannattaako ProShop-konsultin suositella ProShopin tuotannonsuunnittelua vai SkyPlanneria?
SkyPlanneria, kun asiakkaan työjärjestys ratkaisee toimitusten onnistumisen. ProShopin suunnitelma näyttää työsolukohtaiset prioriteetit ja ennusteet aikataulussa pysymisestä, ja suunnittelijat säätävät prioriteetteja. SkyPlanner liittyy ProShopiin GraphQL API -rajapinnan kautta, optimoi koko suunnitelman automaattisesti ja suunnittelee tuotevaihdot sekä työntekijöiden, työkalujen ja materiaalien käytön. Käyttäjämäärää ei ole rajoitettu, ja hinta on alkaen 199 € kuukaudessa.
Voimmeko testata SkyPlanneria ennen integraation rakentamista?
Kyllä. Maksuttomassa 30 päivän kokeilussa voit käyttää enintään 20 työpistettä ja tuoda tiedot ProShopista CSV- tai Excel-tiedostoina. Luottokorttia ei tarvita. Aloita kokeilu tai ota yhteyttä myyntiin integraation määrittelyä varten.