Integrointi kolmannen osapuolen tuotannon suoritusjärjestelmiin

Jotkut valmistusorganisaatiot, jotka käyttävät Microsoft Dynamics 365 Supply Chain Management käyttävät Dynamics 365 natiivitoimintoja hallitakseen valmistustoimintaansa koneille, laitteille ja henkilöstölle. 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 toimitusketjunhallintain käyttäjien on entistä nopeampi, kätevämpi ja edullisempi integroitua kolmannen osapuolen MES-ratkaisuihin. Se tarjoaa 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ä.

Tyypillinen integraatiotilanne.

Edellytykset

Kolmannen osapuolen valmistusjärjestelmän integroimiseksi Time and Attendance -lisenssiavain on oltava käytössä toimitusketjunhallinta -toiminnossa. Seuraa näitä ohjeita tarkistaaksesi, onko se käytössä ja ota se tarvittaessa käyttöön:

  1. Valitse Järjestelmän hallinta > Asetukset > Käyttöoikeuden konfiguraatio.
  2. 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:
    1. Siirrä järjestelmä ylläpitotilaan kohdassa Ylläpitotila kuvatulla tavalla.
    2. Valitse Käyttöoikeuksien konfigurointi -sivulla Aika ja läsnäolo -valintaruutu.
    3. Poista järjestelmän ylläpitotila käytöstä kohdassa Ylläpitotila kuvatulla tavalla

MES-integroinnin käytettävissä olevat prosessit

Mikä tahansa seuraavista prosesseista (tai kaikki prosessit) voidaan integroida.

Prosessin nimi Description
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 toimitusketjunhallintaista MES-järjestelmään OData (Open Data Protocol) -protokollan tai tietoyksiköiden kautta.
Käynnistä tuotantotilaus Tämä prosessi tuottaa toimitusketjunhallintaiin 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 toimitusketjunhallintaiin 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 toimitusketjunhallinta 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 toimitusketjunhallinta saa tietoja tiettyyn työvaiheeseen käytetystä ajasta.
Tuotantotilauksen lopetus Tämä prosessi ilmaisee toimitusketjunhallintaille, 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 viestit käsitellään siinä järjestyksessä, jossa ne vastaanotetaan. Kuitenkin eri tuotantotilausten viestejä ei välttämättä käsitellä vastaanotetussa järjestyksessä, 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 näyttää jopa MES-viestejä muiden viestityyppien lisäksi.) Lisätietoja siitä, miten kumpaakin sivua voi käyttää viestien tarkasteluun, epäonnistuneiden viestien löytämiseen ja korjaamiseen sekä muuhun, löydät kohdasta Viestinkäsittelyn seuranta ja ohjaus.

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 real
StartedDate Valinnainen Date
AutomaticBOMConsumptionRule Valinnainen Valintalista (FlushingPrincip | Always | Never)
AutomaticRouteConsumptionRule Valinnainen Valintalista (RouteDependent | 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.
PrintLabel Valinnainen (Vaatii toimitusketjunhallinta version 10.0.45 tai uudemman) Enum (Kyllä | Ei)

Seuraavassa taulukossa on kentät, joita kukin ReportFinishedLines-sanoman ProdProductionOrderReportFinished-osan rivi tukee:

Kentän nimi Tila Tyyppi
LineNumber Valinnainen real
ItemNumber Valinnainen merkkijono
ProductionType Valinnainen Valintalista (MainItem | Formula | BOM | Co_Product | By_Product | None), laajennettava
ReportedErrorQuantity Valinnainen real
ReportedGoodQuantity Valinnainen real
ReportedErrorCatchWeightQuantity Valinnainen real
ReportedGoodCatchWeightQuantity Valinnainen real
AcceptError Valinnainen Enum (Kyllä | Ei)
ErrorCause Valinnainen Valintalista (None | Material | Machine | OperatingStaff), laajennettava
ExecutedDateTime Valinnainen DateTime
ReportAsFinishedDate Valinnainen Date
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 Integer
ToOperationNumber Valinnainen Integer
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
GenerateLicensePlate Valinnainen (Vaatii toimitusketjunhallinta version 10.0.45 tai uudemman) Enum (Kyllä | Ei)
LicensePlateNumber Valinnainen merkkijono
InventoryStatusId Valinnainen merkkijono
ProductionWarehouseId Valinnainen merkkijono
ProductionSiteId Valinnainen merkkijono
ProductionWarehouseLocationId Valinnainen merkkijono
InventoryDimension1InventoryDimension12 Valinnainen merkkijono

12 laajennettavaa dimensiota (InventoryDimension1InventoryDimension12) 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 PickingListLines-sanoman ProdProductionOrderPickingList-osan rivi tukee:

Kentän nimi Tila Tyyppi
ItemNumber Pakollinen merkkijono
ConsumptionBOMQuantity Valinnainen real
ProposalBOMQuantity Valinnainen real
ScrapBOMQuantity Valinnainen real
BOMUnitSymbol Valinnainen merkkijono
ConsumptionInventoryQuantity Valinnainen real
ProposalInventoryQuantity Valinnainen real
ConsumptionCatchWeightQuantity Valinnainen real
ProposalCatchWeightQuantity Valinnainen real
ConsumptionDate Valinnainen Date
OperationNumber Valinnainen Integer
LineNumber Valinnainen real
PositionNumber Valinnainen merkkijono
IsConsumptionEnded Valinnainen Enum (Kyllä | Ei)
ErrorCause Valinnainen Valintalista (None | Material | Machine | OperatingStaff), laajennettava
InventoryLotId Valinnainen merkkijono
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
InventoryDimension1InventoryDimension12 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 RouteCardLines-sanoman ProdProductionOrderRouteCard-osan rivi tukee:

Kentän nimi Tila Tyyppi
OperationNumber Pakollinen Integer
OperationPriority Valinnainen Valintalista (Primary | Secondary1 | Secondary2 | ... | Secondary20)
OperationId Valinnainen merkkijono
OperationsResourceId Valinnainen merkkijono
Worker Valinnainen merkkijono
HoursRouteCostCategoryId Valinnainen merkkijono
QuantityRouteCostCategoryId Valinnainen merkkijono
HourlyRate Valinnainen real
Hours Valinnainen real
GoodQuantity Valinnainen real
ErrorQuantity Valinnainen real
CatchWeightGoodQuantity Valinnainen real
CatchWeightErrorQuantity Valinnainen real
QuantityPrice Valinnainen real
ProcessingPercentage Valinnainen real
ConsumptionDate Valinnainen Date
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 DateTime
EndedDate Valinnainen Date
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-integraatiokehyksen 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 toimitusketjunhallintaiin, toimitusketjunhallintain on ehkä lähetettävä sanoman tilaa koskevaa palautetta. Seuraavassa on esimerkkejä tilanteista, joita tämä toiminta voi koskea:

  • Kukaan ei ole vastuussa MES-integraation 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ää toimitusketjunhallintain vakiohälytysominaisuutta. Lisätietoja vakiohälytysten käytöstä on seuraavissa resursseissa:

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.

Käsiteltyjen ja peruutettujen sanoman käsittelijän sanomien tyhjentäminen

Ajan myötä kolmannen osapuolen MES-järjestelmiin liittyvät käsitellyt ja peruutetut viestit voivat kertyä järjestelmään, mikä voi vaikuttaa suorituskykyyn ja datanhallintaan. Siksi sinun tulisi siivota nämä viestit säännöllisesti, jotta järjestelmän tehokkuus säilyy. Lue lisää kohdasta: Siivoa käsiteltyjen ja peruutettujen viestinkäsittelyn viestit.