Organisaatioiden onboarding-prosessit ovat hyvin erilaisia. Toisilla työ alkaa jo rekrytointivaiheessa. Toisilla vasta kun työsopimus on allekirjoitettu. Osalla onboarding tarkoittaa tehtäviä, jotka tehdään ennen työntekijän ensimmäistä työpäivää (esim. työvälineiden hankkiminen). Osalla taas tehtäviä, joita tehdään työntekijän ensimmäisen työpäivän jälkeen (perinteinen työtehtäviin perehdyttäminen).

Käytännössä organisaation onboarding-prosessi on jonkinlainen yhdistelmä edellämainittuja. Kaikki sitä tekevät, mutta käytännön toteutukset ovat hyvin erinäköisiä ja laajuisia. Työkaluina tyyppillisesti ne perinteiset. Excel, Word ja Intranet-sivut, OneNote, Planner jne.

Mikä erinomainen kohde Power Platform -toteutukselle!

Ja tällä kertaa tietenkin tehdään sellainen! Tai ainakin aloitetaan.

Ratkaisun keskeiset elementit

Esimerkissämme onboarding alkaa työsopimuksen allekirjoituksesta ja se jakautuu kahteen osaan.

1. Tehtävät ennen työntekijän ensimmäistä työpäivää

Ennen ensimmäistä työpäivää varmistetaan että kaikki on valmiina ensimmäisen työpäivä koittaessa. Tehtävät jakautuvat eri rooleille, eli käytännössä eri henkilöille. Esihenkilö tilaa lounaskortin, laitevastaava AAD-tunnuksen ja läppärin jne.

Tämä osa hoituu Teamsissa omassa tiimissään (onboarding). Tiimin jäseninä ovat henkilöt, jotka osallistuvat onboarding-prosessiin. Käytännössä tehtävistä pidetään kirjaa Dataverse for Teamsin päälle toteutetulla Power Appsilla.

2. Tehtävät työntekijän ensimmäisen työpäivän jälkeen

Työntekijän ensimmäisestä työpäivästä lähtien alkaa varsinainen työhön ja työpaikkaan perehdyttäminen. Tämä on pääosin yhden henkilön (coach) vastuulla, mutta se sisältää myös lukuisia tehtäviä, jotka uusi työntekijä hoitaa itsenäisesti.

Tätä osuutta varten luodaan jokaiselle uudelle työntekijälle oma tiiminsä. Sinne luodaan Planner-suunnitelma, jossa kaikki tehtävät ovat valmiiksi vastuutettuina. Näin uusi työntekijä näkee heti, mitä asioita valmentaja tulee hänen kanssaan käymään läpi ja mitä tehtäviä hänen odotetaan lähiviikkoina tekevän itse (esimerkiksi käymään valokuvassa, kirjoittamaan verkkosivuille itsestään 50 sanan mittainen kuvaus jne).

Tietomalli

Ratkaisua varten tarvitsemme seuraavat taulut.

Uusi työntekijä (Onboard)

Tauluun tallennetaan rivi jokaista uutta työntekijää kohden.

  • Tulevan työntekijän nimi (Name)
  • Aloituspäivä (Start day)
  • Työntekijän sähköpostiosoite (uudessa organisaatiossa) (Employee Email)
  • Työntekijän puhelinnumero (Phone)
  • Työntekijän sähköpostiosoite jota käytetän yhteydenpitoon ennen aloitusta (Employee current email)
  • Tuleva esihenkilö (Supervisor)
  • Tuleva valmentaja (Coach)
  • Laitehankinnoista vastaava (Device Manager)
  • Onko omboarding tehtävät luotu (Tasks created)
  • Plannerin osoite (Planner url)

Eli käytännössä taulu näyttää tältä.

Tehtävä (Onboard task)

Taulussa ylläpidetään ennen ensimmäistä työpäivää suoritettavia tehtäviä. Mallitehtävät (isTemplate=true) kopioidaan pohjaksi, kun uusi onboarding aloitetaan.

  • Otsikko (Name)
  • Kuvaus (Description)
  • Työntekijä, johon tehtävä liittyy (Onboard)
  • Linkki lisätietoihin, esim ohjeisiin (Link)
  • Tehtävän suorittajan mahdollinen muistiinpano aiheesta (Notes)
  • Rooli jolle tehtävän suorittaminen oletuksena kuuluu (Responsible Role)
  • Henkilö, jolle tehtävän suorittaminen kuuluu (Responsible)
  • Tila (Status)
  • Onko kyseessä tehtävän malli vai oikea tehtävä (isTemplate)

Roolit

Roolit-taulussa ylläpidetään rooleja, joille tehtävät määritellään tehtäväksi. Kullekin roolille voi määritellä henkilön, joka toimii roolissa oletusarvoisesti.

  • Nimi (Name)
  • Oletusvastuuhenkilö (Responsible default)

