SharePoint lijsten en Power Automate (Flow) – een prachtcombi

Soms ben je op zoek naar een oplossing voor een veelvoorkomend probleem. Zoals het gemakkelijk en zorgeloos bijhouden van contracten. Je contracten met een schoonmaakorganisatie, een leasemaatschappij, een verzekeraar of een IT- leverancier.

Het is heel praktisch om deze contracten in een lijstje bij elkaar te zetten.
Maar ja, hoe houd je de verantwoordelijke persoon nu op de hoogte dat een contract afloopt.

Dat leg ik hier uit als case, met:
een eenvoudige SharePoint lijstje en
een Power Automate (Flow) werkstroom.

De Case

Binnen je organisatie sla je vaak Contracten op. Contracten en overeenkomsten hebben meestal een einddatum en een opzegtermijn. De contractverantwoordelijke binnen je organisatie moet in de gaten houden wanneer een contract verloopt. Het zou natuurlijk heel handig zijn wanneer deze persoon een e-mail waarschuwing krijgt dat een contract verloopt. Gelukkig kan kan Flow daarvoor zorgen. Wij leggen het je graag stap-voor-stap uit.

Een volledig automatische e-mail herinnering kun je zelf opzetten.  Als voorbeeld geven we in de lijst aan hoeveel dagen voor het verlopen van het contract de verantwoordelijke persoon een bericht moet krijgen.

Zo’n volledig automatische e-mail herinnering kun je zelf opzetten.

Om dit te kunnen organiseren gebruiken we een SharePoint lijst, Flow en Outlook.

We gaan dit nu opzetten.

We gaan dit nu opzetten.

  • Maak in SharePoint een nieuwe lijst aan.
  • Klik op de site op List
  • Klik op List en noem je Lijst bijvoorbeeld ‘Contracten’.
  • Ga naar het tandwiel en ga naar List Settings.
  • Maak de volgende kolommen aan
Naam kolom Type kolom Verdere instellingen
Vervaldatum Datum/Tijd Alleen Datum tonen
Verantwoordelijke Persoon of Groep  
DatumVoorafWaarschuwen Number Geen decimalen
LinkNaarContract Hyperlink of
Afbeelding
Als Hyperlink weergeven
ActieMail Berekend veld Voer bij formule in:
=Vervaldatum-
DagenVoorafWaarschuwen

Het veld DatumVoorafWaarschuwen is een veld waarin je het aantal dagen voor de Vervaldatum opgeeft.

Het veld ActieMail is een berekend veld van de Vervaldatum min het aantal dagen uit het veld DatumVoorafWaarschuwen. Het resultaat van dit veld is een datum. Op de berekende datum moet er een e-mail gestuurd worden naar de persoon die verantwoordelijk is. Maak dus een Calculated veld aan in de SharePoint lijst.

Het resultaat is een lijst zoals deze:

Het veld ActieMail staat nu op 8-11-2019. Als het vandaag 8 november 2019 is, zal de Verantwoordelijke ‘Sander Hoekstra’ de herinneringsemail ontvangen en hier waarschijnlijk blij mee zijn.

Zoals gezegd hebben we Power Automate nodig om dit te kunnen regelen. Hoe maken we deze workflow? Er zijn meerdere manieren om een Flow te maken.

Ik laat nu de manier zien om vanuit het Power Automate pakket een nieuwe workflow te maken.

  • Ga in de browser naar https://emea.flow.microsoft.com/
  • Klik op Create
  • Klik op Scheduled Flow (elke dag moet de workflow draaien om te kijken of er contracten verlopen)
  • Ik noem mijn Flow ‘Contractenlijstherinnering’ en deze moet dagelijks werken.
  • Klik op Create
  • Dat was Stap 1, so far so good. Klik op de ‘New step’ knop.
  • De bedoeling van de stap is om Flow in onze SharePoint lijst te laten kijken. Dat doen we met een SharePoint opdracht ‘Get items’
  • Klik op ‘Get items’
  • En vul je SharePoint site en Lijst in.
  • Kies weer New Step.

