Moni suhtautuu PowerAppsiin edelleen epäillen. Tähän on syynsä. Ensimmäiset versiot olivat vähintäänkin bugisia. Tilanne tänään on toinen ja onkin korkea aika korjata käsityksiään.
PowerAppsilla tullaan tekemään paljon hyödyllisiä sovelluksia.
Yritetään avata hieman PowerAppsin vahvuuksia. Tehdään ratkaisu, jossa
- käytetään PowerAppsissa hyväksi mobiililaitteen sijaintietoa
- hyödynnetään Power BI:n uutta PowerApps-visualisointia
Esimerkkisovellus – Myymälöiden tarkastus
Kuvitellaan yritys, jonka tuotteita myydään lukuisissa myymälöissä pääkaupunkiseudulla. Yritys on tarkka brändistään ja haluaa säännöllisesti tarkistaa, missä kunnossa heidän tuotteitaan kaupittelevat myymälät ovat.
Tehdään myymälöiden tarkastukseen mobiilisovellus. Tietenkin PowerAppsilla.
Myymälät
Ensimmäiseksi tarvitsemme listan tarkistettavista myymälöistä. Käytetään HSL:n myyntipisteitä, sillä niiden tiedot on saatavilla netistä. Mikä parasta, aineistoissa on mukana myyntipisteiden tarkat sijainnit (latitude + longitude).
Lisätään exceliin uusi sarake (tarkastettu = false) ja muodostetaan sen pohjalta SharePoint-lista (Export Table to SharePoint list…).
Lisätään luotuun SharePoint-listaan vielä sarakkeet tarkastaja, siisteys sekä tuotteiden näkyvyys.
PowerApps
Luodaan PowerApps-sovellus käyttäen tietolähteenä Myymälät-listaa. Valitaan listalla näytettäväksi myymälän nimi + kaupunki.
Tarkastajan tehtävänä on tarkistaa myymälän yleinen siisteys sekä miten hyvin yrityksen tuotteet ovat näkyvillä. Viilataan PowerAppsia hieman.
- Muokataan aloitusnäyttöä siten että riviä klikkaamalla siirrytään suoraan muokkausnäyttöön
- muokkausnäytössä vaihdetaan
- myymälän nimi ja osoite kentiksi joita ei voi muokata
- siisteys ja tuotteiden näkyvyys kentät tähtiluokituksiksi (asteikko 1-5)
- tarkastettu -kentän arvoksi true
- Poistetaan yksittäisen rivin katselunäyttö kokonaan
Nyt meillä on sovellus, jolla tarkastaja voi
- valita myymälän jossa on
- kirjata kyseisen myymälän siisteyden ja tuotteiden näkyvyyden
Helppoa!
Sijaintitiedon hyödyntäminen PowerAppsissa
Myymälöitä on 500. Tarkastettavan myymälän valitseminen listalta ei vaikuta kovin kätevältä. Tiedämme tarkastajan olevan myymälässä käyttäessään sovellusta. Helpotetaan hänen työtään hieman. Muokataan aloitusnäytön lista näyttämään kaikkien myymälöiden sijasta tarkastajan lähellä olevat myymälät. Tämä onnistuu hyödyntämällä mobiililaitteen paikannustietoa, jonka PowerApps meille tarjoaa.
Ratkaisumme on erittäin suoraviivainen. Suodatetaan listaan ainoastaan myymälät joiden sijainnin leveys- ja pituusaste poikkeaa max 0,001 astetta käyttäjän sijainnista.
Myymäläseuranta – Power BI
Yritystä kiinnostaa kovasti tarkastuskäyntien tuottama tieto. Tehdään Power BI -raportti, joka käyttää lähdetietona samaa SharePoint-listaa PowerAppsin kanssa.
Isolla kartalla näkyvät kaikki myymälät. Tarkastetut myymälät tummalla ja tarkastamattomat vaalealla värillä. Palkit esittävät miten arvostelut jakautuvat siisteyden ja tuotteiden näkyvyyden osalta (asteikolla 1-5). Oikean alakulman punaisesta ympyrästä näemme miten vähän myymälöitä on tarkastettu.
Power BI:ssä visualisointeja voi käyttää suodattimina. Klikkaamalla Tuotteiden näkyvyys = 5 -palkkia, näytetään kartalla ainoastaan myymälät joissa tuotteiden näkyvyys on arvioitu kiitettäväksi.
Tarkastuskäyntien työnohjaus – Power BI:n PowerApps -visualisointi
Myymälöitä on paljon ja tarkastajia on useita. Olisi kätevää jos Power BI:stä voisi ohjata tarkastamattomia myymälöitä tarkastettavaksi eri tarkastajille.
Tehdään tätä varten oma raportti, jossa tarkastellaan ainoastaan tarkastamattomia myymälöitä. Niitä voi suodattaa kartalle kunnan, postinumeron tai tarkastajan (kenelle myymälä on määrätty tarkastettavaksi) mukaan.
Raportilla valitaan joukko myymälöitä, jotka sitten annetaan tarkastettavaksi tarkastajalle.
Ladataan PowerApps -visualisointi marketplacesta (kolme pistettä Visualizations-osion lopussa) ja lisätään se raportille. Valitaan PowerAppsissa tarvittavat kentät visualisointiin (id ja title) ja painetaan Create new.
Pienen odottelun jälkeen PowerApps-pohja on luotu. Siinä on Gallery-kontrolli, jonka riveinä (Items) on PowerBIIntegration.Data. Voimme valita riveillä esitettäviksi tiedoiksi Titlen tai Id:n (jotka juuri äsken valitsimme mukaan Power BI:ssä).
Tallennetaan, julkaistaan ja jaetaan PowerApps ja palataan Power BI -raportille. Nyt oikeassa laidassa näkyy PowerApps-sovelluksemme. Valitsemme raportilla kunnaksi Espoon, jolloin PowerApps:ssa näkyy kaikki kaikki Espoossa sijaitsevat myyntipaikat.
Vaihtamalla kunnaksi Järvenpään ja valitsemalla kartalta kaksi myyntipaikkaa, näkyy PowerAppsissa ainoastaan nämä kaksi myyntipaikkaa.
PowerAppsin gallery-kontrolli toimii siis samalla tavalla kuin muutkin Power BI:n visualisoinnit. Tämä alkaa vaikuttamaan mielenkiintoiselta.
Palataan takaisin PowerApps:iin ja lisätään
- Tarkastaja -kenttä, joka on kytketty AzureAD käyttäjähakemistoon. Siihen kirjoittamalla on helppo poimia tarkastaja
- Painike, jolla myymälät nakitetaan valitulle tarkastajalle
Painike kopioi myymälöiden Id:t kokoelmaan (Collect).
PowerAppsissa tyypillisesti päivitetään yhtä tietovaraston riviä kerrallaan. Miten päivittäisimme usealle SharePoint -listan riville tarkastaja-kentän arvon?
PowerApps ja Flow
Tietenkin käynnistämällä työnkulun. Luodaan uusi työnkulku Action-osion alta.
Työnkulku saa parametrina
- merkkijonon, jossa on päivitettävien SharePoint-listan rivien id:t (pilkulla erotettuna)
- tarkastajan sähköpostiosoitteen
Muodostetaan id:t sisältävästä merkijonosta taulukko (array) Split-toiminnolla. Tämän jälkeen käydään taulukon kaikki rivit läpi ja lisätään jokaista vastaavaalle SharePoint-listan riville tarkastajaksi saatu sähköpostiosoite.
Työnkulun suoritus kestää pienen hetken, joten tehdään käyttäjälle kuittausnäyttö, jossa kerrotaan toimenpiteen onnistuneen.
”Lisää tarkastajan työlistalle” -painikkeen OnSelect näyttää loppujen lopuksi seuraavalta.
Lisätään myymälöiden id:t kokoelmaan, käynnistetään Flow oikeilla parametreilla ja siirrytään kuittausnäyttöön.
Ratkaisumme ensimmäinen versio on valmis!
Voimme Power BI -raportilta valita kaikki Espoon Leppävaaran Sellon lähellä olevat myymälät ja laittaa ne vaikka minun työlistalleni.
Tarkastajan sovellus näyttää seuraavalta. Tällä kertaa olin kyseisen R-kioskin lähellä.
Yhteenveto
PowerAppsin vahvuus on ketteryys. Sen avulla saa nopeasti rakennettua ensimmäisen toimivan version ratkaisusta. Tämän jälkeen jatkokehitys on helppoa. Ratkaisua voidaan kokeilla kentällä, kerätä palautetta, tehdä parannuksia ja julkaista taas uusi versio kokeiltavaksi.
Käytössä on mahtava määrä liittimiä (connector) eri järjestelmiin. Mieti jos tämän ratkaisun taustajärjestelmänä olisi SharePoint -listan sijasta esimerkiksi Dynamics…
Toki PowerAppsissa on edelleen puutteita.
- Mikäli sovelluksen ensimmäisellä näytöllä on johonkin taustajärjestelmän kiinnitetty lista, sen lataaminen todellakin kestää. Esimerkkimme myymälälistan ilmestyminen ruudulle otti noin 8 sekuntia.
- PowerAppsista käynnistettävän Flow:n luominen ja muokkaaminen on tuskaista. Huomaat kun kokeilet. Omani lakkasi yllättäen kokonaan toimimasta.
- SharePoint -listat ovat helppo tapa aloittaa. Tehtäessä kytköstä Power BI:hin kannattaa käyttää jotain direct query:a tukevaa tietolähdettä (esim Azure SQL DB). Silloin PowerAppsilla tehdyt päivitykset näkyvät heti Power BI -raporteilla.
Hi timo , could you please share the app file and powerbi file, very good topic
TykkääLiked by 1 henkilö
Hi! I can share app file + power bi file, but connection between power bi dashboard and powerapps might be broken after that. And you still need to build flow for assigning stores for people. And build the sharepoint list.
Might be easier to just put it together from scratch than trying to get those individual pieces of solution to work together again in different environment.
TykkääTykkää