december 17, 2020

Julekalender afsnit 17

Tilbage til blog

Automatiser dine processer med business events

De fleste kender til alert/påmindelsesfunktionaliteten i D365/AX, men en ulempe ved disse er at det kun er brugere der er oprettet i systemet der kan modtage disse påmindelse. I D365 er det nu muligt at sende påmindelser eksternt vha. funktionaliteten Forretningshændelser (Business events). Når der sker en påmindelse/hændelse i D365 kan dette efterfølgende udløse et flow vha. Power Automate som her enten sender en mail, danner en fil, opretter en post på SharePoint osv.

I nedenstående simple eksempel benyttes funktionaliteten til at advisere om indgangskontrol når en indkøbsordre er modtaget. For at kunne opsætte et flow skal det først sikres at der findes en forretningshændelse, der kan benyttes.

I D365 findes oversigten over alle forretningshændelser, sådan den rigtige kan udvælges.

Der oprettes et nyt flow der startes fra en tom skabelon.

Når flowet oprettes, vælges hvilken event der skal trigge at flowet startes. Her vælges udløseren ”Når der opstår en forretningshændelse”.

I det første element i flowet angives detaljer omkring hvilket D365 miljø forretningshændelsen opstår. Når miljøet er valgt kan man herefter se hvilke kategorier og hændelser der er tilgængelige. I eksemplet skal der sendes en mail når en indkøbsordre er modtaget og kategorien Indkøbsordre vælges og hændelsen er ved modtagelse af indkøbsordren.

Når hændelsen opstår i D365 dannes der en JSON fil med oplysninger omkring hændelsen. Det næste step i flowet er derfor at besked der dannes fra D365 skal ”fortolkes”.

I flowet oprettes elementet Fortolk JSON. I indholdsfeltet indsættes brødtest og værdien i skema indsættes ved at hente et eksempel på skemaet fra D365 (se næste billede).

Da det er hændelsen ”Indkøbsordre modtaget” der benyttes i D365 hentes skemaet for denne.

Det bliver automatisk dannet en txt fil og hele tekststrengen fra denne indsættes i ”Skema” feltet i Fortolk JSON elementet.

Den JSON fil der dannes fra D365 indeholder nogle basale oplysninger fra indkøbsordren. Hvis der ønskes flere oplysninger kan disse hentes ved at tilføje et nyt trin i flowet hvor elementet ”Hent en post” benyttes. Her kan man vha. input fra den fortolkede JSON fil hente oplysninger gennem de ODATA entiteter der findes i D365.

Til sidst tilføjes et trin hvor at selve mailen afsendes i flowet. I denne kan der indsættes dynamisk indhold fra JSON filen og de oplysninger der er hentes vha. ”Hent en post” trinnet.

I eksemplet sendes mailen til en prædefineret mail, men denne kunne ligeledes have været baseret på dynamisk indhold. Bemærk at udover at danne en mail kunne der have været yderligere trin i flowet – f.eks. kunne informationen der blev opsamlet automatisk være blevet gemt som en XML fil som herefter blev indlæst i et ekstern QA system osv.

Efter at flowet er komplet gemmes dette. I detaljerne for det gemte flow kan ses det hyperlink der skal bruges for at kunne tilgå flowet. Dette hyperlink kopieres da dette skal bruges i D365 for at kunne opsætte forretningshændelsen.

Tilbage i D365 oprettes et nyt Slutpunkt under forretningshændelser. Dette skal være af typen Microsoft Power Automate. I selve slutpunktet indsættes hyperlinket til det flow, der blev oprettet tidligere.

På oversigten over forretningshændelseskataloget aktiveres hændelsen ”Indkøbsordre modtaget” efterfølgende. Når hændelsen aktiveres angives det slutpunkt der netop blev oprettet.

Herefter er processen opsat og der vil nu automatisk blive sendt en mail når en indkøbsordre er modtaget.

I dette eksempel modtages ordren 00000280.

Og kort tid efter ankommer mailen med detaljerne fra D365.