Integrointi kolmannen osapuolen tuotannonohjausjärjestelmiin
Jotkin Microsoft Dynamics 365 Supply Chain Managementia käyttävät tuotanto-organisaatiot käyttävät Dynamics 365:n alkuperäisiä toimintoja koneiden, laitteiden ja henkilöstön tuotantotehtävien hallintaan. Sen sijaan toiset tuotanto-organisaatiot käyttävät kolmannen osapuolen tuotannonohjausjärjestelmää (MES), etenkin jos kyse on edistyneistä tuotantovaatimuksista. Organisaatiot saattava valita kolmannen osapuolen MES-ratkaisun myös esimerkiksi siksi, että se on räätälöity nimenomaan heidän toimialalleen.
Integroidussa ratkaisussa tiedonsiirto on täysin automatisoitu ja tapahtuu lähes reaaliaikaisesti. Niinpä tiedot ovat ajantasaisia molemmissa järjestelmissä eikä tietoja tarvitse antaa manuaalisesti. Jos esimerkiksi materiaalin kulutus rekisteröidään MES-ratkaisussa, integrointi varmistaa, että sama kulutus rekisteröidään myös Dynamics 365:ssä. Näin ollen ajantasaiset varastotietueet ovat muiden tärkeiden prosessien, kuten suunnittelun ja myynnin, käytettävissä.
Ratkaisun ansiosta Supply Chain Managementin käyttäjien on entistä nopeampi, kätevämpi ja edullisempi integroitua kolmannen osapuolen MES-ratkaisuihin. Se sisältää seuraavat ominaisuudet:
- Liiketoimintatapahtumat ja liittymät tukevat keskeisiä tuotannonohjausprosesseja.
- Keskitetyssä koontinäytössä voi seurata tapahtuman käsittelyhistoriaa sekä tehdä epäonnistuneiden prosessien vianmäärityksen ja korjata ne.
Seuraavassa kuvassa on tavanomainen integroidussa ratkaisussa siirrettävä liiketoimintatapahtumien, prosessien ja sanomien yhdistelmä.
MES-integrointiominaisuuden ottaminen käyttöön
Ennen kuin voit käyttää tätä toimintoa, järjestelmänvalvojan on otettava se käyttöön järjestelmässä seuraavien ohjeiden mukaisesti.
- Valitse Järjestelmän hallinta > Asetukset > Käyttöoikeuden konfiguraatio.
- Varmista, että Aika ja läsnäolo -käyttöoikeusavain on käytössä (tarkista valintamerkki). Tämä käyttöoikeusavain on pakollinen, koska se ohjaa valmistuksen suoritusjärjestelmän toimintoja ja tietoja. Jos avain ei ole käytössä, toimi seuraavasti:
- Siirrä järjestelmä ylläpitotilaan kohdassa Ylläpitotila kuvatulla tavalla.
- Valitse Käyttöoikeuksien konfigurointi -sivulla Aika ja läsnäolo -valintaruutu.
- Poista järjestelmän ylläpitotila käytöstä kohdassa Ylläpitotila kuvatulla tavalla
- Valitse Järjestelmänvalvoja > Työtilat > Ominaisuuksien hallinta.
- Toimintojen hallinta -työtilan avulla voit ottaa käyttöön Valmistuksenohjausjärjestelmän integrointi -toiminnon. (Supply Chain Managementin versiosta 10.0.29 alkaen tämä ominaisuus on oletusarvoisesti otettu käyttöön. Supply Chain Managementin versiosta 10.0.32 alkaen tämä se on pakollinen, eikä sitä voi poistaa käytöstä.)
MES-integroinnin käytettävissä olevat prosessit
Mikä tahansa seuraavista prosesseista (tai kaikki prosessit) voidaan integroida.
Prosessin nimi | Kuvaus |
---|---|
Tuotantotilausten vapauttamisen ja tuotantotilauksen tilan muutoksen liiketoimintatapahtumat | Tämä prosessi tuottaa liiketoimintatapahtuman, jota MES voi kuunnella ja saada tällä tavoin tietoja tuotettavista tuotantotilauksista. Tuotantotilaukseen liittyvät viitetiedot. Oletuksena on, että tällainen tuotantotilaus jaetaan Supply Chain Managementista MES-järjestelmään OData (Open Data Protocol) -protokollan tai tietoyksiköiden kautta. |
Käynnistä tuotantotilaus | Tämä prosessi tuottaa Supply Chain Managementiin tietoja tuotantotilauksista, joita aloitetaan MES-järjestelmän avulla. Se varmistaa, että molemmissa järjestelmissä on kaikkien tuotantotehtävien ajantasainen näkymä. |
Tuotetun määrän tai hävikin ilmoittaminen | Tämä prosessi tuottaa Supply Chain Managementiin tietoja hyvien ja viallisten tuotteiden määrästä, jotka ilmoitetaan tuotantotyössä MES-järjestelmän avulla. Se varmistaa, että työnjohtajilla on ajantasainen näkymän tuotantosuunnitelman edistymisestä. |
Materiaalin kulutuksen ilmoittaminen | Tämän prosessin avulla Supply Chain Management saa MES-järjestelmästä tietoja kulutetun materiaalin määrästä. Sen ansiosta ajantasaiset varastotietueet ovat muiden tärkeiden prosessien, kuten suunnittelun ja myynnin, käytettävissä. |
Työvaiheeseen kulutetun ajan ilmoittaminen | Tämän prosessin avulla Supply Chain Management saa tietoja tiettyyn työvaiheeseen käytetystä ajasta. |
Tuotantotilauksen lopetus | Tämä prosessi ilmaisee Supply Chain Managementille, että MES on päivittänyt tuotantotilauksen viimeiseen Päättynyt-vaiheeseen. Tämä tila ilmaisee, että mitään määriä ei enää tuoteta tuotantotilauksen perusteella. |
Saapuvien sanomien seuranta
Järjestelmään saapuvia MES-sanomia voi seurata siirtymällä kohtaan Tuotannon valvonta > Määritys > Tuotannonohjaus > Tuotannonohjauksen järjestelmäintegrointi.
Kaikki tietyn tuotantotilauksen sanomat käsitellään niiden vastaanotetussa järjestyksessä. Eri tuotantotilausten sanomia ei ehkä käsitellä vastaanotetussa sarjassa, koska erätyöt käsitellään rinnakkain. Virhetilanteiden varalta erätyö yrittää käsitellä kutakin sanomaa kolme kertaa, ennen kuin sen tilaksi määritetään Epäonnistunut.
Tuotannonohjauksen järjestelmäintegrointi -sivu toimii samalla tavalla kuin Sanoman käsittelijän sanomat -sivu ja on hyvin samankaltainen toiminto. (Se jopa näyttää MES-sanomat muiden sanomatyyppien lisäksi.) Tietoja siitä, miten näitä sivuja käytetään sanomien tarkastamiseen, epäonnistuneiden sanomien etsimiseen ja korjaamiseen sekä muita tietoja, katso Sanoman käsittelijän sanomat
Ohjelmointirajapinnan kutsuminen
MES-integroinnin ohjelmointirajapinnan voi kutsua lähettämällä POST
-pyynnön seuraavaan päätepisteen URL-osoitteeseen:
/api/services/SysMessageServices/SysMessageService/SendMessage
Lähetettävän pyynnön tekstiosan pitäisi olla seuraavan esimerkin kaltainen. Vaihda tarvittaessa _companyId
-, _messageType
- ja _messageContent
-arvot. Lisätietoja ohjelmointirajapinnan tukemista erilaisista sanomatyypeistä ja niiden sisällön suunnittelusta on seuraavassa osassa.
{
"_companyId": "USMF",
"_messageQueue": "JmgMES3P",
"_messageType": "ProdProductionOrderReportFinished",
"_messageContent":
"{\"ProductionOrderNumber\": \"P000123\", \"ReportFinishedLines\": [{\"ItemNumber\": \"A0001\", \"ReportedGoodQuantity\": 10, \"ReportAsFinishedDate\": \"2021-01-01\"}]}"
}
Ohjelmointirajapinnan sanomatyypit ja sanoman sisältö
Tässä osassa käsitellään kutakin sanomatyyppiä, joka voidaan lähettää MES-integroinnin ohjelmointirajapinnan kautta.
Käynnistä tuotantotilaus -sanoma
Käynnistä tuotantotilaus -sanoman _messageType
-arvo on ProdProductionOrderStart
. Seuraavassa taulukossa on tämän sanoman tukemat kentät:
Kentän nimi | Tila | Tyyppi |
---|---|---|
ProductionOrderNumber |
Pakollinen | Merkkijono |
StartedQuantity |
Valinnainen | Reaaliluku |
StartedDate |
Valinnainen | Päivämäärä |
AutomaticBOMConsumptionRule |
Valinnainen | Valintalista (FlushingPrincip | Always | Never) |
Ilmoita valmiiksi -sanoma
Ilmoita valmiiksi -sanoman _messageType
-arvo on ProdProductionOrderReportFinished
. Seuraavassa taulukossa on tämän sanoman tukemat kentät:
Kentän nimi | Tila | Tyyppi |
---|---|---|
ProductionOrderNumber |
Pakollinen | Merkkijono |
ReportFinishedLines |
Pakollinen | Riviluettelo (ainakin yksi rivi), jossa kullakin rivillä on seuraavassa taulukossa kuvatut tiedot. |
Seuraavassa taulukossa on kentät, joita kukin ProdProductionOrderReportFinished
-sanoman ReportFinishedLines
-osan rivi tukee:
Kentän nimi | Tila | Tyyppi |
---|---|---|
LineNumber |
Valinnainen | Reaaliluku |
ItemNumber |
Valinnainen | Merkkijono |
ProductionType |
Valinnainen | Valintalista (MainItem | Formula | BOM | Co_Product | By_Product | None), laajennettava |
ReportedErrorQuantity |
Valinnainen | Reaaliluku |
ReportedGoodQuantity |
Valinnainen | Reaaliluku |
ReportedErrorCatchWeightQuantity |
Valinnainen | Reaaliluku |
ReportedGoodCatchWeightQuantity |
Valinnainen | Reaaliluku |
AcceptError |
Valinnainen | Enum (Kyllä | Ei) |
ErrorCause |
Valinnainen | Valintalista (None | Material | Machine | OperatingStaff), laajennettava |
ExecutedDateTime |
Valinnainen | Päivämäärä ja aika |
ReportAsFinishedDate |
Valinnainen | Päivämäärä |
AutomaticBOMConsumptionRule |
Valinnainen | Valintalista (FlushingPrincip | Always | Never) |
AutomaticRouteConsumptionRule |
Valinnainen | Valintalista (RouteDependent | Always | Never) |
RespectFlushingPrincipleDuringOverproduction |
Valinnainen | Enum (Kyllä | Ei) |
JournalNameId |
Valinnainen | Merkkijono |
PickingListJournalNameId |
Valinnainen | Merkkijono |
RouteCardJournalNameId |
Valinnainen | Merkkijono |
FromOperationNumber |
Valinnainen | Kokonaisluku |
ToOperationNumber |
Valinnainen | Kokonaisluku |
InventoryLotId |
Valinnainen | Merkkijono |
BaseValue |
Valinnainen | Merkkijono |
EndJob |
Valinnainen | Enum (Kyllä | Ei) |
EndPickingList |
Valinnainen | Enum (Kyllä | Ei) |
EndRouteCard |
Valinnainen | Enum (Kyllä | Ei) |
PostNow |
Valinnainen | Enum (Kyllä | Ei) |
AutoUpdate |
Valinnainen | Enum (Kyllä | Ei) |
ProductColorId |
Valinnainen | Merkkijono |
ProductConfigurationId |
Valinnainen | Merkkijono |
ProductSizeId |
Valinnainen | Merkkijono |
ProductStyleId |
Valinnainen | Merkkijono |
ProductVersionId |
Valinnainen | Merkkijono |
ItemBatchNumber |
Valinnainen | Merkkijono |
ProductSerialNumber |
Valinnainen | Merkkijono |
LicensePlateNumber |
Valinnainen | Merkkijono |
InventoryStatusId |
Valinnainen | Merkkijono |
ProductionWarehouseId |
Valinnainen | Merkkijono |
ProductionSiteId |
Valinnainen | Merkkijono |
ProductionWarehouseLocationId |
Valinnainen | Merkkijono |
InventoryDimension1 kohteeseen InventoryDimension12 |
Valinnainen | Merkkijono |
12 laajennettavaa dimensiota (InventoryDimension1
– InventoryDimension12
) edellyttävät mukauttamista, eikä niitä aina käytetä. Lisätietoja niistä on kohdassa Uusien varastodimensioiden lisääminen laajennuksen avulla.
Materiaalikulutus (keräysluettelo) -sanoma
Materiaalikulutus (keräysluettelo) -sanoman _messageType
-arvo on ProdProductionOrderPickingList
. Seuraavassa taulukossa on tämän sanoman tukemat kentät:
Kentän nimi | Tila | Tyyppi |
---|---|---|
ProductionOrderNumber |
Pakollinen | Merkkijono |
JournalNameId |
Valinnainen | Merkkijono |
PickingListLines |
Pakollinen | Riviluettelo (ainakin yksi rivi), jossa kullakin rivillä on seuraavassa taulukossa kuvatut tiedot. |
Seuraavassa taulukossa on kentät, joita kukin ProdProductionOrderPickingList
-sanoman PickingListLines
-osan rivi tukee:
Kentän nimi | Tila | Tyyppi |
---|---|---|
ItemNumber |
Pakollinen | Merkkijono |
ConsumptionBOMQuantity |
Valinnainen | Reaaliluku |
ProposalBOMQuantity |
Valinnainen | Reaaliluku |
ScrapBOMQuantity |
Valinnainen | Reaaliluku |
BOMUnitSymbol |
Valinnainen | Merkkijono |
ConsumptionInventoryQuantity |
Valinnainen | Reaaliluku |
ProposalInventoryQuantity |
Valinnainen | Reaaliluku |
ConsumptionCatchWeightQuantity |
Valinnainen | Reaaliluku |
ProposalCatchWeightQuantity |
Valinnainen | Reaaliluku |
ConsumptionDate |
Valinnainen | Päivämäärä |
OperationNumber |
Valinnainen | Kokonaisluku |
LineNumber |
Valinnainen | Reaaliluku |
PositionNumber |
Valinnainen | Merkkijono |
IsConsumptionEnded |
Valinnainen | Enum (Kyllä | Ei) |
ErrorCause |
Valinnainen | Valintalista (None | Material | Machine | OperatingStaff), laajennettava |
InventoryLotId |
Valinnainen | Merkkijono |
Työvaiheeseen käytetty aika (reitityskortti) -sanoma
Työvaiheeseen käytetty aika (reitityskortti) -sanoman _messageType
-arvo on ProdProductionOrderRouteCard
. Seuraavassa taulukossa on tämän sanoman tukemat kentät:
Kentän nimi | Tila | Tyyppi |
---|---|---|
ProductionOrderNumber |
Pakollinen | Merkkijono |
JournalNameId |
Valinnainen | Merkkijono |
RouteCardLines |
Pakollinen | Riviluettelo (ainakin yksi rivi), jossa kullakin rivillä on seuraavassa taulukossa kuvatut tiedot. |
Seuraavassa taulukossa on kentät, joita kukin ProdProductionOrderRouteCard
-sanoman RouteCardLines
-osan rivi tukee:
Kentän nimi | Tila | Tyyppi |
---|---|---|
OperationNumber |
Pakollinen | Kokonaisluku |
OperationPriority |
Valinnainen | Valintalista (Primary | Secondary1 | Secondary2 | ... | Secondary20) |
OperationId |
Valinnainen | Merkkijono |
OperationsResourceId |
Valinnainen | Merkkijono |
Worker |
Valinnainen | Merkkijono |
HoursRouteCostCategoryId |
Valinnainen | Merkkijono |
QuantityRouteCostCategoryId |
Valinnainen | Merkkijono |
HourlyRate |
Valinnainen | Reaaliluku |
Hours |
Valinnainen | Reaaliluku |
GoodQuantity |
Valinnainen | Reaaliluku |
ErrorQuantity |
Valinnainen | Reaaliluku |
CatchWeightGoodQuantity |
Valinnainen | Reaaliluku |
CatchWeightErrorQuantity |
Valinnainen | Reaaliluku |
QuantityPrice |
Valinnainen | Reaaliluku |
ProcessingPercentage |
Valinnainen | Reaaliluku |
ConsumptionDate |
Valinnainen | Päivämäärä |
TaskType |
Valinnainen | Valintalista (QueueBefore | Setup | Process | Overlap | Transport | QueueAfter | Burden) |
ErrorCause |
Valinnainen | Valintalista (None | Material | Machine | OperatingStaff), laajennettava |
OperationCompleted |
Valinnainen | Enum (Kyllä | Ei) |
BOMConsumption |
Valinnainen | Enum (Kyllä | Ei) |
ReportAsFinished |
Valinnainen | Enum (Kyllä | Ei) |
Lopeta tuotantotilaus -sanoma
Lopeta tuotantotilaus -sanoman _messageType
-arvo on ProdProductionOrderEnd
. Seuraavassa taulukossa on tämän sanoman tukemat kentät:
Kentän nimi | Tila | Tyyppi |
---|---|---|
ProductionOrderNumber |
Pakollinen | Merkkijono |
ExecutedDateTime |
Valinnainen | Päivämäärä ja aika |
EndedDate |
Valinnainen | Päivämäärä |
UseTimeAndAttendanceCost |
Valinnainen | Enum (Kyllä | Ei) |
AutoReportAsFinished |
Valinnainen | Enum (Kyllä | Ei) |
AutoUpdate |
Valinnainen | Enum (Kyllä | Ei) |
Muut tuotantotiedot
Sanomat tukevat toimenpiteitä tai tapahtumia, jotka tapahtuvat tuotannossa. Ne käsitellään tässä artikkelissa kuvatun MES-integroinnin kehyksen avulla. Suunnittelussa oletetaan, että muut MES:n kanssa jaettavat viitetiedot (kuten tuotteeseen liittyvät tiedot tai tietyssä tuotantotilauksessa käytetty materiaaliluettelo tai reitti (jossa on erityiset asetukset ja määritysajat)) noudetaan järjestelmästä käyttämällä tietoyksiköitä tiedostonsiirron tai OData:n kautta.
Sanoman tilaa koskevan palautteen vastaanottaminen
Sen jälkeen kun MES on lähettänyt sanoman Supply Chain Managementiin, Supply Chain Managementin on ehkä lähetettävä sanoman tilaa koskevaa palautetta. Seuraavassa on esimerkkejä tilanteista, joita tämä toiminta voi koskea:
- Kukaan ei ole vastuussa MES-integroinnin jatkuvasta valvonnasta.
- MES-integroinnin valvonnasta vastaava henkilö haluaa sähköposti-ilmoituksen epäonnistuneesta sanomasta, jotta jatkotoimiin ryhdytään.
- MES-järjestelmän on näytettävä virhesanoma, jotta tuotannon työntekijä tai IT-osaston työntekijä saa tietää toimenpiteiden tarpeesta.
- MES-järjestelmän on laskettava tilauksen aikataulutus uudelleen virhesanoman vastaanottamisen jälkeen. (Kyse voi olla esimerkiksi siitä, että tuotantotilauksen aloittaminen epäonnistui.)
Näissä tilanteissa voidaan hyödyntää Supply Chain Managementin vakiohälytysominaisuutta. Lisätietoja vakiohälytysten käytöstä on seuraavissa resursseissa:
- Ohjeartikkeli: Hälytysten yleiskuvaus
- Video: Talous- ja toimintosovellusten hälytyssääntövaihtoehdot
Esimerkiksi seuraavat hälytykset voidaan määrittää antamaan palautetta sanoman tilasta:
- Luo liiketoimintapahtuma (Lähetä ulkoisesti), jota käytetään, kun sanoman tila on Epäonnistui.
- Lähetä ilmoitus ja sähköpostiviesti IT-järjestelmänvalvojalle tai tuotannon esimiehelle.