Microsoft Flow:n kehitys kuvaa vauhtia jolla Office 365 -palvelut kehittyvät. Kirjoitin Flow:sta 5 kuukautta sitten lyhyen esittelyn. Silloin työnkuluissa pystyi hyödyntämään 45:ttä eri palvelua. Tänään luku on 129.
Office 365 -palvelua käyttävät organisaatiot. Mikäli teille tulee tarve pienelle sovellukselle, tarkistakaa aina ensin pystyykö sen toteuttamaan SharePoint + PowerApps + Flow yhdistelmällä. Ilman riviäkään koodia.
Tutustutaan tällä kertaa mielenkiintoiseen uuteen Flow:n toiminnallisuuteen – hyväksyntään (Approval). Organisaatiossa on tyypillisesti lukemattomia isoja ja pieniä työnkulkuja, joiden osana on hyväksyminen (matkalaskut, laitetilaukset, rekrytointi, tunnustilaukset, käyntikorttien tilaukset, ideaprosessi jne). Nyt erilaisten hyväksymisten toteuttaminen Flown:n avulla on entistä helpompaa.
Esimerkki
Tehdään yksinkertainen ratkaisu jonka avulla:
- Työntekijä voi tilata (mobiilisti) palavereihin tarjoiluja
- Tilatut tarjoilut hyväksytään ennen kuin ne toimitetaan
- Tehtyjä tilauksia voi analysoida Power BI -visualisoinneilla
Kaiken pohjana SharePoint -listat
Luodaan ratkaisun pohjaksi kaksi SharePoint -listaa:
- Tarjoiluvalikoima (AllItems), jossa pidetään yllä tilattavia tuotteita hintoineen
- Tilauslista (CoffeeForMeeting), johon tallennetaan tilaukset
- kuka tilasi (rivin luoja)
- mitä tilasi (ItemOrdered)
- tilatun tuotteen yksikköhinta (ItemOrdered:UnitPrice)
- paljonko tilasi (ItemCount)
- Milloin palaveri on (EventDateAndTime)
- Mikä on tilauksen tila (Status)
Valikoima-lista näyttää tältä:
Otsikossa on tuotteen nimen lisäksi myös hinta. Näin käyttäjä näkee mobiilisovelluksessa yhdestä alasvetovalikosta kaiken oleellisen.
Tilauslista näyttää tältä:
ItemOrdered on LookUp- kenttä joka viittaa AllItems-listan otsikko-kenttään. LookUp -kenttää luodessa on määritelty AllItems-listassa näytettäväksi myös ItemOrdered-listan UnitPrice -sarake. Näin voidaan jatkossa helposti laskea esimerkiksi tilauksen arvo.
Uuden tilauksen tekeminen SharePoint-listasta näyttää nyt tältä.
Haluamme kuitenkin tarjota käyttäjälle yksinkertaisemman lomakkeen, luonnollisesi mobiilisti.
Mobiili käyttöliittymä – PowerApps
Seuraavaksi siirrytään PowerApps -palveluun ja luodaan uusi sovellus. Ei luoda tyhjää sovellusta vaan käytetään pohjana SharePoint -listaa (ylärivin keskimmäinen vaihtoehto).
Annetaan SharePoint työtilan osoite ja valitaan pohjaksi juuri luotu tilauslista (CoffeeForMeeting).
Lyhyen odottelun jälkeen sovelluksemme on valmis.
Muokataan sovellusta hieman. Asetetaan uutta riviä luotaessa otsikkokentän arvoksi tilaajan nimi sekä aikaleima. Default-kenttän arvoksi siis:
User().FullName & ": " & Text(Now())
Vastaavasti Status-kentän arvoksi asetetaan ”New”. Piilotetaan Status- ja Otsikko -kentät. Lopuksi vielä järjestetään kentät mielekkäämpään järjestykseen ja annetaan niille tietojen syöttöä paremmin ohjaavat otsikot.
Vaihdetaan etusivun listan muotoilua myös hieman. Pelkän otsikon sijasta halutaankin näyttää Otsikko ja alaotsikko.
Lisätään aliotsikkoriville tilauksen tila ja kokonaisarvo.
"Status: " & ThisItem.Status & ", Value: " & (ThisItem.ItemOrdered_x003a_UnitPrice.Value * ThisItem.count) & "€"
Mobiilisovelluksemme on valmis!
Tilauksen hyväksyminen – Flow
Tehdään työnkulku joka käynnistyy aina jonkun luodessa uuden tilausrivin.
Seuraavaksi tarkistetaan hyväksyttiinkö tilaus ja päivitetään sen mukaisesti tilauslistan status-kentän arvoksi joko ”Approved” tai ”Rejected”.
Lopuksi hyväksytyt tilaukset lähetetään eteenpäin sähköpostilla.
Tilauksen voisi toki välittää eteenpäin myös oikeasti sähköisesti sovitun rajapinnan kautta.
Tilauksen tekeminen käytännössä
Miltä ratkaisu näyttää loppukäyttäjille? Android-puhelimella tilauksen tekeminen näyttää tältä (PowerApps-osuus).
Hyväksyminen – Mobiili
Tilauksen tekemisen jälkeen hyväksyjä saa puhelimeensa notifikaation. Flow-sovelluksesta löytyy hyväksyntää odottava tilaus, jonka voi näppärästi hyväksyä tai hylätä. Molemmissa vaihtoehdoissa hyväksyjä voi syöttää vapaamuotoisen kommentin.
Tämä kaikki on vakiotoiminnallisuutta ja tulee Flow:n hyväksymis-toiminnallisuuden mukana.
Hyväksyminen – Sähköposti ja Office 365 -sivusto
Hyväksynnästä tulee kännykän push-notifikaation lisäksi hyväksyjälle myös sähköposti.
Approve ja Reject painikkeet ohjaavat käyttäjän Flow-työkalun vastaanotetut pyynnöt -sivulle, jossa päätökseen voi lisätä halutessaan vielä kommentin.
Mikäli organisaatiossa olisi Flow:lla toteutettuna useita hyväksymistyönkulkuja, kaikki odottavat pyynnöt löytyisivät tästä yhdestä paikasta.
Raportointi – Power BI
Viimeistellään ratkaisu vielä tilausten raportoinnilla. Tämän toteuttaminen on Office 365 -ympäristössä vaivatonta sillä SharePoint-listaa voi käyttää suoraan Power BI:ssä (Desktop) tietolähteenä.
Avataan Power BI Desktop, valitaan tietolähteeksi SharePoint-lista, kerrotaan mihin SharePoint-kirjastoon kytkeydytään ja tunnistaudutaan. Valitsen työtilasta CoffeeForMeeting-listan.
Muokataan tuotavaa tietojoukkoa vielä kyselyeditorilla. SharePoint-listasta tuodaan itse tehtyjen sarakkaiden lisäksi myös valtava määrä SharePointin sisäisiä sarakkeita. Poistetaan ne.
LookUp-kenttä (OrderedItem) sekä käyttäjän sisältävät kentät (Author ja Editor) viittaavat tietueeseen (Record). Poimitaan tietueista mukaan vain kiinnostavat kentät. Painetaan otsikon oikeassa reunassa olevaa symbolia, valitaan kentät ja kuitataan OK:lla.
Nyt meillä on siisti tietojoukko.
Poistetaan tilatun tuotteen otsikosta hinta. Jaetaan OrderedItem.Title -sarake kahteen osaan ”(” merkin mukaan (Split Column) ja poistetaan sarake johon jäi otsikon hintatieto.
Lisätään uusi sarake johon lasketaan tilauksen kokonaisarvo (tilattu määrä * tuotteen hinta).
Tehdään muutama visualisointi:
- Tilausten arvo tuotteittain per kuukausi
- Tilausten kokonaisarvo sekä tilausten lukumäärä kuukausittain
- Kaikkien tilausten arvon jakautuminen tuotteiden kesken
- Tilausten kokonaisarvo tilaajittain
Lopuksi julkaistaan tehdyt visualisoinnit samalle SharePoint sivustolle missä varsinainen tilauslistakin on.
Yhteenveto
PowerApps ja Flow ovat kehittyneet huikeasti niiden julkaisujen jälkeen. Tästä parista tulee vielä joskus InfoPathin korvaaja. Tosin paljon monipuolisempi. Eikä ainoastaan siksi että ratkaisuja on mahdollista täydentää esimerkiksi Power BI:llä.
Työkaluissa on kuitenkin edelleen omat puutteensa:
- Flow:ta tehdessä käyttöliittymä sekoaa välillä siten että ainoastaan selaimen sulkeminen auttaa.
- Kaikkia yksinkertaisiakaan toimenpiteitä ei voi vielä tehdä. Esimerkissäni tilauksen status-kenttä piti vaihtaa valintalistasta (choice) tekstikentäksi, sillä Flow:n avulla ei pysty vielä päivittämään valintalistan arvoa.
- Kun muuttelee ratkaisun pohjana olevia SharePoint listoja, saa jännittää hajoaako PowerApps samalla. Jouduin aloittamaan kerran kokonaan alusta kun PowerApps:issa lakkasivat SharePoint listan LookUp-kentät toimimasta. Sain ne kuntoon vain luomalla molemmat listat uudestaan.
- Esimerkissä kaikki hyväksymiset tulevat minulle. Yhtä hyvin hyväksymispyyntö voitaisiin lähettää tilaajan esimiehelle. Tai selvittää tilauksen arvo ja katsoa toisesta SharePoint-listasta kenelle tämän arvoinen tilaus lähetetään hyväksyttäväksi. Flow:n selainpohjaisella editorilla on vielä vaikeaa rakentaa omia ehtoja. Ehtokenttään ei pysty kirjoittamaan mitään (focus häviää ainakin Safari-selaimella) ja työkalut hyppivät ja hajovat ruudulla.
- Vaikka Power BI:llä on helppo tehdä raportointia SharePoint-listan tiedoista, ei se ole vielä oikeassa käytössä kovin käyttökelpoista. SharePoint-listan tietoja nimittäin ei pysty (vielä) ajastetusti päivittämään tehtyyn tietomalliin. Käppyrät eivät siis automaattisesti päivity kun uusia tilauksia ilmestyy.
Puutteistaan huolimatta näiden työkalujen mahdollisuuksiin kannattaa tutustua. Pidä kuitenkin mielessä että vauhdilla ja edullisuudella on hintansa. Toteutukseen tulee helposti erilaisia rajoituksia ja joutuu tekemään kompromisseja. Vastapainoksi sitten vauhtia riittää.
Tämä kirjoitus on osa laajempaa sarjaa jossa käyn läpi Office 365:n työkaluja. Mistä niissä on kyse ja miten niitä voisi hyödyntää.