Osa meistä muistaa vielä Dataverse for Teamsin. Se on riisuttu versio Dataversestä, jota pystyy käyttämään Office-lisensseillä. Jokusen ratkaisun olen sillä itsekin rakentanut.

Mutta nyt tarvitsisi tehdä jotain, sillä Microsoft ajaa Dataverse for Teams -ympäristöt ensi vuonna alas. Aikataulu on seuraava:

  • 15. marraskuuta 2026 jälkeen ei voi luoda enää uusia Dataverse for Teams -ympäristöjä.
  • 15. syyskuuta 2027 kaikki Dataverse for Teams -ympäristöt jäädytetään (suspend). Sovellukset, työnkulut, agentit ja data eivät ole enää käyttäjien saatavilla.
  • 15. lokakuuta 2027 kaikki Dataverse for Teams -ympäristöt poistetaan.

Aikaa vielä on, mutta tätä kannattaa jo hieman ryhtyä suunnittelemaan. Toki helpottaa kun tietää mitä ne vaihtoehdot ovat.

Vaihtoehto 1 – Päivitys täyteen Dataverseen ja lisenssien hankkiminen

Helpoimmalla pääsee päivittämällä Dataverse for Teams -ympäristön täydeksi Dataverse-ympäristöksi. Ja hankkii kaikille käyttäjille tarvittavat lisenssit (esim Power Apps Premium). Näin kaikki voivat jatkaa sovellusten ja työnkulkujen käyttöä kuten ennenkin.

Ongelmana tässä on se, että todennäköisesti ne lisenssit olivat alun perinkin syynä miksi alustaksi valittiin Dataverse for Teams, eikä Dataverse.

Vaihtoehto 2 – Ratkaisun muuttaminen käyttämään SharePoint-listoja Dataverse for Teamsin sijaan

Hieman työläämpi vaihtoehto on muokata ratkaisua siten, että se hyödyntää tietovarastona SharePoint-listoja Dataverse for Teamsin sijasta.

Ongelmana tässä taas on se, että todennäköisesti alun perinkin on haluttu pohjaksi oikea tietovarasto SharePoint-listojen sijasta. On haluttu aidot relaatiot, rivejä on paljon tai SharePointin nuhaisuus tässä käytössä on muuten vain ollut esteenä.

Vaihtoehto 3 – Päivitys täyteen Dataverseen ja sovelluksen korvaaminen hallittuna sovelluksena

Mielestäni tämä on se todennäköisin päivityspolku usealle organisaatiolle.

  • Rakennetaan käytettävä sovellus uudestaan hallittuna sovelluksena (managed apps). Näin käyttö sisältyy Power Apps Premium -lisenssiin (jos käyttäjällä sellainen on) tai käytöstä veloitetaan 0,1 Copilot Creditiä per API-kutsu.
  • Muunnetaan Dataverse for Teams -ympäristö täydeksi Dataverse-ympäristöksi

Katsotaan seuraavaksi, miten tämä karkeasti ottaen tehdään.

Esimerkki – My Office Days -sovellus

Meillä on työpaikalla käytössä Dataverse for Teamsia hyödyntävä sovellus, jolla käyttäjät voivat kertoa muille milloin ovat tulossa toimistolle.

Tehdään tästä hallittu sovellus.

Sovelluksen määrittelyt

Sovelluksen määrittely on helppoa, sillä meillä on jo olemassa toimiva sovellus joka kopioidaan sellaisenaan. Ladataan omalle koneelle Dataverse for Teams -ratkaisun ratkaisupaketti. Poimin mukaan vain käytetyt taulut ja sovelluksen.

Huom! Mikäli alkuperäiselle ratkaisulle ei ollut olemassa erillistä kehitys- ja testiympäristöä, voit luoda ne tämän ratkaisupaketin avulla.

Lisätään purettu ratkaisupaketti VS Coden työkansioon ja pyydetään GitHub Copilottia kirjoittamaan sen pohjalta kuvaus sovelluksesta ja sen käyttämästä tietomallista.

Kuvaukset vaikuttavat varsin hyviltä. Luetaan ne kuitenkin vielä läpi ja tarkistetaan sisällön todenmukaisuus.

Hallitun sovelluksen tekeminen

Pyydetään agenttia tekemään vastaava hallittu sovellus.

HUOM! Toistaiseksi projektissa käytettävä Git-repository voidaan asettaa ainoastaan tässä kohtaa. Mikäli et tee sitä ja haluat tallentaa lähdekoodit omaan GitHubiin Microsoftin tarjoaman sijasta, joudut tekemään uuden projektin.

Agentilla oli hieman ongelmia lisätä olemassa olevia Dataverse for Teams -tauluja mukaan ratkaisuun. Se kun ensin yritti jääräpäisesti lisätä niitä kehitysympäristöstä (jossa niitä ei ollut). Lopulta agentti ymmärsi, että se pystyy lisäämään ratkaisuun mukaan tauluja mistä tahansa Dataverse-ympäristöstä.

Ensimmäinen versio sovelluksesta näyttää lupaavalta.

Agentti tykkää lisätä käyttöliittymään kaikenlaisia pieniä yksityiskohtia. Siivotaan siitä kaikki turha pois. Lopputulos on varsin toimiva.

Sovelluksen kehitys ja testaaminen testidatalla?

Hallittuja sovelluksia kehitetään omalla työasemalla ja ne julkaistaan muiden käyttöön Copilot Managed Runtimeen. Mitä jos haluaisin testata sovellusta käyttäen testiympäristön Dataverse-dataa?

Pyydetään agenttia lisäämään projektiin taulut molemmista ympäristöistä, sekä rakentamaan mekanismi, jolla voimme helposti vaihtaa näiden kahden ympäristön välillä.

Agentti luo meille ympäristöt, joissa on omat tietolähteensä. .active-tiedostossa määritellään kumpaa ympäristöä käytetään.

Kun sovellus käännetään (npm run build), niin mukaan tulee vain valitun ympäristön tietolähteet.

Optimointeja

Lopuksi pyydän agenttia tekemään muutamia pienempiä optimointeja. Ensinnäkin hakemaan käyttäjien profiilikuvat ainoastaan kerran mikäli sama käyttäjä on tulossa toimistolle useana päivänä. Toiseksi pyydän agenttia optimoimaan tietojen haun Dataversestä sovellusta käynnistäessä. Oletuksena nämä tykkäävät hakea kaikki tiedot peräkkäin vaikka ne voisi hakea rinnakkain.

Julkaisu

Olen tyytyväinen lopputulokseen, julkaisen sovelluksen ja jaan sen kaikille käyttäjille. Se käyttää samaa tietovarastoa kuin Dataverse for Teams -sovelluksemme. Jossain kohtaa ensi vuonna meidän tarvii ainoastaan päivittää tuo ympäristö täydeksi Dataverse-ympäristöksi ja olemme kuivilla.

Yhteenveto

Vaikka hallitut sovellukset vaikuttavat mitä parhaimmalta vaihtoehdolta korvata Dataverse for Teams -sovellukset, en suosittele käärimään hihoja aivan vielä. Hallitut sovellukset ovat vielä preview-vaiheessa. Käytännössä:

  • ALM:n osalta on takuulla tulossa vielä parannuksia.
  • Lupaava hinnoittelumalli voi vielä muuttua.

Mutta mikäli teillä on Dataverse for Teams -sovelluksia käytössä, kannattaa hallittujen sovellusten kehitystä seurata kevään aikana.