Nu moeten we een ‘Apply to each’ step gebruiken. Power Automate moet namelijk door de hele Contractenlijst lopen en bij elk contract kijken of er een mail gestuurd moet worden.

  • Klik op Control
  • En daarna op ‘Apply to each’
  • Klik in het lege vak. Klik hierna op Value
  • Klik op Add an action
  • Klik op ‘Control’ en daarna op ‘Condition’

Je scherm ziet er nu zo uit.

We moeten nu de Condition vullen. De voorwaarde is dat de datum in het veld ActieMail gelijk is aan de datum van Vandaag.

  • Klik op Condition.

De voorwaarde die getest moet worden is dus of de datum van vandaag gelijk is aan de datum van het veld ‘ActieMail’. Als er aan de voorwaarde voldaan wordt,  dan moet de Verantwoordelijke een mail krijgen.

  • Klik in ‘Choose a value’
  • Klik op Expression.
  • In het expressie veldje voer je de volgende tekst in:

formatDateTime(items(‘Apply_to_each’)?[‘ActieMail’], ‘yyyy-MM-dd’)

  • Klik op OK

Hierna selecteer je ‘is equal to’ in het middelste blokje en ga je naar het rechterveld. Ook hier klik je weer op Expression en nu voer je deze formule in:

formatDateTime(utcNow(),’yyyy-MM-dd’)

  • Klik weer op OK.

Zo, dat was het lastigste deel….

Als bij één of meer contracten het veld ActieMail op de dag van vandaag staat, dan moet er dus een e-mail gestuurd worden. Power Automate regelt dit, maar je moet nog wel de workflow inrichten.

  • Klik daarvoor op de knop ‘Add an action’ in het groene vlak, het ‘If yes’ gedeelte.
  • Typ nu ‘send’ en Power Automate geeft je de mogelijkheden iets te versturen.
  • Klik nu op de optie ‘Send an email (V2)’
  • Klik in het To vak en klik op het veld ‘Verantwoordelijke Email’
  • Klik het Subject Tekstvak en typ de tekst ‘Contract ‘ of iets anders wat je handig vindt. Zoek daarna in de Dynamic Content het veld Title en klik dat aan.

Je scherm zal er nu zo uitzien.

  • Klik op het veld ‘Body’
  • Je kunt nu door zelf te typen tekst het bericht vullen. Maak gebruik van het venster ‘Dynamic Content’ om velden in te voegen.

Ik werk het liefst met de ‘Code View’ om met HTML tags te kunnen werken.

De HTML View is de standaard weergave. Eventueel switch je tussen de HTML weergave of de Code weergave met een klik op het knopje </>

Het resultaat kan er zo uitzien, in de Code weergave. Dat betekent dat je de codes zoals ‘<br>’ ziet. <br> staat voor de code Break, ofwel een regeleinde.

De formule achter de tekst  ‘loopt af per’  is de volgende:

formatDateTime(items(‘Apply_to_each’)?[‘Vervaldatum’],’dd-MM-yyyy’)

De formule achter de tekst ‘Vandaar dit bericht op ‘ is de volgende:

formatDateTime(utcNow(),’d MMMM’)

Zo, je eerste workflow is klaar!

Klik op Save om op te slaan.

Nog wel even goed testen! 

  • Je kunt nu direct je workflow testen door op Test te drukken.
  • Klik op Save & Test
  • Klik weer op Run Flow

De e-mails worden nu vanuit Power Automate verstuurd.

Om te kunnen testen moet in het veld ActieMail de huidige datum staan. Maar dat had je ondertussen natuurlijk wel begrepen. 😉

Gefeliciteerd!

Je workflow is nu helemaal klaar. Hij zal elke dag helemaal zelf je contractenlijst doorlopen. Wanneer het nodig is, dan wordt het bericht verstuurd.

Ik hoop dat deze workflow handig voor je is. Voor vragen rondom andere mogelijkheden met Power Automate, SharePoint, Teams, Planner, Forms of andere toepassingen binnen Office 365 kun je altijd contact opnemen of een berichtje sturen naar Johan Klein Holte