Toteutus

Tehtävien ylläpito

Luodaan aluksi näyttö (malli)tehtävien ylläpitoon. Tähän tarkoitukseen riittää Power Appsin Dataverse for Teams -taulun pohjalta generoima näyttö. Valitaan vain haluamamme kentät näkyviin lomakkeelle.

Tulevat työntekijät -lista

Onboarding-sovelluksen aloitusnäyttönä toimii lista käynnissäolevista onboardingeista. Käytännössä hieman muotoiltu responsiivinen galleria.

Tulevan työntekijän lisääminen

Tehdään seuraavaksi näyttö, jolla lisätään tulevan työntekijän tiedot. Henkilön lisääminen käynnistää onboarding-prosessin.

Tietojen tallennuksen yhteydessä luodaan (ennen ensimmäistä työpäivää) suoritettavat tehtävät. Mikäli niitä ei ole jo luotu.

Lyhyesti:

  • Haetaan kaikki esimerkkitehtävät (tehtävät joilla isTemplate = ’isTemplate (Onboarding Tasks)’.Yes)
  • Päivitetään kaikille tehtäville (UpdateIf)
    • tunnisteeksi (Onboarding Task) tyhjä (jolloin tallennuksen yhteydessä luodaan uusi)
    • viittaus uuteen työntekijään (Onboard)
    • isTemplate arvoksi false, kyseessä ei ole enää mallirivi vaan oikea tehtävärivi
    • vastuuhenkilöksi (Responsible) oikea henkilö (kuka vastaa kyseisen luokan tehtävistä tämän henkilön osalta)
  • Päivitetään onboardingin Tasks Created -kentän arvo vastaamaan todellisuutta
SubmitForm(frmOnboard);
If(
    frmOnboard.LastSubmit.'Tasks created' <> 'Tasks created (Onboards)'.Yes,
    ClearCollect(
        colTemplateTasks,
        Filter(
            'Onboarding Tasks',
            isTemplate = 'isTemplate (Onboarding Tasks)'.Yes
        )
    );
    UpdateIf(
        colTemplateTasks,
        true,
        {
            'Onboarding Task': Blank(),
            Onboard: frmOnboard.LastSubmit,
            isTemplate: 'isTemplate (Onboarding Tasks)'.No,
            Responsible: Switch(
                'Responsible Role'.Name,
                "Device Manager",
                frmOnboard.LastSubmit.'Device Manager',
                "Supervisor",
                frmOnboard.LastSubmit.Supervisor,
                "Forward Coach",
                frmOnboard.LastSubmit.Coach
            )
        }
    );
    Patch(
        'Onboarding Tasks',
        colTemplateTasks
    );
   Patch(Onboards, frmOnboard.LastSubmit,{'Tasks created':'Tasks created (Onboards)'.Yes});
    
)

Lisätään vielä aloitysnäytölle mahdollisuus luoda uusia työntekijöitä.

Tehtävät

Lopuksi luodaan näyttö, josta voi seurata ja päivittää tuleviin työntekijöihin liittyviä tehtäviä.

Tehdään kuitenkin aluksi komponentti, joka sisältää otsikon (tehtävästä vastaava rooli), sekä otsikkoa vastaavat tehtävät galleriassa.

Varsinaisella näytöllä on erilaisia suodattimia

  • Suodata tehtävät uuden työntekijän perusteella
  • Suodata tehtävät vastuuhenkilön perusteella
  • Tekstisuodatin (tehtävän nimi ja kuvaus)
  • Näytä ainoastaan keskeneräiset tehtävät

Sekä kolme kappaletta juuri luomaamme komponenttia. Kullekin vastuuroolille (Supervisor, Device Manager ja Forwarder Coach) omansa.

Viimeistellään näyttö lisäämällä sille dialogi, jonka avulla voi katsoa valitun tehtävän lisätietoja ja/tai muokata sitä. Esimerkiksi vastuuttaa se jollekin toiselle tai lisätä tehtävään liittyvä kommentti.

Lisätään komponentille painike, jolla edellisen dialogin saa auki tehtävän tiedoilla täytettynä.

Yhteenveto

Näin meillä on rakennettuna työkalu, jolla voi hallitusti pyörittää erilaisia uusien henkilöiden saapumiseen liittyviä tehtäviä. Kullakin tehtävällä on vastuuhenkilö ja sovelluksessa tehtäviä voi tarkastella eri näkökulmista.

Teamsin sisällä sovellus näyttää seuraavalta.

Ratkaisu kattaa toistaiseksi ainoastaan tehtävät, jotka tehdään ennen työntekijän ensimmäistä työpäivää. Ensi viikolla laajennetaan ratkaisua hieman ja luodaan työntekijälle ja hänen perhedyttäjälleen yhteinen Planner-suunnitelma.