Integraatiot / ERP / Microsoft Dynamics 365 Supply Chain Management
Dynamics 365 Supply Chain Management -integraatio-opas tuotannonsuunnitteluun SkyPlanner APS:llä
Tämä Dynamics 365 Supply Chain Management -integraatio-opas kertoo kumppaneille ja IT-tiimeille, miten Microsoft Dynamics 365 Supply Chain Management yhdistetään SkyPlanner APS:ään. SkyPlannerin ja Dynamics 365 Supply Chain Managementin välinen integraatio on kaksisuuntainen ja käyttää Supply Chain Managementin vakiotietoentiteettejä:
- SkyPlanneriin tuodaan tuotantotilaukset, reittien työvaiheet ja työt, BOM-rivit, resurssit, kalenterit, vapautetut tuotteet, käytettävissä oleva varasto ja ostotilausrivit.
- Suunnitellut alkamis- ja päättymisajat sekä valittu resurssi kirjoitetaan takaisin tuotantotilaukselle ja sen reitin työvaiheille.
- Työntekijöiden tunnit ja määrät palautetaan reittikorttikirjauskansion kautta.
- SkyPlannerin webhookit lähettävät aikataulumuutokset heti niiden tapahtuessa.
SkyPlanner-tiimi määrittää integraation Supply Chain Management -ympäristöösi sopivaksi käyttöönoton aikana ja tukee sitä myös tuotantokäytössä. Tämä opas on tarkoitettu kumppaneille ja kehittäjille, jotka haluavat osallistua toteutukseen tai rakentaa itse SkyPlannerin dokumentoidun REST API -rajapinnan varaan (API-dokumentaatio).
Dynamics 365 SCM:n integraatiovaihtoehdot
Supply Chain Management tarjoaa tiedot tietoentiteettien kautta. Tuotannonsuunnittelun kannalta olennaisia vaihtoehtoja on neljä:
- OData v4 REST -päätepiste.
[Your organization's root URL]/datatarjoaa kaikki IsPublic-merkityt tietoentiteetit sekä täydet luonti-, luku-, päivitys- ja poistotoiminnot. Tuettuja ovat$filter,$count,$orderby,$skip,$top,$selectja ensimmäisen tason$expand. Palvelin ohjaa sivutusta, ja sivulla voi olla enintään 10 000 tietuetta. Eräpyynnöissä kirjoitukset voidaan ryhmitellä muutosjoukoiksi. OData toimii synkronisesti. (lähde) - Batch data API. Data management package REST API ja toistuvat integraatiot siirtävät suuria tietomääriä asynkronisesti. Microsoft: “If the volume is more than a few hundred thousand records, use the batch data API.” (Jos tietueita on enemmän kuin muutama satatuhatta, käytä Batch data API -rajapintaa.) Tätä rajapintaa tuetaan myös paikallisissa asennuksissa. (lähde)
- Liiketoimintatapahtumat. Finance and operations -sovellukset julkaisevat liiketoimintatapahtumia Azure Service Bus – ja Event Grid -palveluihin, HTTPS-päätepisteisiin tai Power Automateen. (lähde)
- Mukautetut palvelut ja OData-toiminnot. Mukautetut X++-palvelut ja sidotut OData-toiminnot suorittavat liiketoimintalogiikkaa pyynnöstä.
SkyPlanner-integraatio käyttää päivittäiseen tiedonsiirtoon OData-päätepistettä ja suureen alkulataukseen Batch data API -rajapintaa. Supply Chain Managementiin ei asenneta mitään.
Todennus
Rekisteröi sovellus Microsoft Entra ID -palveluun (service principal). Liitä sovellus Supply Chain Managementissa käyttäjään, jolla on integraation tarvitsemat suojausroolit. Integraatio lukee tuotanto-, resurssi- ja varastotietoja sekä kirjoittaa tuotantotilausten suunnittelutietoja ja kirjauskansioita. Käyttöoikeustunnukset pyydetään Entra ID:stä sovelluksen tunnistetiedoilla.
Kaksi sääntöä määrittää, mitä tietoja integraatio näkee:
- Yritykset. OData palauttaa oletusyrityksen tiedot, ellei pyyntöön lisätä parametria
?cross-company=true. Usean toimipaikan tuotantoympäristöissä tiedot suodatetaan kentändataAreaIdperusteella. - Julkiset nimet. Alla olevat entiteettien nimet ovat tiedonhallinnassa käytettyjä nimiä. Julkisten OData-kokoelmien nimet voivat poiketa niistä, joten tarkista ne ympäristösi
/data/$metadata-päätepisteestä.
SkyPlannerin REST API käyttää todentamiseen API-tokenia (SkyPlanner Settings > API), ja sen dokumentaatio on Swagger/OpenAPI-muodossa. Integraatio-opas käy läpi ensimmäiset kutsut.
Tietojen vastaavuudet
| D365 SCM -entiteetti | SkyPlanner-objekti | Suunta | Siirtotiheys |
|---|---|---|---|
| Vapautetut tuotteet (ItemNumber) | Tuotteet ja materiaalit | SCM → SkyPlanner | Alkulataus, sen jälkeen vain muutokset |
| Tuotannon BOM-rivit (ProdProductionOrderBillOfMaterialsLineEntity), BOM-rivit | Tuoterakenne, tilauskohtaiset materiaalit | SCM → SkyPlanner | Aina tilausten synkronoinnin yhteydessä |
| Reitti, reittiversiot, reitin työvaiheet, työvaiheiden ominaisuudet (RouteOperationPropertiesV2Entity) | Työvaiheet asetus- ja ajoaikoineen | SCM → SkyPlanner | Alkulataus, sen jälkeen muutosten yhteydessä |
| Resurssit (OpResOperationsResourceEntity), resurssiryhmät, kyvykkyydet | Työpisteet, työpisteryhmät, tehokkuudet | SCM → SkyPlanner | Alkulataus, sen jälkeen harvoin |
| Työaikakalenterit, kalenteripäivät ja aikavälit, kalenterien kohdistukset | Työvuorot | SCM → SkyPlanner | Päivittäin, tai työvuorot ylläpidetään SkyPlannerissa |
| Tuotantotilausten otsikkotiedot (ProdProductionOrderHeaderEntity) | Tilaukset määräpäivineen ja tilatietoineen | SCM → SkyPlanner | Muutaman minuutin välein tai liiketoimintatapahtuman yhteydessä |
| Reitin työvaiheet (ProdProductionOrderRouteOperationEntity), reitin työt (ProdProductionOrderRouteJobEntity) | Työt kestoineen ja resurssivaatimuksineen | SCM → SkyPlanner | Aina tilausten synkronoinnin yhteydessä |
| Käytettävissä oleva varasto | Varastosaldot | SCM → SkyPlanner | Tunneittain tai suunnitteluajon yhteydessä |
| Ostotilausrivit toimituspäivineen | Saapuva materiaali; varasto päivittyy, kun ostotilaus merkitään Delivered-tilaan | SCM → SkyPlanner | Tunneittain tai suunnitteluajon yhteydessä |
| Kunkin reitin työvaiheen suunnitellut alkamis- ja päättymispäivämäärät ja kellonajat sekä tuotantoresurssi | Työvaihekohtaiset suunnitellut alkamis- ja päättymisajat sekä työpiste | SkyPlanner → SCM | Aikataulun muuttuessa SkyPlannerin webhookin kautta |
| Reittikorttikirjauskansio (ProdRouteCardProductionJournalEntryEntity: RegisteredHours, ReportedGoodInventoryQuantity) | Aikakirjaukset ja määrät | SkyPlanner → SCM | Kuittaus- tai työvuorokohtaisesti, jos näin valitaan |
| SkyPlannerin rajoitteiden määritys | Asetusaikamatriisi, työkalut kapasiteetiltaan rajallisina resursseina, työntekijämäärät, vaihtoehtoiset resurssit | Ylläpidetään SkyPlannerissa | Määritetään käyttöönoton aikana |
Integraation toteutusmallit
1. Perustietojen alkulataus. Lataa resurssit, resurssiryhmät, kalenterit, vapautetut tuotteet, reitit ja BOM-rakenteet. Käytä Batch data API -rajapintaa, kun tietueita on satojatuhansia, ja muulloin OData-sivutusta. Määritä jokaiselle SCM-resurssille vastaava SkyPlanner-työpiste. Pelkkien resurssiryhmien yhdistäminen ei riitä: työvaiheiden suunnittelu varaa ryhmiä, mutta tuotannossa työt tehdään yksittäisillä resursseilla.
2. Tilausten synkronointi. Lue vahvistetut tuotantotilaukset niissä tiloissa, joista SkyPlanner vastaa, yleensä Scheduled ja Released. Lue samalla niiden reittien työvaiheet ja työt sekä BOM-rivit. Lue myös avoimet ostotilausrivit. SkyPlanner käsittelee tilatun materiaalin saatavilla olevana ostotilauksen toimituspäivänä ja päivittää varaston, kun ostotilaus merkitään Delivered-tilaan.
Jätä suunnitellut tuotantotilaukset pois, ellei niitä ole nimenomaisesti sisällytetty integraation laajuuteen. Planning Optimization luo ne uudelleen jokaisella ajokerralla.
3. Aikataulun takaisinkirjoitus. SkyPlanner kirjoittaa jokaiselle suunnittelumoottorin sijoittamalle tai siirtämälle reitin työvaiheelle suunnitellut alkamis- ja päättymispäivämäärät ja kellonajat sekä tuotantoresurssin. Kenttien niminä käytetään ympäristösi /data/$metadata-päätepisteessä määritettyjä nimiä. Muutokset lähetetään OData-eräpyyntöjen muutosjoukkoina, jolloin yhden suunnitteluajon tulokset tallentuvat yhtenä johdonmukaisena päivityksenä.
4. Tuotannon kuittaukset. Työntekijät kirjaavat työnsä SkyPlanner Mobile Confirmations- tai Production Timer -toiminnolla, ja aikakirjaukset pitävät aikataulun ajan tasalla. Tunnit ja hyväksytyt määrät voidaan palauttaa reittikorttikirjauskansion riveinä. Valmiiksi ilmoittaminen tehdään edelleen nykyisessä paikassaan, joko SCM:ssä tai Production floor execution -toiminnossa.
Valitse kullekin kirjaukselle yksi kanava. Jos samat tunnit kirjataan sekä SkyPlannerista että Production floor execution -toiminnosta, ne tallentuvat kahteen kertaan.
5. Tietojen omistajuus ja ristiriitojen käsittely. Kirjaa säännöt ennen tuotantokäyttöön siirtymistä:
| Tiedot | Omistaja |
|---|---|
| Tuotteet, BOM-rakenteet, reitit, määrät, tilausten tilat, kustannuslaskenta | Supply Chain Management |
| Suunnitellut tuotantotilaukset | Planning Optimization |
| Työvaiheiden järjestys, suunnitellut alkamis- ja päättymisajat, resurssien kohdistus | SkyPlanner |
| Asetusaikamatriisi, työkalut, työntekijämäärät, vaihtoehtoiset resurssit | SkyPlanner |
| Työvuorot ja poissaolot | Yksi määrittelyssä valittu järjestelmä |
| Tuntien ja tuotantomäärien kirjaus | Supply Chain Management, haluttaessa SkyPlannerin aikakirjausten perusteella |
Suurin ristiriitojen aiheuttaja on SCM:n oma töiden aikataulutus. Jos suunnittelija aikatauluttaa tilauksen uudelleen SCM:ssä, SCM korvaa SkyPlannerin määrittämät päivämäärät. Käytä tuotantotilauksen otsikkotason IsProductionOrderSchedulingLocked-kenttää tilauksille, joiden suunnittelusta SkyPlanner vastaa. Käsittele jokaista SCM:ssä muutettua tilausta uutena versiona ja synkronoi se uudelleen. Autopilot päivittää aikataulun automaattisesti tuotannon muuttuessa.
Mitä projekti sisältää
Toteutus valmistuu tavallisesti muutamassa viikossa käyttöönoton aloittamisesta. Sitä ennen voit kokeilla ohjelmistoa maksutta 30 päivän ajan omilla tiedoillasi. Vie resurssit, reitit ja avoimet tuotantotilaukset tiedonhallinnan vientiprojektilla tai Excel-lisäosalla, tuo ne CSV- tai Excel-muodossa ja tarkista aikataulu.
- Määrittely. Sovi tietojen vastaavuustaulukosta, tiloista, joissa SkyPlanner vastaa suunnittelusta, synkronointiväleistä ja kirjauskanavasta.
- Käyttöoikeudet. Rekisteröi Entra ID -sovellus ja liitä se SCM-käyttäjään, jonka roolit antavat vain välttämättömät oikeudet. Varmista julkisten entiteettien nimet osoitteesta
/data/$metadata. Tee tämä ensin testiympäristössä ja sitten tuotannossa. - Alkulataus. Resurssit, kalenterit, vapautetut tuotteet, reitit ja tuoterakenteet.
- Tilausten ja ostotilausten synkronointi. Hae muuttuneet tietueet säännöllisesti
$filter-suodatuksella ja hyödynnä lisäksi liiketoimintatapahtumia, jos niitä on saatavilla tapahtumaluettelossasi. - Rajoitteiden määrittely SkyPlannerissa. Asetusaikamatriisi, työkalut, työntekijämäärät sekä vaihtoehtoiset koneet tai työntekijät.
- Aikataulun palautus. Päivitä reitin työvaiheet eräpäivityksinä ja lukitse niiden tilausten aikataulutus, joiden suunnittelusta SkyPlanner vastaa.
- Rinnakkaistestaus. Käytä SkyPlanneria nykyisen suunnitelman rinnalla, vertaa päivämääriä ja korjaa perustiedot.
- Tuotantokäyttöön siirtyminen. Ota tietojen palautus käyttöön, kun tiedot täsmäävät.
Mitä Dynamics 365 SCM -integraatiossa on huomioitava
- Tehokkuuden vaikutus voi kertautua. SCM laskee ajan kaavalla ”Scheduling time = Time x 100 / Efficiency percentage.” (Suunnitteluaika lasketaan ajan ja tehokkuusprosentin perusteella.) Määritä tehokkuus SkyPlannerin työpisteen tehokkuudeksi vain kerran, älä lisää sen vaikutusta jo korjattuihin aikoihin.
- Kalenterit on liitetty resurssiryhmiin. Lue kalenterimääritykset sekä resurssiryhmiltä että resursseilta. Muuten kapasiteettitiedot eivät vastaa todellisuutta.
- Työvaiheiden ja töiden aikataulutuksen ero. Työvaihetasolla aikataulutetuilla tilauksilla ei ole alkamis- ja päättymiskellonaikoja eikä yksilöityä resurssia. Synkronoi reitin työvaiheet ja resurssivaatimukset, älä pelkkiä päivämääriä.
- Kapasiteettirajoitusten asetukset. Resurssit, joiden Finite capacity -asetuksen arvo on No, voivat ylikuormittua SCM:ssä. Mallinna jokainen todellinen rajoite SkyPlannerissa kapasiteettia rajoittavaksi.
- 32 resurssia työvaihetta kohti. SCM sallii töiden aikataulutuksessa enintään 32 resurssia työvaihetta kohti. SkyPlannerissa vaihtoehdot määritellään työpisteryhmien ja vaihtoehtoisten työpisteiden avulla.
- Sivutus ja tietomäärät. OData palauttaa tiedot 10 000 tietueen sivuina ja laajentaa liittyvät tiedot yhden tason syvyyteen. Käytä suuriin alkulatauksiin erämuotoista tietorajapintaa.
- Juridiset yksiköt. Ilman
cross-company=true-asetusta jadataAreaId-suodattimia usean yhtiön tehtaasta synkronoidaan vain oletusyhtiön tiedot.
Kuka määrittää integraation
Työhön kuuluu tietojen kohdistaminen käytössäsi oleviin reitteihin, resursseihin ja SCM-määrityksiin. Lisäksi SkyPlanneriin määritellään rajoitteet: asetusaikamatriisi, työkalut, työntekijämäärät ja vaihtoehtoiset resurssit.
- SkyPlanner-tiimi määrittää integraation käyttöönoton aikana ja tukee sitä tuotantokäytössä. Vastuu kattaa SkyPlannerin puolen ja sovitut SCM-tietoyksiköt. Jokainen tehdas käyttää D365 SCM:ää omalla tavallaan, ja tässä työssä tuo tuntemus hyödynnetään.
- Dynamics-kumppanisi voi osallistua. Kumppani tuntee määrityksesi, laajennuksesi ja suojausroolisi ja voi määrittää Entra ID -sovelluksen sekä tietoyksiköiden käyttöoikeudet. SkyPlanner tarjoaa REST API -rajapinnan, Swagger/OpenAPI-dokumentaation ja webhookit.
- Omat kehittäjäsi voivat rakentaa toteutuksen saman dokumentoidun REST API -rajapinnan varaan API-tunnisteella. Aloittamiseen riittää API-tunniste, ja SkyPlanner-tiimi auttaa tarvittaessa.
Kun yhteys on muodostettu, Arcturus-moottori laatii aikataulun SCM:n ajantasaisten tuotantotilausten perusteella, ja suunnitellut päivämäärät siirtyvät reitin työvaiheille. SkyPlannerin hinta on alkaen 199 € kuukaudessa, ja siihen sisältyy 5 työpistettä. Laskutus on kuukausittainen. Saat integraatiosta etukäteen prosessiisi ja tarpeisiisi perustuvan tarjouksen yhdessä tilaushinnan kanssa, joten tiedät kokonaiskustannukset ennen aloittamista.
Katso, miten SCM:n oma suunnittelu vertautuu SkyPlanneriin artikkelista Dynamics 365 SCM:n hienokuormitus. Yleiskatsaus löytyy Dynamics 365 SCM -sivulta ja muut ERP-järjestelmät ERP-integraatioiden koontisivulta.
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 kytkinlaitteistot
Tuotannonsuunnittelussa säästyy 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ääkkeiden valmistus
Tuotannon tehokkuus on kasvanut 90 %, ja kaikki työpisteet kattava optimoitu suunnitelma kolmeksi kuukaudeksi syntyy alle 30 minuutissa.
100%toimitusvarmuus vuodesta 2021
”SkyPlanner antaa meille näkyvyyden kapasiteettiin ja tekee suunnittelusta ennakoitavaa.”
Dan Berglund, COO/CFO
Opes Corporation · Kemikaalien ja elintarvikkeiden valmistus
Toimitusvarmuus on ollut 100 % koko SkyPlannerin käytön ajan, vuodesta 2021 lähtien.
1 000:iatyötilauksia aikataulutetaan automaattisesti
”Tuotanto on aivan eri tavalla hallinnassa, ja ymmärryksemme kapasiteetista on täysin uudella tasolla.”
Hannu Ryynänen, toimitusjohtaja
Mamec · Teollisuussekoittimet, pumput ja korkean teknologian sopimusvalmistus
Tuhansia työtilauksia aikataulutetaan automaattisesti, ja koko organisaatiolla on reaaliaikainen näkymä tuotantoon.
Usein kysytyt kysymykset
Mitä D365 SCM:n rajapintaa integraatio käyttää?
Integraatio käyttää OData v4 REST -päätepistettä osoitteessa /data. Sen kautta voi luoda, lukea, päivittää ja poistaa kaikkien julkisten tietoyksiköiden tietoja. Suurissa alkulatauksissa käytetään erämuotoista tietorajapintaa. Liiketoimintatapahtumat mahdollistavat lähes reaaliaikaiset käynnistykset, jos niitä on saatavilla tapahtumaluettelossasi.
Pitääkö Supply Chain Managementiin asentaa jotain?
Ei. Integraatio käyttää vakiotietoyksiköitä OData-rajapinnan kautta. Ylläpitäjäsi rekisteröi Microsoft Entra ID -sovelluksen ja liittää sen SCM-käyttäjään, jolla on tarvittavat roolit.
Miten suunnitellut päivämäärät palautetaan Supply Chain Managementiin?
SkyPlanner päivittää tuotantotilauksen reitin työvaiheille suunnitellut alkamis- ja päättymispäivämäärät ja -kellonajat sekä työvaiheen resurssin. Päivitykset tehdään OData-eräpyynnöissä changeset-kokonaisuuksina. Tilaukset, joiden suunnittelusta SkyPlanner vastaa, suojataan IsProductionOrderSchedulingLocked-asetuksella.
Miksi liittää SkyPlanner sen sijaan, että kehittäisimme SCM:n omaa tuotannonsuunnittelua?
Planning Optimization huomioi kapasiteettirajoitukset vain niille määritetyn aikarajan sisällä ja olettaa kapasiteetin sen jälkeen rajoittamattomaksi (lähde). SCM aikatauluttaa yhden tuotantotilauksen kerrallaan jo varatun kapasiteetin lomaan ja käsittelee asetusajan osana työvaiheen kestoa (lähde). Microsoft ei suosittele kapasiteettirajoitukset huomioivaa pääsuunnittelua silloin, kun työvuorot muuttavat kapasiteettia (lähde). SkyPlanner aikatauluttaa kaikki vahvistetut tilaukset yhdessä asetusaikamatriisin avulla, ja Autopilot päivittää suunnitelman automaattisesti jokaisen olennaisen muutoksen yhteydessä. SkyPlanner-tiimi määrittää kaksisuuntaisen integraation ja tukee sitä, ja Dynamics-kumppanisi voi vastata SCM:n puolesta.
Kannattaako suunnitellut tuotantotilaukset ottaa SkyPlannerin tuotannonsuunnitteluun?
Yleensä ei. Planning Optimization luo suunnitellut tuotantotilaukset uudelleen jokaisella ajokerralla. SkyPlannerissa tuotannonsuunnitteluun otetaan vahvistetut tuotantotilaukset, jotka ovat määrittelyssä sovituissa tiloissa.
Toimiiko integraatio paikallisesti asennetun Supply Chain Managementin kanssa?
Paikallisissa asennuksissa integraatio käyttää erämuotoista tietorajapintaa, jota Microsoft tukee kyseisessä ympäristössä. SkyPlannerin puolella käytetään kummassakin tapauksessa samaa REST API -rajapintaa. Toteutustapa vahvistetaan määrittelyssä.
Voimmeko testata SkyPlanneria ennen integraation rakentamista?
Kyllä. Maksuttomassa 30 päivän kokeilussa voit käyttää enintään 20 työpistettä ja tuoda tiedot Supply Chain Managementista CSV- tai Excel-muodossa. Luottokorttia ei tarvita. Aloita kokeilu tai ota yhteyttä myyntiin integraation määrittelyä varten.