Satunnainen käyttäjä saattaa kokea mallipohjaisen sovelluksen (model-driven app) hieman sekavana. Hirveästi kaikenlaisia toimintoja, eikä mitään mielikuvaa mitä ne ovat.

Mikä on kuvan lomakkella näkyvä Word templates? Entä listan yhteydessä näkyvä See associated records? Eivätkä nuo loputkaan kaikki mitään itsestäänselviä ole. Saati kaikissa sovelluksissa tarpeellisia.

Turhat toiminnot saa kuitenkin siivottua käyttöliittymästä pois. Katsotaan tällä kertaa miten tämä temppu tehdään.

Käyttöoikeusrooli – Yleiset

Käyttäjä tarvitsee mallipohjaista sovellusta käyttääkseen käyttöoikeusroolin, jolla hän saa käyttöoikeudet itse sovellukseen sekä sen esittämiin tietoihin.

Todellisuudessa käyttäjä tarvitsee useita oikeuksia käyttääkseen mallipohjaista sovellusta. Tämän takia käyttäjille annetaan usein Basic User -käyttöoikeusrooli, jolla nämä oikeudet saa. Lisäksi käyttäjille annetaan sovelluskohtainen käyttöoikeusrooli, jolla hoidetaan oikeudet sovelluksen käyttämiin tauluihin.

Toiset luovat Basic User -käyttöoikeusroolista kopion, lisäävät sille sovelluskohtaiset käyttöoikeudet, ja käyttävät tätä.

Basic User -käyttöoikeusrooli antaa kuitenkin todella laajasti oikeuksia eri toimintoihin. Aiemmin tekemämme isännöinti-sovellus näyttää Basic User -roolin (plus sovelluskohtaisen käyttöoikeusroolin) kanssa seuraavalta.

Hiljattain esiteltiin uusi käyttöoikeusrooli App Opener, joka on tehty juuri tähän tarpeeseen. Se antaa huomattavasti rajatummat käyttöoikeudet alustaan kuin Basic User.

Nyt sama näkymä näyttää seuraavalta.

Listanäkymässä ero on vielä suurempi.

Basic User:

App Opener:

Tällä kertaa sovelluksessa ei ole tarpeen käynnistää työkulkuja eikä ajaa raportteja. Luodaan App Opener -käyttöoikeusroolista oma kopio (App Opener Restricted) ja otetaan siltä pois myös seuraavat käyttöoikeudet:

  • report
  • run flows

Olemme saaneet karsittua jo aika liudan monelle käyttäjälle eksoottisia toimintoja pois.

Käyttöoikeusrooli – Taulukohtaiset asetukset

Edellä tekemämme muutokset koskevat kaikkia lomakkeita ja listoja. Voimme karsia harvemmin käytettyjä toimintoja myös taulutasolla. Määritellään, ettei käyttäjä voi jakaa (share) eikä määrätä toiselle (assign) huoneisto-tietueita.

Jolloin käyttöliittymä yksinkertaistuu jälleen hieman.

Mutta miten saisimme katoamaan vielä loputkin tässä sovelluksessa turhat painikkeet?

Komentovalikon muokkaaminen

Avataan mallipohjainen sovellus muokattavaksi ja valitaan näkymän komentovalikko (Edit command bar).

Pettymys. Järjestelmän vakiopainikkeita ei voi muokata eikä poistaa.

Aika kaivaa esiim XrmToolBox.

Ribbon Workbench

Ribbon workbench on XrmToolBox:in suosittu lisäosa, jolla voi muokata mallipohjaisen sovelluksen komentovalikoita.

Sen voi asentaa helpoiten XrmToolBox:in Configuration (1) osion alta löytyvästä Tool Librarysta (2). Haulla löytyy.

Asennuksen jälkeen yhdistetään oikeaan ympäristöön ja avataan Ribbon Workbench. Ensimmäisenä avataan ratkaisupaketti (solution).

Tehdään tätä tarkoitusta varten ratkaisupaketti, joka sisältää taulut joiden komentovalikoita haluamme muokata.

Lisätään ratkaisuun taulut, ilman objekteja tai metatietoja.

Lopuksi ladataan ratkaisu Ribbon Workbenchiin.

Miten tämä nyt sitten toimii?

Valitaan taulu, jonka valikoita muokataan (1). Taululla on aina kolme eri valikkoa:

  • Home (2) – Näkymien yhteydessä esitettävät valikot
  • SubGrid (3) – Lomakkeelle upotetun näkymän yhteydessä esitettävät valikot
  • Form (4) – Lomakkeen valikot

Sitten vain valitaan valikosta piilotettava elementti ja hiiren oikealla Hide (5).

Kun halutut muutokset on tehty, julkaistaan ne (Publish, 6).

Ennen

Jälkeen

Kaikkea tälläkään ei saa piilotetttua. Esimerkiksi Show Cart -painiketta.

Muutokset tehdään kehitysympäristössä ja ne siirtyvät seuraavaan ympäristöön taulujen mukana. RibbonWorkbench:iä varten tehtyä ratkaisupakettia ei tarvitse siirtää kehitysympäristöstä eteenpäin.

Muutokset koskevat kaikkia käyttäjiä (ei admineita). Painikkeiden näkyvyys on toki mahdollista tehdä myös rooleihin perustuen.

Yhteenveto

Mallipohjaisista sovelluksista saa huomattavasti käyttäjäystävällisempiä poistamalla käyttöliittymästä tarpeettomat toiminnot. Tämä onnistuu käyttöoikeuksia karsimmalla. Viimeisen silauksen voi tehdä tarvittaessa Ribbon Workbench:illa.