Business analytics met Power BI 2025

Page 1


Business analytics

Business analytics met Power BI

7de editie

De site www.mijnstudiemateriaal.be geeft je toegang tot het digitale lesmateriaal bij dit boek. Je moet jouw licentie eerst wel activeren aan de hand van een activatiecode. Bij de activatie moet je de gebruiksvoorwaarden accepteren. Deze licentie is geldig gedurende een jaar en start vanaf de activatie van deze code.

ACTIVATIECODE

De licentieperiode start vanaf activatie en is 365 dagen geldig.

COLOFON:

7de druk 2025

Artikel 609583

ISBN 978-94-651-4213-5

D/2025/0078/194

Zetter: Banananas NUR 123-124 Coverontwerp: Frisco

Fotokopieerapparaten zijn algemeen verspreid en vele mensen maken er haast onnadenkend gebruik van voor allerlei doeleinden. Jammer genoeg ontstaan boeken niet met hetzelfde gemak als kopieën. Boeken samenstellen kost veel inzet, tijd en geld. De vergoeding van de auteurs en van iedereen die bij het maken en verhandelen van boeken betrokken is, komt voort uit de verkoop van die boeken.

In België beschermt de auteurswet de rechten van deze mensen. Wanneer u van boeken of van gedeelten eruit zonder toestemming kopieën maakt, buiten de uitdrukkelijk bij wet bepaalde uitzonderingen, ontneemt u hen dus een stuk van die vergoeding. Daarom vragen auteurs en uitgevers u beschermde teksten niet zonder schriftelijke toestemming te kopiëren buiten de uitdrukkelijk bij wet bepaalde uitzonderingen. Verdere informatie over kopieerrechten en de wetgeving met betrekking tot reproductie vindt u op www.reprobel.be.

Ook voor het digitale lesmateriaal gelden deze voorwaarden. De licentie die toegang verleent tot dat materiaal is persoonlijk. Bij vermoeden van misbruik kan die gedeactiveerd worden. Meer informatie over de gebruiksvoorwaarden leest u op www.mijnstudiemateriaal.be

© Uitgeverij VAN IN, Wommelgem, 2025

De uitgever heeft ernaar gestreefd de relevante auteursrechten te regelen volgens de wettelijke bepalingen. Wie desondanks meent zekere rechten te kunnen doen gelden, wordt verzocht zich tot de uitgever te wenden.

Voorwoord

Steeds meer organisaties erkennen het strategische belang van data. In een wereld die snel digitaliseert en waar artificiële intelligentie nieuwe mogelijkheden opent, is datagedreven besluitvorming essentieel geworden. Bedrijven hebben inzicht nodig om op elk niveau de juiste beslissingen te nemen en wendbaar in te spelen op veranderingen.

Of je nu een multinational bent of een lokale kmo: data-analyse biedt een concreet concurrentievoordeel. Met Power BI als krachtige en toegankelijke BI-tool kijk je niet alleen naar cijfers uit het verleden, maar ontdek je ook trends en inzichten die je organisatie richting geven voor de toekomst.

Je hoeft geen data scientist of BI-specialist te zijn om ermee aan de slag te gaan. Power BI combineert gebruiksvriendelijkheid met enorme mogelijkheden, waardoor zowel beginners als ervaren gebruikers snel waarde kunnen halen uit hun data.

Sinds de introductie in 2014 evolueert Power BI in een razendsnel tempo – elke maand verschijnen nieuwe updates en uitbreidingen. Dit handboek wordt jaarlijks aangepast om zo goed mogelijk aan te sluiten bij de actuele versie, maar het is mogelijk dat bepaalde schermen of functionaliteiten in jouw Power BI-versie er licht anders uitzien dan in dit boek.

De focus ligt op Power BI Desktop, de gratis bureaubladtoepassing waarmee je gegevens uit verschillende bronnen kunt ophalen, transformeren, analyseren en visualiseren. Je kunt er ook voor kiezen om het gegevensmodel te bouwen in Excel, zoals je zult zien in het hoofdstuk ‘Power BI in Excel’. We werken in dit handboek met de Engelstalige versie van Power BI (mei 2025), aangezien die de standaard is in de meeste bedrijven.

Als casus gebruiken we de gegevens van Tex-Mex bv, een fictieve kmo met 153 medewerkers die tortillachips produceert en wereldwijd exporteert. Zo leer je realistische vraagstukken analyseren en rapporteren in een bedrijfscontext.

Alle oefenbestanden zijn beschikbaar op www.mijnstudiemateriaal.be, waar je ook een FAQ-lijst vindt.

Heb je suggesties of feedback? Je bent altijd welkom om je opbouwende opmerkingen te delen via hoger.onderwijs@vanin.be.

Inhoudstafel

6.5

6.6

6.7 Kolommen samenvoegen

6.8

6.9

6.10 De eerste rij als veldnamen gebruiken

7.1

7.2

3.1

3.2

3.3 Relaties verwijderen

3.4 Relaties toevoegen

3.5 Feiten en dimensies

3.6 Kardinaliteit en kruisfilterrichting

7.1

7.2

7.3

7.4

1.1

1.3

1.4

1.5

2.1

2.2

2.3

2.4

2.5

2.6

2.7

2.8

2.9

2.10

2.11

Leeswijzer

Notitie

gebruikerstip of toelichting

VOORBEELD

Hoofdstuk 1 Inleiding Power BI

Met Power BI wil Microsoft business intelligence (afgekort: BI) beschikbaar maken voor de eindgebruiker (‘selfservice BI’).

1 Business Intelligence (BI)

Het overkoepelende begrip business intelligence kun je omschrijven als het omzetten van gegevens naar informatie. Deze informatie helpt organisaties om operationele en strategische beslissingen te nemen en te onderbouwen.

Je kunt het business-intelligenceproces1 heel eenvoudig voorstellen:

Figuur 1: het business-intelligenceproces

Gegevens verzamelen Gegevens transformeren Gegevens analyseren Gegevens presenteren

1 Gegevens verzamelen uit verschillende interne en externe systemen (ERP, CRM, web enzovoort).

2 De verzamelde gegevens omvormen (transformeren), zodat de gegevens uit de verschillende systemen met elkaar te vergelijken zijn en uniform zijn.

3 De verzamelde gegevens analyseren en omvormen tot informatie die bruikbaar is voor de organisatie.

4 De gevonden informatie presenteren in een dashboard.

Microsoft (Power BI) werd in juni 2024 genoemd als Leader in de Gartner® Magic Quadrant™ for Analytics and Business Intelligence Platforms.

2 Power BI Desktop

Power BI Desktop is een toepassing of bureaubladapplicatie die je als Office 365-gebruiker gratis kunt installeren.

Met Power BI Desktop kun je:

1 data uit verschillende gegevensbronnen importeren;

2 data transformeren en opschonen om een gegevensmodel te maken;

3 data visualiseren in rapporten;

4 rapporten delen met anderen met behulp van de Power BI Service. (In dat geval is een Power BI Pro- of Power BI Premium-licentie vereist.)

1 nl.wikipedia.org/wiki/Business_intelligence

Kortom, met Power BI Desktop kun je de verschillende stappen in het BI-proces doorlopen.

Vaak wordt de vergelijking gemaakt met een ijsberg. Het dashboard is het topje van de ijsberg, het meeste werk zit eronder.

Figuur 2: data-ijsberg

Power BI Desktop installeren

Je kunt Power BI Desktop op twee manieren installeren:

1 Rechtstreeks downloaden. Download het MSI-pakket en installeer het op je computer.

2 De app uit de Microsoft Store installeren (aan te raden).

Power BI Desktop rechtstreeks downloaden

1 Ga naar de officiële downloadpagina van Microsoft.

Je kunt de webpagina gemakkelijk vinden door de zoekterm Power BI Desktop download in te voeren in je favoriete browser.

Figuur 3: Power BI Desktop downloaden

De systeemvereisten (System Requirements) vind je op de downloadpagina:

• Besturingssysteem: Windows 10, Windows 11, Windows Server 2016, Windows Server 2019.

• Voor Microsoft Power BI Desktop is Internet Explorer 10 of hoger vereist.

• Microsoft Power BI Desktop is beschikbaar voor 32bits (x86) en 64bits (x64)-platformen.

Notitie

Power BI Desktop is niet beschikbaar voor MacOS.

2 Selecteer de taal. (In het handboek werken we met de Engelstalige versie van Power BI.)

3 Klik op de knop Downloaden. Download de versie van Power BI Desktop die overeenkomt met de architectuur (x86 of x64) van je Windows-besturingssysteem.

Als je niet zeker bent of je een x86-, dan wel een x64-besturingssysteem hebt, kun je dat opzoeken in het configuratiescherm.

Zoek op Systeeminformatie:

Figuur 4: systeeminformatie

Bij Systeemtype kun je zien of je een 32- of een 64 bitsbesturingssysteem hebt.

Figuur 5: systeemtype

4 Voer de MSI-installer uit en volg de installatiestappen.

De app uit de Microsoft Store installeren (aan te raden)

Open Microsoft Store of navigeer in je browser naar https://powerbi.microsoft.com/nl-nl/desktop/. Klik op de knop ‘Nu downloaden’.

Figuur 6: de Power BI Desktop-app installeren

De Power BI Desktop-app installeren heeft een aantal voordelen:

1 Automatische update: Windows downloadt de nieuwe versie op de achtergrond wanneer ze beschikbaar is. Alleen de onderdelen die gewijzigd zijn worden gedownload, wat zorgt voor een lichtere download.

2 Geen beheerdersrechten nodig.

Taal wijzigen (alleen mogelijk in de app)

Je kunt achteraf de taal wijzigen:

1 Klik op File > Options and settings > Options.

7: Options and settings

2 Bij (Global) Regional settings kun je de taal wijzigen.

Figuur

Figuur 8: Regional Settings

3

Preview features

Power BI evolueert in een razendsnel tempo. Nieuwe functionaliteiten kun je als previewfunctie uitproberen. Previewfuncties kun je in- of uitschakelen.

Om de previewfuncties in-of uit te schakelen klik je op File/Bestand > Options and settings > Options. Selecteer de functies die je wilt activeren en klik op OK.

Notitie

Previewfuncties worden toegevoegd, bijgewerkt, gewijzigd of verwijderd bij nieuwe updates. In het handboek worden dan ook geen previewfuncties gebruikt.

9: Preview features

Figuur

Hoofdstuk 2

Eenvoudige toepassing in Power BI Desktop

Power BI kan heel complex zijn, maar heeft tegelijk het voordeel dat het laagdrempelig is voor een beginnende gebruiker. Met heel weinig voorkennis kun je al snel een visueel aantrekkelijk rapport maken. We illustreren dit aan de hand van een eenvoudig voorbeeld. In de volgende hoofdstukken wordt iedere stap in detail behandeld.

Situatieschets

De omzetcijfers van het bedrijf Tex-Mex bv moeten maandelijks geanalyseerd worden als voorbereiding op de directievergadering. Om de cijfers duidelijk te presenteren, maken we gebruik van Power BI.

De data ontvangen we maandelijks van de verkoopdienst. Om het eenvoudig te houden, gebruiken we één Excel-bestand (Orders.xlsx) als brondata.

1 Data ophalen

1 Open Power BI Desktop.

2 Selecteer Blank report om een nieuw rapport te maken.

Figuur 1: nieuw rapport maken

3 Klik in het lint op Home > Excel workbook om gegevens uit een Excel-werkmap te importeren.

TORTILLA CHIPS

Figuur 2: Excel-werkmap importeren

4 Navigeer naar het opgavebestand Orders.xlsx en klik op Openen

5 In het linkerdeelvenster van het venster Navigator krijg je een overzicht van alle werkbladen, benoemde bereiken en gegevenstabellen. In het rechterdeelvenster krijg je een preview van de tabel te zien.

• Gegevenstabellen: Orders en Producten.

• Werkbladen: DimProducten en FactOrders.

6 Vink in het linkerdeelvenster de tabellen Producten en Orders aan.

Figuur 3: Navigator

Wat is het verschil?

Als je connecteert met het werkblad Fact_Orders, dan laad je niet enkel de gegevenstabel, maar ook alle andere informatie op het werkblad. In dat geval moet je al onmiddellijk transformeren (eerste vijf rijen verwijderen) voor je gaat visualiseren.

4: connecteren met een Excel-werkblad

Figuur

Als je connecteert met de gegevenstabel Orders, dan laad je enkel de gegevens in de tabel. Power BI herkent de veldnamen. Je kunt onmiddellijk de gegevens visualiseren.

Figuur 5: connecteren met een Excel-gegevenstabel

Notitie

Een gegevenslijst in Excel kun je pas een tabel noemen als je Opmaken als tabel hebt toegepast. Dat kan door de sneltoets CTRL+T of Insert > Table of Home > Format as Table

Een gegevenslijst opmaken als tabel is de basis om efficiënt met data te werken in Excel.

7 Klik op Load om de data te laden naar het gegevensmodel. Zodra de gegevens geladen zijn, kun je de tabellen Orders en Producten zien in het deelvenster Data. Vouw de tabel Orders uit om de velden te zien. De velden zijn alfabetisch gesorteerd.

Figuur 6: lijst met velden

Je hebt nu verbinding gemaakt met de gegevens en de gegevens geladen in Power BI Desktop. In het linkerdeelvenster kun je schakelen tussen de Report View (Rapportweergave), de Table View (Gegevensweergave), de Model view (Modelweergave) en de DAX query view door de pictogrammen te selecteren.

Figuur 7: weergaven of views

8 Bewaar het bestand. Klik op File > Save as. Geef het bestand de naam Rapport_Orders.

Figuur 8: bestand bewaren

Notitie

De bestandsnaamextensie van Power BI Desktop is .pbix

2 Gegevens visualiseren

Als de gegevens die je nodig hebt om je model te maken kant-en-klaar zijn, kun je onmiddellijk naar stap 5 in de data-ijsberg: gegevens visualiseren in een rapport.

Notitie

In praktijk zijn 3 (modelleren) en stap 4 (analyseren) vaak de meest complexe stappen in het proces.

De zaakvoerder wil de volgende cijfers presenteren:

• de gerealiseerde omzet per verkoper per jaar,

• de omzet per gewicht,

• de omzet per land,

• de omzet per jaar.

Het moet bovendien mogelijk zijn om het volledige dashboard te filteren per werelddeel. Het deelvenster Visualizations vind je naast het deelvenster Data

Figuur 9: het deelvenster Visualizations

Als je vertrouwd bent met draaitabellen en -grafieken in Excel, zul je snel merken dat visualisaties maken in Power BI op een gelijkaardige manier gebeurt.

Gerealiseerde omzet per verkoper per jaar:

1 Selecteer de visualisatie Clustered column chart

Figuur 10: visualisatie Clustered Column Chart

2 Vink de velden Year (Besteldatum), Verkoper en Omzet aan.

Figuur 11: lijst met velden

Figuur 12: kolomgrafiek gerealiseerde omzet per verkoper per jaar

3 Net zoals in een draaitabel of -grafiek kun je kiezen welke gegevens op de assen staan.

a Sleep het veld Verkoper naar het gebied X-axis. b Sleep het veld Besteldatum (Year) naar het gebied Legend

Figuur 13: assen

4 Het resultaat ziet eruit als volgt:

Figuur 14: kolomgrafiek gerealiseerde omzet per verkoper per jaar

5 Versleep de hoeken om het formaat van de grafiek te wijzigen. Let op de rode hulplijnen die het midden van het venster aangeven.

Figuur 15: formaat grafiek wijzigen

De omzet per gewicht

1 Deselecteer de eerste visualisatie. Klik naast de visualisatie ergens in de witruimte (het canvas) van het rapport.

2 Vink de velden Omzet (tabel Orders) en Gewicht (tabel Producten) aan.

Figuur 16: velden selecteren

3 Automatisch wordt de nieuwe visualisatie onder de vorige geplaatst.

Figuur 17: omzet per gewicht

Notitie

Power BI probeert relaties tussen tabellen te detecteren bij het inladen van de gegevens. In het voorbeeld heeft Power BI een relatie gedetecteerd tussen de tabellen Orders en Producten (veld Productnr). Door die relatie kunnen we probleemloos gegevens uit beide tabellen gebruiken om te visualiseren.

Als we dezelfde visualisatie in Excel willen maken met een draaigrafiek, dan moeten we vooraf met een zoek- en verwijzingsfunctie zoals VLOOKUP of beter XLOOKUP werken om de kolom Gewicht toe te voegen aan de tabel Orders

In het hoofdstuk 'Een gegevensmodel maken in Power BI Desktop' leer je meer over relaties.

De omzet per land

Om de omzet per land te visualiseren gebruiken we de visualisatie Map

Figuur 18: visualisatie map

Notitie

Om de visualisatie Map en Filled map te gebruiken moet de optie Use Map and Filled Map visuals aangevinkt zijn (File > Options and Settings > Options). Start Power BI opnieuw op om de optie te activeren.

Figuur 19: Use Map and Filled Map visuals

1 Klik in de witruimte van het rapport, zodat alle visualisaties gedeselecteerd zijn.

2 Vink de velden Omzet en Land aan.

3 Kies de visualisatie Map

4 Sleep het veld Land naar het gebied Location

Figuur 20: omzet per land

Bij kaarten in Power BI worden Bing-kaarttegels gebruikt, zodat je net als bij andere Bing-kaarten kunt in- en uitzoomen.

Kaartgegevens kunnen echter dubbelzinnig zijn. Parijs (Paris) ligt bijvoorbeeld in Frankrijk, maar ook in Texas. Je geografische gegevens zijn waarschijnlijk opgeslagen in afzonderlijke kolommen: een kolom voor de plaatsen, een kolom voor de provincies enzovoort. Bing kan de verschillende steden dus mogelijk niet van elkaar onderscheiden.

Je kunt dit corrigeren door de geografische waarden uniek te maken. Dat doe je in Power Query Editor, bijvoorbeeld door kolommen samen te voegen. Bijvoorbeeld: ‘Washington,DC’.

Meer hierover lees je in het hoofdstuk over gegevens opschonen en transformeren met Power Query Editor.

De omzet per jaar

Voor de omzet per jaar gebruiken we de visualisatie Multi-row card.

1 Klik in de witruimte van het rapport, zodat alle visualisaties gedeselecteerd zijn.

2 Klik op de visualisatie Multi-row card.

Figuur 21: visualisatie Multi-row card

3 Vink de velden Year (Besteldatum) en Omzet aan.

Figuur 22: velden selecteren

4 Het resultaat is de omzet per jaar.

Figuur 23: omzet per jaar

Filteren per werelddeel

Als laatste stap willen we het rapport filteren per werelddeel.

1 Klik in de witruimte van het rapport, zodat alle visualisaties gedeselecteerd zijn.

2 Kies de visualisatie Slicer.

Figuur 24: visualisatie Slicer

3 Selecteer het veld Werelddeel.

Figuur 25: slicer Werelddeel

4 Klik op een werelddeel om de gegevens te bekijken voor dat werelddeel.

Figuur 26: rapport filteren op werelddeel

3 Rapport delen

Om een rapport of dashboard te delen met je collega’s of iemand van buiten je organisatie, moet je een Power BI Pro-licentie hebben. Ook de ontvangers hebben een Power BI Pro-licentie nodig. Of de inhoud moet zich in een Premium-capaciteit bevinden.

Inhoud delen kan vanuit Power BI Service en de mobiele Power BI-apps, maar niet vanuit Power BI-Desktop.

Je moet dus eerst het rapport publiceren, zodat het in Power BI Service terechtkomt.

1 Klik in het lint op Home > Publish.

Figuur 27: rapport publiceren

2 Meld je aan met je Microsoft-account.

Figuur 28: aanmeldscherm

3 Selecteer het doel My workspace

Figuur 29: doel selecteren

4 Klik op de link Open ‘Rapport Orders.pbix’ in Power BI Ben je al aangemeld bij Power BI Service, dan kun je onmiddellijk naar Power BI Service gaan.

Figuur 30: rapport openen

5 Klik in het menu op Share en voer de e-mailadressen in van de collega’s met wie je het rapport wilt delen.

Figuur 31: Mijn werkruimte (workspace) in Power BI Service

6 Klik op Send.

Proficiat! Je hebt je eerste Power BI-rapport gemaakt en gedeeld met een collega of iemand van een andere organisatie. In de volgende hoofdstukken gaan we dieper in op de verschillende stappen van het BI-proces.

Hoofdstuk 3

Data ophalen met  Power BI Desktop

Gegevens importeren is de eerste stap van de data-ijsberg.

In het eenvoudige voorbeeld van het hoofdstuk ‘Eenvoudige toepassing in Power BI Desktop’ staan alle gegevens die we nodig hebben voor onze analyse in één bestand. Dat is vaak niet het geval.

Met Power BI Desktop kun je gegevens ophalen uit de zich almaar uitbreidende wereld van gegevensbronnen. En die lijst groeit nog altijd aan. Power BI verdeelt de gegevensbronnen in zeven categorieën.

Figuur 1: categorieën gegevensbronnen

1 File (Bestand): Excel-bestanden, CSV-bestanden, Tekstbestanden (Text), JSON-bestanden (JavaScript Object Notation), mappen (met Power BI kun je volledige mappen ophalen), PDF, Sharepoint-mappen enzovoort. (Klik in het linkerdeelvenster op File om de volledige lijst te zien.)

2 Database: Access database, SQL Server database enzovoort. (Klik in het linkerdeelvenster op Database om de volledige lijst te zien.)

3 Microsoft Fabric: Power BI semantic models, Dataflows, Datamarts (preview), Warehouses, Lakehouses, KQL Databases, Metric sets.

4 Power Platform: Power BI dataflows (Legacy), Common Data Service (Legacy), Dataverse, Dataflows.

5 Azure: een verzameling cloudservices van Microsoft.

6 Online services: Dynamics 365, Facebook, Google Analytics enzovoort. (Klik in het linkerdeelvenster op Online services om de volledige lijst te zien).

7 Other: web, Sharepoint lists, Microsoft Exchange enzovoort. (Klik in het linkerdeelvenster op Online services om de volledige lijst te zien.)

In de volgende voorbeelden maken we verbinding met een aantal veelgebruikte gegevensbronnen en importeren we de gegevens in het gegevensmodel.

1

Gegevens importeren uit bestanden

In Power BI Desktop betekent de optie ‘Importeren’ dat de gegevens effectief worden gekopieerd naar het Power BI-bestand (.pbix). De gegevens worden vanuit de brontabel (bv. Excel, SQL Server, SharePoint) opgehaald en lokaal opgeslagen in het geheugen van Power BI Desktop.

Eenmaal geïmporteerd, zijn de gegevens losgekoppeld van de brontabel. Dit betekent dat wijzigingen in de bron niet automatisch worden doorgevoerd in het rapport. Om de gegevens bij te werken, moet je handmatig vernieuwen (in Power BI Desktop) of automatisch vernieuwen instellen (in Power BI service).

1.1 Een Excel-bestand ophalen

Situatieschets

Het bedrijf Tex-Mex bv gebruikt een Excel-werkmap om de gegevens van klanten en personeelsleden te bewaren (Database_Tex-Mex_Excel). De werkmap bevat meerdere werkbladen. We importeren alle gegevens in Power BI Desktop.

1 Open Power BI Desktop. Klik in het lint op Home > Excel workbook (groep Data).

Figuur 2: verbinding maken met een Excel bestand

2 Navigeer naar het opgavebestand Database_Tex-Mex_Excel.xlsx en klik op Openen

3 Vink in het deelvenster Navigator alle tabellen aan:

Figuur 3: deelvenster Navigator

4 Klik op Load om de data naar het gegevensmodel te laden. Zodra de gegevens geladen zijn, kun je de tabel en de velden zien in het deelvenster Data

Figuur 4: deelvenster Data

5 Klik op de weergave Table view om de gegevens te zien:

Figuur 5: weergave Table view

6 Bewaar het bestand als H3_Gegevensanalyse_Tex-Mex.pbix.

Notitie

Het is mogelijk dat je een foutmelding krijgt als je probeert om verbinding te maken met een Excel-bestand met het oude bestandsformaat (.xls-bestand). In Power BI Desktop maken zowel Access-databases als vroege versies van Excel-werkmappen (.XLS-bestanden van het type Excel 97-2003) gebruik van de Access Database Engine. Verschillende situaties kunnen ertoe leiden dat de Access Database Engine niet goed werkt. Je kunt de Access Database Engine installeren (zie FAQ, Een Access-bestand kan niet geladen worden) of het Excel-bestand converteren naar het nieuwe bestandsformaat (.xlsx).

Figuur 6: foutmelding bij het laden van een Excel-bestand met het oude bestandsformaat (.xls-bestand)

1.2 Een CSV-bestand ophalen

Notitie

Een CSV-bestand (Comma-Separated Values) is een eenvoudig tekstbestand waarin gegevens in tabelvorm worden opgeslagen. Elke regel stelt een rij voor, en de velden in de rij zijn gescheiden door komma’s (of soms andere scheidingstekens zoals puntkomma’s).

CSV-bestanden worden vaak gebruikt voor het uitwisselen van gegevens tussen programma’s zoals Excel, databases en Power BI, omdat ze eenvoudig te genereren en te lezen zijn.

Situatieschets

Het bedrijf Tex-Mex bv heeft eigen software ontwikkeld om de klachten te registreren. Het bestand Klachten.csv is een bestand geëxporteerd uit dit systeem.

1 Klik in het lint op Home > Get Data > Text/CSV

Figuur 7: Get Data > Text/CSV

2 Navigeer naar het bestand Klachten.csv en klik op Openen. 3 Je krijgt onmiddellijk de inhoud van het bestand te zien.

8: tabel Klachten

Figuur

4 Klik op Load om de data te laden naar het gegevensmodel. Zodra de gegevens geladen zijn, kun je de tabel en velden zien in het deelvenster Data

5 Bewaar met CTRL+S.

1.3 Een volledige map met bestanden ophalen

Met Power BI kun je alle bestanden in een bepaalde map eenvoudig combineren in één tabel, zolang ze hetzelfde bestandstype en dezelfde structuur hebben.

Er zijn verschillende methoden om bestanden in een map te combineren. De meest eenvoudige methode is Combine&Load (zie hieronder). Deze methode is eenvoudig toe te passen, maar werkt enkel wanneer de Excel-bestanden exact dezelfde structuur hebben. Deze methode werkt niet als bijvoorbeeld:

• het werkblad van een van de Excel-bestanden een andere naam heeft dan de naam waarnaar verwezen wordt bij het combineren van de bestanden;

• er een andere veldnaam gebruikt wordt in een van de Excel-bestanden;

• de kolommen in een andere volgorde gesorteerd zijn in een van de Excel-bestanden;

• enzovoort.

Het is dan ook aan te raden om een alternatieve methode te gebruiken om bestanden in een map te combineren. Deze methode wordt toegelicht in het hoofdstuk 'Gegevens opschonen en transformeren met Power Query Editor'.

Situatieschets

Maandelijks ontvangen we een Excel-bestand met de orders. In plaats van elk bestand afzonderlijk te laden, voegen we alle bestanden toe aan de map Orders_Excel. Met Power BI kunnen we de bestanden in één keer laden. Nieuwe bestanden worden automatisch toegevoegd zodra ze toegevoegd zijn aan de map Orders_Excel

1 Klik in het startscherm op Get Data of in het lint op Home > Get Data > More…

2 Selecteer Folder en klik op Connect

Figuur 9: map ophalen

3 Navigeer naar de map Orders_Excel en klik op OK

4 Er wordt een lijst weergegeven met de bestanden in de map.

Figuur 10: lijst bestanden map Orders_Excel

5 Klik op Combine > Combine & Load.

6 Standaard wordt het eerste bestand (First file) als model gebruikt. Selecteer het werkblad dat moet gecombineerd worden, het werkblad Sheet1

Notitie

Met deze methode wordt de werkbladnaam hard gecodeerd in de Power Query-functie, waardoor je problemen krijgt als je een werkblad met een andere naam wilt combineren. Dat kan achteraf wel gewijzigd worden in de Power Query Editor (als je kennis hebt van functies in Power Query Editor). Of je kunt een alternatieve/betere methode gebruiken; deze methode wordt toegelicht in het hoofdstuk 'Gegevens opschonen en transformeren met Power Query Editor'.

11: dialoogvenster Combine Files

7 Klik op OK.

8 De bestanden worden samengevoegd tot één tabel en geladen in het gegevensmodel. Er wordt een extra kolom toegevoegd (Source.Name) met de naam van het bronbestand per record.

Figuur

Figuur 12: Source.Name

Nieuwe gegevens toevoegen kan eenvoudig door het bestand toe te voegen aan de map Orders.

9 Verplaats het opgavebestand Orders_0623.xlsx naar de map Orders.

10 Klik in het lint Home op Refresh

Figuur 13: gegevens vernieuwen

11 Controleer of de gegevens toegevoegd zijn. Ga naar de weergave Data. Filter de kolom Source.Name op 0623

Figuur 14: orders 0623

2 Gegevens ophalen van een webpagina

Het is mogelijk om gegevens op te halen van om het even welke webpagina. In ons voorbeeld maken we verbinding met een Wikipedia-pagina: nl.wikipedia.org/wiki/ISO_3166-1. Op die pagina staan de ISO-landcodes.

Notitie

De ISO-landcodes kun je ook vinden als Excel-bestand in de opgavebestanden (ISO-landcodes.xlsx)

We werken verder in het bestand H3_Gegevensanalyse_Tex_Mex.pbix.

1 Klik in het startscherm op Get data of in het lint op Home > Get Data > Web.

2 Kopieer en plak de URL in het dialoogvenster From Web.

Figuur 15: dialoogvenster From Web

3 Klik op OK

4 In het linkerdeelvenster van de Navigator kun je alle tabellen aanvinken die op de webpagina te vinden zijn. Vink de tabel ISO-landcodes aan.

Figuur 16: ISO-landcodes

5 Klik op Load om de data naar het gegevensmodel te laden. Zodra de gegevens geladen zijn, kun je de tabel en velden zien in het deelvenster Data

6 Bewaar met CTRL+S.

2.1 Verbinding maken met een SQL-server

SQL Server is een relationele database van Microsoft waarin grote hoeveelheden gestructureerde gegevens worden opgeslagen, beheerd en opgehaald via SQL (Structured Query Language)

Notitie

Om verbinding te maken met een SQL-server moet je toegang hebben tot een SQL-server (van het bedrijf of zelf geïnstalleerd).

1 Klik in het lint op Home > SQL-server.

Figuur 17: gegevens ophalen van de SQL Server

2 Geef in het vak Server de naam van de SQL-server op waarmee je verbinding wilt maken. Je kunt ook een databasenaam opgeven (als die bekend is).

Figuur 18: dialoogvenster SQL Server database

3 Klik op OK

4 Je krijgt een overzicht van de beschikbare tabellen in de Navigator. Vink de tabellen aan die je wilt laden in het gegevensmodel.

5 Klik op OK in het bericht om verbinding te maken via een niet-versleutelde verbinding. (Misschien is de werkwijze in jouw organisatie anders.)

Notitie

Dit voorbeeld wordt niet verder uitgewerkt omdat je toegang moet hebben tot een SQL-server (van het bedrijf of zelf geïnstalleerd).

3 Conclusie

Met Power BI kun je gegevens ophalen vanuit heel wat verschillende gegevensbronnen. De werkwijze om de data op te halen is gelijkaardig voor alle gegevensbronnen.

4 Gegevens vernieuwen

Het type gegevensbron (onlineservice, database in de cloud, bestand op een lokale computer enzovoort) bepaalt hoe de gegevens worden vernieuwd.

In sommige gevallen hoef je helemaal niets te doen. Als je bijvoorbeeld rechtstreeks verbinding maakt met de gegevensbron in plaats van de gegevens te importeren in Power BI Desktop, worden de gegevens automatisch vernieuwd.

Maar in andere gevallen (bijvoorbeeld een verbinding met een werkmap op een lokale computer of met webpagina’s), moet je handmatig vernieuwen:

Klik in het lint op Home > Refresh.

Figuur 19: gegevens vernieuwen

De gegevens worden opnieuw geladen.

Notitie

Je kunt ook één gegevensbron vernieuwen. Klik in het deelvenster Data met de rechtermuisknop op de tabel en kies voor de optie Refresh data

Hoofdstuk 4

Gegevens opschonen en transformeren met Power Query Editor

In het hoofdstuk ‘Data ophalen met Power BI Desktop’ hebben we gegevens opgehaald uit verschillende gegevensbronnen en in het gegevensmodel geladen. In dit hoofdstuk zetten we de ruwe data om naar bruikbare, gestructureerde data.

In Power BI Desktop gebruiken we de Power Query Editor om gegevens te transformeren.

Power Query is de ETL-tool1 van Power BI. ETL staat voor Extract, Transform en Load:

• Extract: inlezen van brondata.

• Transform: aanpassen of transformeren van de gegevens.

• Load: gegevens ergens naartoe laden (bv. Excel-werkblad, Power BI-gegevensmodel).

Enkele voorbeelden van gegevenstransformatie zijn: lege rijen verwijderen, kolommen splitsen, namen van tabellen of kolommen wijzigen, de eerste rij instellen als veldnaam, het gegevenstype wijzigen, tabellen samenvoegen enzovoort.

De oorspronkelijke gegevensbron wordt daarbij niet gewijzigd.

Notitie

Een query (Engels voor vraagstelling) kan omschreven worden als een opdracht die aan een database wordt gegeven om een bepaalde actie uit te voeren, die mogelijk ook gegevens teruggeeft.

Gegevens opschonen of transformeren is de tweede stap in de data-ijsberg:

Je kunt de gegevens wijzigen vóór ze geladen worden in het gegevensmodel of erna. 1 Zie begrippenlijst.

1 Gegevens transformeren voor ze geladen zijn in het gegevensmodel

1 Open Power BI Desktop. Selecteer Blank report.

2 Haal de gegevens op. Klik in het lint Home op Excel workbook.

3 Navigeer naar het opgavebestand Database_Tex-Mex_Excel.xlsx

4 Vink alle tabellen aan in de Navigator en klik op Transform Data

Figuur 1: Transform Data

Je kunt ook verder werken met de oplossing van het hoofdstuk ‘Data ophalen met Power BI Desktop’ (H3_Gegevensanalyse_TexMex.pbix).

Als je de foutmelding DataSource.Error (kan het netwerkpad niet vinden) krijgt, moet je opnieuw verbinding maken met de brongegevens. Sla er de FAQlijst op na.

Figuur 2: DataSource.Error (kan het netwerkpad niet vinden)

5 De Power Query Editor opent.

Figuur 3: venster Power Query Editor

a Het lint in de Query Editor bestaat uit zes tabbladen: Home (Start), Transform (Transformeren), Add Column (Kolom toevoegen),View (Beeld), Tools (hulpprogramma's) en Help.

b Het linkerdeelvenster bevat een lijst met alle query’s die geladen zijn in Power BI Desktop.

c In het middelste deelvenster kun je de gegevens zien van de geselecteerde query.

d Het venster Query Settings (Queryinstellingen) toont de eigenschappen van de query en de toegepaste stappen.

6 Voeg de tabel Klachten toe via de Power Query Editor.

7 Klik in het lint op Home > New Source > Text/CSV.

Figuur 4: csv-bestand toevoegen

8 Navigeer naar het bestand Klachten.csv en klik op Openen.

9 Klik op OK

10 Klik in het lint op Home > Close and Apply. Het venster Power Query Editor sluit en je komt terug in het gegevensmodel.

11 Bewaar het bestand als H4_Gegevensanalyse_Tex-Mex.pbix.

Notitie

Je kunt dus op twee manieren data ophalen: via het beginscherm (het gegevensmodel) of via de Query Editor.

2 Gegevens transformeren nadat ze geladen zijn in het gegevensmodel

Je kunt de gegevens ook transformeren nadat ze geladen zijn in het gegevensmodel.

Klik in het lint op Home > Transform data. Het venster Power Query Editor opent.

Figuur 5: Transform data

Load or transform data?

Als je zo goed als zeker bent dat de gegevens kant-en-klaar zijn voor gebruik, kun je direct laden naar het gegevensmodel.

In alle andere gevallen, is het aangewezen om vooraf de gegevens te transformeren en dan pas te laden.

3 Het deelvenster Query Settings (Query-instellingen)

In het deelvenster Query settings of Query-instellingen worden alle stappen weergegeven die zijn gekoppeld aan een query. De stappen worden uitgevoerd in de volgorde waarin ze worden weergegeven.

Voorbeeld

1 Klik in de Power Query Editor in het linkerdeelvenster Queries op de tabel Klachten.

2 Klik in de tabel met de rechtermuisknop op de veldnaam Toegewezen aan en kies de optie Rename of dubbelklik op de kolomkop .

Figuur 6: kolomnaam wijzigen

3 Wijzig de kolomnaam in Personeelslid_ID. Er is een querystap bijgekomen in het deelvenster Query Settings.

Figuur 7: deelvenster Query Settings

Het is belangrijk te weten dat de onderliggende gegevens niet worden gewijzigd.

Als je bijvoorbeeld klikt op de stap Changed Type, zie je in het middelste deelvenster de gegevens vóór de wijziging van de kolomnaam.

In het deelvenster Query Settings (Query-instellingen) kun je:

• de namen van stappen wijzigen (Rename);

• stappen verwijderen (Delete);

• de volgorde van de stappen aanpassen (Move up/down).

Klik daarvoor met de rechtermuisknop op een stap en kies een optie in het snelmenu.

Figuur 8: snelmenu Applied Steps

Wanneer je een querystap toevoegt in Power Query, wordt die ingevoegd in de volgorde van stappen die volgt op de geselecteerde stap.

Als je dus een stap ergens anders dan aan het einde van de flow toevoegt, moet je controleren of alle volgende stappen goed werken.

Klik op het tandwieltje naast de querystap om de instellingen te bekijken of te bewerken.

Figuur 9: instellingen

Notitie

De querystappen worden telkens opnieuw uitgevoerd wanneer de query verbinding maakt met de gegevensbron, zodat de gegevens altijd op de gewenste manier worden vormgegeven. Dat proces vindt plaats wanneer je de query gebruikt in Power BI Desktop, maar ook wanneer iemand anders de gedeelde query gebruikt (bijvoorbeeld in de Power BI-service).

4 Het lint in de Query Editor

Het lint in de Query Editor bestaat uit zes tabbladen: Home (Start), Transform (Transformeren), Add Column (Kolom toevoegen) en View (Beeld), Tools (hulpprogramma's) en Help.

4.1 Het tabblad Home (Start)

Opdrachten in cursief komen niet aan bod in het handboek. Het tabblad Home (Start) bevat de algemene querytaken.

10: tabblad Home

Opdracht

Omschrijving

de query sluiten en de wijzigingen toepassen

• New Source: nieuwe gegevensbron toevoegen

• Recent Sources: lijst met de recentelijk gebruikte gegevensbronnen

• Enter data: zelf een tabel toevoegen

instellingen beheren voor gegevensbronnen die je hebt gekoppeld met Power BI Desktop parameters beheren

• Refresh Preview: voorbeeld vernieuwen

• Properties: query-eigenschappen

• Advanced Editor

• Manage: query verwijderen, dupliceren of verwijzen naar een query

• kolommen selecteren

• kolommen verwijderen

• rijen behouden

• rijen verwijderen

sorteren

Figuur

• kolommen splitsen

• rijen groeperen

• gegevenstype instellen

• eerste rij als veldnamen gebruiken

• waarden vervangen

• query’s samenvoegen

• query’s toevoegen

• bestanden combineren

• Text Analytics

• Vision

• Azure Machine Learning

4.2 Het tabblad Transform (Transformeren)

Het tabblad Transform bevat de algemene transformatietaken. Sommige taken vind je ook in het tabblad Home.

Figuur 11: tabblad Transform

Opdracht

Omschrijving

• rijen groeperen

• de eerste rij als veldnamen gebruiken

• transponeren

• rijen omkeren

• rijen tellen

• gegevenstype wijzigen

• naam wijzigen

• waarden vervangen

• doorvoeren

• draaikolom

• draaitabel opheffen voor kolommen

• kolommen verplaatsen

• converteren naar lijst

• kolom splitsen

• tekst omzetten in kleine letters, grote letters, prefix of suffix toevoegen …

• kolommen samenvoegen

• extraheren

• parseren

wiskundige, wetenschappelijke, trigonometrische en statistische bewerkingen uitvoeren

• datum- of tijdwaarden opmaken of elementen extraheren

• duurwaarden opmaken

R-script or Python script uitvoeren

4.3 Het tabblad Add Column (Kolom toevoegen)

Het tabblad Kolom toevoegen bevat aanvullende taken die zijn gekoppeld aan het toevoegen van een kolom. Heel wat opdrachten van het tabblad Add Column vind je ook in het tabblad Transform. Er is wel een belangrijk verschil. Als je bijvoorbeeld het jaar extraheert uit de besteldatum via het tabblad Transform, wordt de inhoud van de kolom overschreven. Als je dezelfde opdracht uitvoert via het tabblad Add Column, wordt een nieuwe kolom toegevoegd.

Figuur 12: tabblad Add Column

Opdracht

Omschrijving

• kolom toevoegen vanuit voorbeelden

• een nieuwe kolom maken op basis van een formule

• aangepaste functie aanroepen

• voorwaardelijke kolom

• indexkolom

• dubbele kolom

Zie het tabblad Transform.

4.4 Het tabblad View (Beeld)

Zie het tabblad Transform.

Zie het tabblad Transform.

Zie het tabblad Home

Het tabblad View wordt gebruikt om te bepalen of bepaalde deelvensters of vensters worden weergegeven. Ook de geavanceerde editor (Advanced Editor) vind je hier.

Figuur 13: tabblad View

Opdracht

Omschrijving

• het deelvenster Query Settings weergeven

• formulebalk weergeven

• gelijke schriftindeling

• witruimte en regeleinden weergeven

• kolomkwaliteit

• kolomdistributie

• kolomprofiel

kolom selecteren parameterisering altijd toestaan

geavanceeerde editor

4.5 Het tabblad Tools

Figuur 14: tabblad Tools

4.6 Het tabblad Help

Figuur 15: tabblad Help

query-afhankelijkheden

diagnostische gegevens over stap

diagnostische gegevens van sessie

diagnostische opties

• Power BI-blog

• Community

• Power BI voor ontwikkelaars

• Voorbeelden

• Communitygalerieën

• Een idee verzenden

• begeleid leren

• documentatie

• trainingsvideo's

• ondersteuning

• over

Notitie

De meeste opdrachten kun je ook zoeken in de contextuele menu’s door met je rechtermuisknop te klikken op een tabel, een kolom of een cel.

5 Gegevensprofilering

Gegevensprofilering helpt je om snel inzicht te krijgen in de kwaliteit en structuur van je data. Het toont samenvattingen per kolom, zoals:

• aantal unieke waarden;

• aantal duplicaten;

• aantal lege of foutieve waarden

Gegevensprofilering vind je in Power query in het lint View (Weergave)

Figuur 16: gegevensprofilering

Gegevensprofilering is nuttig om snel fouten te detecteren en inzicht te krijgen in de verdeling van je data.

6 Algemene querytaken

In Power Query Editor zijn er een aantal basisstappen die je bijna altijd doorloopt, ongeacht de gegevensbron:

Figuur 17: basisstappen query editor

6.1 Kolommen verplaatsen

We werken verder in het bestand H4_Gegevensanalyse_Tex-Mex.pbix.

Power BI laadt de gegevens zoals gedefinieerd in de gegevensbron, ook de kolomvolgorde. De kolomvolgorde aanpassen doe je als volgt:

1 Open de Query Editor (Home > Transform data).

2 Selecteer de query Klachten.

3 Plaats de kolom Datum afhandeling klacht naast de kolom Datum indienen klacht:

e Klik op de kolom Datum afhandeling klacht

f Positioneer de cursor op de kolomnaam of veldnaam.

g Versleep de kolom naar de juiste positie.

Figuur 18: kolom verplaatsen

Notitie

Kolommen verplaatsen in de Query Editor dient alleen om de data beter te begrijpen. Het heeft geen effect op de volgorde van de kolommen in het gegevensmodel. In het gegevensmodel worden de kolommen alfabetisch gesorteerd.

6.2 Kolommen verwijderen

Hoe kun je kolommen verwijderen in de Query Editor?

• Klik met de rechtermuisknop op de kolom die je wilt verwijderen en kies de optie Remove

• Wanneer je meer kolommen wilt verwijderen dan behouden, selecteer dan de kolommen die je wilt behouden (met CTRL+klik), klik met de rechtermuisknop en kies de optie Remove Other Columns.

Figuur 19: kolom(men) verwijderen

6.3 Kolommen kiezen

Als je gegevens ophaalt van een datawarehouse, kan de tabel heel wat overbodige kolommen bevatten. Stel dat de tabel 45 kolommen bevat, terwijl je er maar tien nodig hebt. Dan is het aan te raden dat je vooraf de kolommen selecteert, om te vermijden dat je onnodig veel gegevens laadt in het gegevensmodel.

1 Open de Query Editor (Home > Transform data).

2 Selecteer de query Klachten.

3 Klik in het lint op Home > Choose Columns.

Figuur 20: kolommen kiezen

4 Vink de kolommen aan die je wilt behouden.

Figuur 21: dialoogvenster Choose Columns

5 Klik op OK.

Klik in het rechterdeelvenster bij Applied steps op het kruisje naast Removed Other Columns om de bewerking ongedaan te maken.

Figuur 22: stap ongedaan maken

6.4 Rijen verwijderen

Klik in het lint op Home > Remove rows. Er zijn verschillende opties.

Figuur 23: rijen verwijderen

• Remove Top Rows: verwijder x aantal bovenste rijen.

Figuur 24: bovenste rijen verwijderen

• Remove Bottom Rows: verwijder x aantal onderste rijen.

• Remove Alternate Rows: geef het patroon op van rijen die je wilt verwijderen en behouden.

Figuur 25: patroon rijen verwijderen

• Remove Duplicates: duplicaten verwijderen. Alleen de volledig identieke records worden verwijderd.

• Remove Blank Rows: lege rijen verwijderen.

• Remove Errors: rijen met gegevensfouten verwijderen uit de query.

Notitie

Met rijen verwijderen verwijder je de rijen uit gegevensset in Power BI, niet uit de brongegevens!

6.5 Waarden vervangen

We werken verder in het opgavebestand H4_Gegevensanalyse_Tex-Mex.pbix

1 Open de Query Editor (Home > Transform data).

2 Selecteer de query Personeelsleden.

3 Selecteer de kolom Geslacht. De kolom Geslacht heeft als gegevenstype True/False.

Gegevenstype TRUE/FALSE

Bij dit veldtype is de inhoud een logische waarde: Ja/nee, aan/uit, waar/onwaar of -1/0

4 Wijzig het gegevenstype van de kolom naar Text

Figuur 26: gegevenstype wijzigen

5 Klik met de rechtermuisknop en kies de optie Replace values.

Figuur 27: waarden vervangen

6 Vervang de waarde true door M.

Figuur 28: dialoogvenster Replace Values

7 Vervang de waarde false door V.

6.6 Een kolom splitsen op basis van een scheidingsteken

Voeg een nieuwe kolom Smaak toe aan de query Producten. De smaak is het laatste deel van de Productnaam, bijvoorbeeld Tortilla chips Burrito:

1 Selecteer de query Producten in de Query editor (Home > Transform data).

2 Selecteer de kolom Productnaam.

3 Klik in het lint op Add Column > Extract > kies de optie Text After Delimiter.

Figuur 29: kolom splitsen

4 Geef een spatie in als scheidingsteken bij Delimiter en vul 1 in bij Number of delimiters to skip. Want we willen niet splitsen na ‘Tortilla’, maar na ‘Chips’.

Figuur 30: dialoogvenster Text After Delimiter

5 Klik op OK.

6 Dubbelklik op de kolomkop om de veldnaam te wijzigen in Smaak.

Figuur 31: kolomnaam wijzigen

7 Klik in het lint op Home > Close and Apply.

8 Bewaar het bestand onder de naam H4_Gegevensanalyse_Tex-Mex.pibx.

Als je complexe transformaties uitvoert, is het zinvol de querystappen een duidelijke naam te geven. Dat kan eenvoudig door met de rechtermuisknop te klikken op de querystap en de optie Rename te kiezen.

6.7 Kolommen samenvoegen

Situatieschets

We willen in ons rapport het aantal klachten per personeelslid zien. In de tabel DimPersoneelsleden staan de Voornaam en de Naam in twee verschillende kolommen. We kunnen ze samenvoegen als volgt:

1 Open de Query Editor (Home > Transform data).

2 Selecteer in het linkerdeelvenster de query DimPersoneelsleden.

3 Selecteer de kolommen Naam en Voornaam.

4 Klik in het lint op Transform > Merge Columns.

Figuur 32: Merge Columns

5 In het dialoogvenster Merge Columns kun je het scheidingsteken kiezen en de nieuwe kolom een naam geven. Wij kiezen voor een spatie als scheidingsteken:

Figuur 33: dialoogvenster Merge Columns

6 Klik op OK. De twee kolommen Voornaam en Naam zijn nu vervangen door één kolom Naam_Personeelslid.

Notitie

In Excel gebruiken we hiervoor de functie CONCATENATE (TEKST.SAMENVOEGEN) of het &-teken.

6.8 De querynaam wijzigen

Wijzig de querynaam Klachten in FactKlachten

1 Open de Query Editor (Home > Transform data).

2 Selecteer de query Klachten.

3 Wijzig in het rechterdeelvenster (Query Settings > Properties) de naam naar FactKlachten

Figuur 34: querynaam wijzigen

6.9 Een query verwijderen

In ons voorbeeld verwijderen we de query Taal

1 Open de Query Editor (Home > Transform data).

2 Selecteer in het linkerdeelvenster de query Taal.

3 Klik met de rechtermuisknop en kies de optie Delete

Figuur 35: query verwijderen

4 Bevestig door op de knop Delete te klikken.

Notitie

Als je een query verwijdert in de Query Editor, wordt de tabel ook verwijderd uit het gegevensmodel.

6.10 De eerste rij als veldnamen gebruiken

Het is mogelijk dat de Query Editor bij het ophalen van de tabel de eerste rij niet herkent als veldnamen. De veldnamen zijn dan Column1, Column2, Column3 enzovoort.

Klik in het lint op Transform > Use First Row as Headers om de eerste rij als veldnamen in te stellen.

Figuur 36: eerste rij als veldnaam instellen

6.11 Gegevenstype wijzigen

Net zoals in Excel is het in Power BI belangrijk dat gegevens het juiste gegevenstype hebben voor opslag, berekeningen en visualisatie van gegevens. Als bijvoorbeeld een kolom tekstwaarden bevat, kun je geen berekening uitvoeren op deze kolom.

Het goede nieuws is dat Power BI voor veel gegevensbronnen een geschikt gegevenstype toepast bij het laden van de gegevens. Vooral als je gegevens uit een database hebt geladen, herkent Power BI het gegevenstype voor elke kolom en past het een geschikt gegevenstype toe. Helaas kan het iets moeilijker zijn met bestanden zoals .csv en .txt. In dat geval probeert Power BI vaak het gegevenstype te raden, maar dat lukt niet altijd. Bijvoorbeeld een viercijferige postcode uit een CSV-bestand zal Power BI interpreteren als numeriek in plaats van tekst.

Het gegevenstype wijzigen kan in de Query Editor of in de Gegevens- of Rapportweergave.

Notitie

Vermijd het gegevenstype ‘Any’. Het gegevenstype ‘Any’ is de status die wordt gegeven aan een kolom die geen expliciet gegevenstype heeft.

Dat kan problematisch zijn want:

• DAX en Power BI visualisaties verwachten expliciete gegevenstypes.

• Foutmeldingen kunnen ontstaan bij berekeningen of filteracties.

Wijzig dus altijd het gegevenstype ‘Any’ naar een expliciet gegevenstype zoals Tekst, Whole number, …

Figuur 37: gegevenstype Any

Gegevenstype wijzigen in de Query-editor

1 Open de Query Editor (Home > Transform data).

2 Selecteer de query Postcodes

3 Selecteer de kolom Postcode. Wijzig het gegevenstype van Decimaal getal naar Text. Klik in het lint op Home en wijzig het Data Type in Text.

Figuur 38: gegevenstype wijzigen

Je kunt het gegevenstype ook wijzigen door met de rechtermuisknop te klikken op de kolomkop en te kiezen Change Type.

Notitie

Als je het gegevenstype wilt wijzigen wanneer het al eerder gewijzigd is, krijg je deze melding:

Figuur 39: Change Column Type

Je kunt kiezen of je de vorige wijziging wilt vervangen of de nieuwe wijziging als extra stap in de query wilt toevoegen.

6.12 De kolominhoud transformeren

De inhoud van kolommen transformeren is alleen mogelijk als de kolom het juiste gegevenstype heeft. Datumtransformaties bijvoorbeeld kunnen niet worden toegepast op gegevens met het gegevenstype tekst.

Een prefix of een suffix toevoegen

1 Open de Query Editor (Home > Transform data).

2 Selecteer de query Postcodes

3 Selecteer de kolom Postcode.

4 Klik in het lint op Transform > Format > Add Prefix.

Figuur 40: prefix toevoegen

5 Voeg het prefix B- toe.

Figuur 41: dialoogvenster Prefix

6 Klik op OK

Overzicht teksttransformaties

Transformatie Beschrijving

lowercase Alle letters in de geselecteerde kolommen omzetten naar kleine letters

UPPERCASE Alle letters in de geselecteerde kolommen omzetten naar hoofdletters

Capitalize Each Word

Trim

De eerste letter van elk woord in de geselecteerde kolommen omzetten naar een hoofdletter.

Voorloop- en vervolgspaties verwijderen uit de cellen in de geselecteerde kolommen.

Clean Niet-afdrukbare tekens uit de geselecteerde kolommen verwijderen.

Add Prefix

Add Suffix

Een zelf gekozen tekstwaarde toevoegen aan het begin van elke waarde in de geselecteerde kolom.

Een zelf gekozen tekstwaarde toevoegen aan het einde van elke waarde in de geselecteerde kolom.

Getaltransformaties

De Power Query editor kan ook eenvoudige berekeningen uitvoeren op cijfers in een kolom. Stel bijvoorbeeld dat je alle productprijzen met 10 procent wilt verhogen.

1 Open de Query Editor (Home > Transform data).

2 Selecteer in de query Producten de kolom VP/Pak.

3 Klik in het lint op Transform > Standard > Multiply.

Figuur 42: productprijs vermenigvuldigen

4 Geef het cijfer 1,1 in om de prijs de verhogen met 10 procent.

Figuur 43: dialoogvenster Multiply

5 Klik op OK.

Let op!

Met deze bewerking wijzig je bestaande gegevens!

6 Verwijder de stap Multiplied column in het rechterdeelvenster bij Applied steps.

Figuur 44: stap verwijderen

Overzicht getaltransformaties

Transformatie Beschrijving

Add Een bepaalde waarde optellen bij elk getal uit de geselecteerde kolom.

Multiply Elk getal uit de geselecteerde kolom vermenigvuldigen met een bepaalde waarde.

Subtract Een bepaalde waarde aftrekken bij elk getal uit de geselecteerde kolom.

Divide Elk getal uit de geselecteerde kolom delen door een bepaalde waarde.

Integer-Divide Elk getal uit de geselecteerde kolom delen door een geheel getal van een bepaalde waarde.

Modulo Restwaarde berekenen voor het delen van elk getal in de geselecteerde kolom door een bepaalde waarde.

Percentage Een opgegeven percentage berekenen van de waarden in de geselecteerde kolom.

Percent Of De waarden in de geselecteerde kolom berekenen als percentage van de opgegeven waarde.

Datum- en tijdtransformaties

De werkwijze om datum- en tijdtransformaties uit te voeren is vergelijkbaar met het transformeren van tekst of getallen. Een voorbeeld:

1 Open de Query Editor (Home > Transform data).

2 Selecteer de query FactKlachten.

3 Selecteer de kolom Datum indienen klacht.

4 Klik in het lint op Transform > Date > Year.

Figuur 45: datumtransformaties

Het resultaat is het jaar in plaats van de volledige datum.

5 Verwijder de stap Extracted year in het rechterdeelvenster bij Applied steps.

Figuur 46: stap verwijderen

Notitie

Het verdient de voorkeur om de bronkolom intact te houden en de transformaties uit te voeren op een kopie van de kolom. Om dat te doen, pas je dezelfde werkwijze toe, maar gebruik je de knoppen in het lint Add Column in plaats van die in het lint Transform

Je kunt veel soorten berekeningen uitvoeren in het gegevensmodel en het uitvoeren van berekeningen in de query editor vermijden. Veel Power BI-gebruikers lijken er inderdaad de voorkeur aan te geven dat alles wat lijkt op een berekening plaatsvindt in het gegevensmodel in plaats van in de queryfase.

Berekeningen in het gegevensmodel met DAX komen aan bod in het hoofdstuk ‘Berekeningen en gegevensanalyse met DAX’.

6.13 Wijzigingen bewaren en laden naar het gegevensmodel

Als je de wijzigingen wilt toepassen in Power Query-editor en wilt laden in Power BI Desktop, selecteer je Close & Apply in het tabblad Home op het lint.

Figuur 47: Close & Apply

7

Query’s combineren

7.1 Query’s samenvoegen (Merge queries)

Twee query’s combineren is een taak die je vaak zult moeten uitvoeren bij het voorbereiden van het gegevensmodel. Er zijn twee soorten gecombineerde query’s: Merge (Samenvoegen) en Append (Toevoegen).

Figuur 48: Merge en Append

Met query’s samenvoegen maak je één query van twee of meer bestaande query’s. Om query’s te kunnen samenvoegen, moet er een gemeenschappelijke kolom zijn in beide query’s.

We starten met het samenvoegen van de query’s Personeelsleden en Scholingsgraad.

1 Open de Query Editor (Home > Transform data).

2 Selecteer de query Personeelsleden en klik in het lint op Home > Merge Queries (Query’s samenvoegen)

Figuur 49: Merge Queries

3 Kies in de keuzelijst de tabel Scholingsgraad en selecteer in beide tabellen de gemeenschappelijke kolom Scholingsgraad_ID.

Figuur 50: dialoogvenster Merge

4 Type join (Join Kind): bij het samenvoegen van query’s moet je het type join kiezen. Het type join is bepalend voor het resultaat. In het voorbeeld kiezen we voor Left Outer (alle records uit de eerste tabel, overeenkomend uit de tweede tabel).

Hoofdstuk 4 Gegevens opschonen en transformeren met Power Query Editor

De webpagina Visualizing Merge Join Types in Power BI helpt om jointypes te begrijpen:

https://community.fabric.microsoft.com/t5/Data-Stories-Gallery/ Visualizing-Merge-Join-Types-in-Power-BI/m-p/219906

Je kunt ook de zoektermen ‘Visualizing Merge Join Types in Power BI’ invoeren in Google om de pagina te vinden.

5 In de query Personeelsleden is nu een extra kolom toegevoegd met een link naar de verwante tabel.

Figuur 51: samengevoegde queries

6 Klik op het uitbreidingspictogram en vink de kolom Scholingsgraad aan. Vink Use original column name as prefix uit

Figuur 52: kolommen selecteren

7 Klik op OK.

8 De link naar de verwante tabel is verdwenen en de kolom uit de query Scholingsgraad is toegevoegd aan de tabel Personeelsleden

Figuur 53: resultaat queries samenvoegen

9 Selecteer de kolom Scholingsgraad_ID. Klik met de rechtermuisknop op de kolomkop en kies de optie Remove (deze kolom hebben we nu niet meer nodig).

10 Dubbelklik op de kolomkop Scholingsgraad1. Pas de naam aan naar Scholingsgraad

11 Om de prestaties van het gegevensmodel te verhogen, kunnen we het laden van de brontabel uitschakelen. Klik met de rechtermuisknop op de query Scholingsgraad en vink de optie Enable load uit.

Figuur 54: Enable load uitschakelen

12 Klik op Continue.

Figuur 55: dialoogvenster Possible Data Loss Warning

13 De query’s die niet geladen worden naar het gegevensmodel worden cursief weergegeven in de lijst met query’s:

Figuur 56: enable load uitgeschakeld

14 Herhaal de stappen voor de volgende query’s:

Query Samenvoegen met Kolom(men)

Personeelsleden Postcodes Post_ID

Personeelsleden Afdelingen Afdeling_ID

Personeelsleden Functies Functie_ID

Klanten Landen Land_ID

Klanten Werelddeel Werelddeel_ID

Notitie

Door de query’s samen te voegen en enkel de tabellen noodzakelijk voor de analyse te laden, hebben we een eenvoudiger en performanter model gecreëerd.

Je kunt query’s samenvoegen vergelijken met het resultaat van de functie VERT.ZOEKEN (VLOOKUP) in Excel.

7.2 Query’s toevoegen aan een bestaande query (Append queries)

Met de functie Append queries of Query’s toevoegen kun je een bestand toevoegen aan een bestaande query.

Figuur 57: Append

Voeg het bestand Klachten_2024.csv toe aan de query FactKlachten.

1 Open de Query Editor (Home > Transform data)

2 Klik in het lint op Home > New source

3 Selecteer Text/CSV en navigeer naar het bestand Klachten_2024.csv.

4 Klik op Openen en vervolgens op OK. Het bestand wordt geladen.

5 Selecteer de query FactKlachten

6 Klik in het lint op Home > Append queries

Figuur 58: Append Queries

7 Selecteer de tabel Klachten_2024 in de lijst.

Figuur 59: dialoogvenster Append

8 Klik op OK

9 Controleer of de klachten van 2024 toegevoegd zijn aan de query FactKlachten door de kolom Datum indienen klacht te filteren op 2024.

Figuur 60: filter klachten

10 Klik op OK.

Let op!

11 Als we het resultaat bekijken zien we dat de kolom Personeelslid_ID leeg is en er een nieuwe kolom Toegewezen aan bijgekomen is.

Figuur 61: resultaat append query

Oorzaak:

In de eerste querystap van het hoofdstuk ‘Gegevens opschonen en transformeren met Power Query Editor’ hebben we de veldnaam Toegewezen aan van de query Klachten gewijzigd in Personeelslid_ID

In het query Klachten_2024.csv is deze aanpassing nog niet gebeurd. Bijgevolg is bij het toevoegen van het query Klachten_2024 aan de query Klachten een extra kolom Toegewezen aan toegevoegd en is de kolom Personeelslid_ID leeg.

We kunnen dit oplossen door ook in de query Klachten de volgorde van de querystappen te wijzigen:

• Selecteer de query Klachten.

• Sleep de querystap Renamed Columns na de querystap Appended Query.

Figuur 62: querystap verplaatsen

• Controleer het resultaat.

• De kolom Personeelslid_ID is ingevuld en de kolom Toegewezen aan is verdwenen.

12 Klik met de rechtermuisknop op de query Klachten_2024 en vink de optie Enable load uit.

13 Klik in het lint op Home > Close and Apply

8 Toepassing

Situatieschets

Het bedrijf X wil de afzet per jaar, per werelddeel, land en stad analyseren. Om de gegevens te kunnen analyseren moeten de gegevens zich in een tabel bevinden die uit rijen en kolommen bestaat met:

• vergelijkbare gegevens in elke kolom;

• geen lege rijen in het bereik;

• geen (sub)totalen.

Voorbeeldtabel:

Europe Nice France 2010 15

Europe Nice France 2011 91

Opgavestand

Afzet_bedrijf X.xlsx

Opdracht

Transformeer de gegevens tot een correct opgemaakte tabel (zie voorbeeldtabel).

Visualiseer de afzet van bedrijf X per:

• Jaar

• Werelddeel

• Land

• Stad

Oplossing

Stap 1: data importeren

1 Open Power BI Desktop.

2 Klik in het lint Home op Excel (groep Data).

3 Navigeer naar het bestand Afzet_Bedrijf X.xlsx.

4 Selecteer de tabel Tough en klik op Transform data

5 Bewaar het bestand onder de naam Afzet_Bedrijf X_opl.pbix

Stap 2: data transformeren

6 Stappen:

h Gebruik de eerste rij als veldnaam: klik in het lint op Transform > Use First Row as Headers.

i Voer in de eerste kolom de celwaarden door in de lege cellen:

Selecteer de eerste kolom.

Klik in het lint op Transform > Fill down.

Figuur 63: Fill down

j Verwijder in de tweede kolom de tekens (-> en #):

Selecteer de tweede kolom.

Klik met de rechtermuisknop op de kolom en kies de optie Replace Values. Zoek op spatie -> en vervang door niets.

Zoek op spatie # en vervang door niets.

k Verwijder de lege waarden in de tweede kolom (Null):

Selecteer de tweede kolom.

Klik op de filter en vink (Null) uit.

l Verwijder de totalen uit de tweede kolom:

Selecteer de tweede kolom.

Klik op de filter en kies de optie Text Filters > Does Not Begin With.

Figuur 64: tekstfilter

7 Splits de tweede kolom:

a Selecteer de tweede kolom.

b Klik in het lint op Transform > Split Column > by Delimiter (het scheidingsteken is een komma en een spatie):

Figuur 65: kolommen splitsen

8 Wijzig de kolomnamen: Continent, Country en City.

9 Pas de structuur van de tabel aan:

a Selecteer de eerste drie kolommen.

b Klik in het lint op Transform > Unpivot Other Columns.

Figuur 66: draaitabel opheffen

10 Wijzig de kolomnamen: Year en Turnover.

Het resultaat is een correct gestructureerde tabel, klaar om te analyseren.

Figuur 67: resultaat

Stap 3: gegevens visualiseren

1 Klik in het lint Home op Close & Apply om de gegevens te laden naar het model.

2 Vink in het deelvenster Fields de velden Turnover en Continent aan:

Figuur 68: turnover by continent

3 Klik in het canvas en kies de visualisatie Line chart om de evolutie van de afzet per jaar te visualiseren:

Figuur 69: turnover by year

4 Klik op More options en sorteer de grafiek:

Figuur 70: turnover by year sort

5 Klik in het canvas en voeg een visualisatie toe voor de afzet per land en per stad:

Figuur 71: turnover by country/by city

9 Power Query-formules (M-taal)

De grafische gebruikersinterface van Power Query Editor zorgt ervoor dat je heel snel gegevens kunt transformeren zonder één regel code te kennen.

Achter elke querystap wordt echter automatisch de overeenkomstige Power Query-formule gegenereerd, ook wel bekend als de M-taal. De formule is zichtbaar in de formulebalk (View > Formula bar).

Figuur 72: Formula Bar

Met de geavanceerde editor kun je de volledige querycode (M) bekijken of wijzigen. Klik in het venster op View > Advanced Editor (of op Home > Advanced Editor) om de Advanced Editor te openen.

Figuur 73: Avanced Editor

Notitie

Je hebt geen kennis nodig van de M-taal om gegevens te transformeren in Power Query Editor. Het is wel handig om enige kennis te hebben zodat je precies weet wat er gebeurt en zodat je de code zelf kunt aanpassen of zelfs schrijven. In dit handboek beperken we ons tot de basiskennis van de Power Query-formules.

9.1 Aangepaste kolommen

De gemakkelijkste manier om met de M-taal vertrouwd te raken is te beginnen met aangepaste kolommen en er Power Query-formules aan toe te voegen.

1 Open Power BI Desktop.

2 Klik in het lint Home op Excel (groep Data).

3 Navigeer naar het bestand Orders_datumtransformatie.xlsx

4 Selecteer de tabel Orders en klik op Transform data.

5 Bewaar het bestand onder de naam H4_Gegevensanalyse_Tex-Mex_M.pbix.

6 Selecteer de kolom Besteldatum. Als we het gegevenstype aanpassen naar Date krijgen we een foutmelding.

Figuur 74: gegevenstype aanpassen

7 Verwijder de querystap Changed Type.

In het voorbeeld moeten we een cijferreeks converteren naar een datum. We kunnen daarvoor verschillende methodes gebruiken.

Methode 1: Split & Merge

Zonder kennis van Power Query-formules kun je dit oplossen door de kolom te splitsen in drie kolommen (jaar, maand, dag) en opnieuw samen te voegen naar één kolom met het gegevenstype Date. Aangezien de focus in dit voorbeeld ligt op de Power Query-formules, werk ik deze methode hier niet verder uit.

Methode 2: Aangepaste kolom (Custom Column)

In Excel kun je dat oplossen door een combinatie van de functies DATE, LEFT, MID en RIGHT. Ook in DAX (zie het hoofdstuk ‘Berekeningen en gegevensanalyse met DAX’) kun je deze functies gebruiken. De M-taal is echter op een andere manier opgebouwd.

8 Wijzig het gegevenstype van de kolommen Besteldatum en Verzenddatum in Text (Home > Data Type > Text).

9 Voeg een aangepaste kolom toe om het jaar van de Besteldatum uit de reeks te extraheren.

a) Klik in het lint op Add Column > Custom Column

b) Voer de Power Query-formule in en klik op OK.

Figuur 75: Power Query-formule Text.Start

Notitie

Power Query-formules zijn hoofdlettergevoelig!

Er bestaan meer dan 700 Power Query-formules. Via deze link kun je informatie over alle formules terugvinden: https://docs.microsoft.com/en-us/powerquery-m/power-query-m-function-reference.

10 Voeg op dezelfde manier een aangepaste kolom toe om de maand te extraheren.

a Klik in het lint op Add Column > Custom Column.

b Voer de Power Query-formule in en klik op OK: =Text.Range([Besteldatum],4,2)

11 Voeg op dezelfde manier een aangepaste kolom toe om de dag te extraheren.

a Klik in het lint op Add Column > Custom Column

12 Voer de Power Query-formule in en klik op OK: = Text.End([Besteldatum],2)

13 Voeg de kolommen Jaar, Maand en Dag samen.

a Selecteer de kolommen in de juiste volgorde: dag, maand, jaar.

b Klik in het lint op Transform > Merge Columns. Gebruik ‘/’ als scheidingsteken.

Figuur 76: Merge Columns

14 Wijzig het gegevenstype in Date (Home > Data Type > Date).

Methode 3: Een kolom uit een voorbeeld toevoegen (Column From Examples)

Voor de verzenddatum gebruiken we een alternatieve methode.

15 Klik in het lint op Add Column > Column From Examples.

16 Selecteer de kolom Verzenddatum

17 Start met het intikken van de eerste Verzenddatum (het is voldoende om de dag in te tikken, 26/). Power BI herkent de datum.

Figuur 77: Column From Examples

18 Klik op OK om te bevestigen. De kolom wordt aangevuld, Power BI herkent ook onmiddellijk het juiste gegevenstype.

19 Verwijder de kolom Verzenddatum.

20 Wijzig de kolomnaam Date in Verzenddatum.

9.2 Een volledige map met bestanden ophalen

In het hoofdstuk ‘Data ophalen met Power BI Desktop’ gebruiken we de methode Combine&Load om op een eenvoudige manier alle bestanden in een bepaalde map te combineren in één tabel.

Deze methode werkt echter enkel wanneer de Excel-bestanden exact dezelfde structuur hebben, wat niet altijd het geval is. In het volgende voorbeeld hebben de werkbladen van de Excel-bestanden een andere naam.

1 Open Power Query editor.

2 Klik in het lint Home op New Source > More…

3 Selecteer Folder en klik op Connect

4 Navigeer naar de map Orders_Excel_methode 2 en klik op OK. Er wordt een lijst weergegeven met de bestanden in de map.

5 Klik op Transform Data (en dus niet op Combine & Load zoals in het hoofdstuk ‘Data ophalen met Power BI Desktop’).

Figuur 78: lijst bestanden map Orders_Excel_methode 2

6 Voeg een aangepaste kolom toe: klik in het lint op Add Column > Custom Column

7 Gebruik de functie Excel.Workbook([Content]) om de inhoud van de werkmap op te halen.

Figuur 79: Add Custom Column

8 Klik op het uitbreidingspictogram en klik op OK

Figuur 80: kolommen selecteren

9 Voeg een nieuwe aangepaste kolom toe: klik in het lint op Add Column > Custom Column. 10 Gebruik de functie Table.PromoteHeaders([Custom.Data]) om de eerste rij als veldnamen te gebruiken.

Figuur 81: Add Custom Column (2)

11 Klik op het uitbreidingspictogram en vink Use original column name as prefix uit. Klik op OK.

12 Klik in het lint op Remove other columns om de overbodige kolommen te verwijderen.

Figuur 82: Remove Columns

Notitie

Deze methode is veel minder foutgevoelig dan de methode Combine & Load. Het is dan ook aan te raden om deze methode te gebruiken om alle bestanden in een map te combineren in één tabel.

Hoofdstuk 5

Een gegevensmodel maken in power BI Desktop

1 Databases

Om Power BI te begrijpen is een basiskennis van databases of databanken vereist. Een database kan worden gedefinieerd als een gestructureerde verzameling van gegevens.

Databasesoftware bestaat in alle soorten en maten. Sommige oplossingen, zoals Microsoft Dataverse, zijn bedoeld voor kleinschalig tot middelgroot gebruik binnen het Microsoft Power Platform. Andere systemen richten zich op complexe en bedrijfskritische toepassingen. Het geheel van programma’s dat bestemd is voor het beheer van een databank wordt het database management system of DBMS genoemd.

Niet alleen qua doelgroep, maar ook qua onderliggende architectuur kent de term ‘databank’ verschillende invullingen. Een bekende categorie binnen databanksystemen is de relationele databank, waarbij gegevens zo worden gedefinieerd dat ze op diverse manieren kunnen worden gereorganiseerd en opgevraagd. Alternatieven voor het relationele model zijn onder meer het objectgeoriënteerde, het hiërarchische en het netwerkmodel1

Een relationele databank maakt gebruik van SQL (Structured Query Language) als standaardtaal om gegevens te bevragen en aan te passen.2

2 Relationele database

Vroeger werden gegevens opgeslagen in ‘platte bestanden’, in het Engels flat files. Dat zijn tekstbestanden waarin gegevens gescheiden door komma’s of tabs zijn opgenomen (CSV/TXT). Met behulp van een programma (bijvoorbeeld MS Excel) kunnen die gegevens uit het bestand worden gelezen. Het programma herkent de komma’s of tabs (scheidingstekens) en kan zo gegevens uit het bestand selecteren.

Figuur 1: CSV-bestand

In een relationele database worden gegevens geordend in tabellen. Een tabel bestaat uit records (~ rijen) en velden (~ kolommen):

1 Zie begrippenlijst.

2 Zie begrippenlijst.

Figuur 2: tabel

Het ontwerp van de database is onafhankelijk van het databasesysteem, zolang je een relationeel databasesysteem (RDBMS) gebruikt.

Om relationele databanken te ontwerpen gebruiken we vaak ER-diagrammen (Entity Relationship Diagrams). Een ERD is een soort stroomdiagram dat illustreert hoe tabellen binnen een systeem met elkaar verbonden zijn (wat-is-een-entity-relationship-diagram, 2020).

Een ERD bestaat uit entiteiten, attributen en relaties:

• Entiteit (~ tabel): een entiteit is een object dat bestaat en onderscheidbaar is van andere objecten. Voorbeelden hiervan zijn: klanten, contactmomenten en categorieën.

• Attribuut (~ veld): een entiteit wordt voorgesteld door een verzameling attributen. Mogelijke attributen voor de entiteit ‘klant’ zijn bijvoorbeeld klant_ID, bedrijf en straat.

• Relatie: een relatie is een verband tussen verschillende entiteiten. Men kan bijvoorbeeld een relatie definiëren die de klant ‘Gramalla S.L.’ associeert met het contactmoment met ID ‘33’ . Deze relatie specificeert dat er een contactmoment geweest is met de klant ‘Gramalla S.L.’.

Figuur 3: voorbeeld ERD (dit voorbeeld wordt verder uitgewerkt in ‘Ontwerp van een relationele database’)

We kunnen verschillende ‘soorten relaties’ onderscheiden. We noemen dit de kardinaliteit. De kardinaliteit van de relatie beschrijft het aantal rijen in een tabel dat kan relateren met het aantal rijen in een andere tabel. Bijvoorbeeld: een klant kan veel contactmomenten hebben, maar een contactmoment kan bij maximaal één klant behoren. Kardinaliteit wordt meestal uitgedrukt als volgt:

• één op één (1:1)

Voorbeeld: elke werknemer heeft één bedrijfswagen.

• één op veel (1:*) of omgekeerd (*:1)

Voorbeeld: één klant kan meerdere contactmomenten hebben, maar een contactmoment is altijd gekoppeld aan één klant.

• veel op veel (*:*)

Voorbeeld: de tabel Orders bevat orders die zijn geplaatst door meerdere klanten (die vind je in de tabel Klanten), en een klant kan meerdere orders plaatsen. In dit geval moeten we werken met een ‘tussentabel’.

De kardinaliteit wordt in een ERD als volgt voorgesteld (logisch-model, 2019):

Figuur 4: notatie kardinaliteit

2.1 Databasenormalisatie

Normalisatie is het proces waarbij de gegevens in een database worden geordend. Concreet betekent dit tabellen maken en relaties tussen die tabellen leggen op basis van een aantal regels

Elke regel wordt een normaalvorm genoemd. Als aan de eerste regel wordt voldaan, bevindt de database zich in de eerste normaalvorm. Als aan de drie regels wordt voldaan, bevindt de database zich in de derde normaalvorm. Hoe hoger de normaalvorm, hoe meer eisen er gesteld worden aan het ontwerp. De vijfde normaalvorm is de hoogste. Wanneer aan geen van de regels voldaan is, wordt dat aangeduid met 0NF. In praktijk betekent dit dat de database niet goed ontworpen is en vaak beperkt bruikbaar.

De meeste toepassingen gebruiken databases die zijn genormaliseerd tot de eerste, tweede of derde normaalvorm.

Eerste normaalvorm (1NF)

De regels van de eerste normaalvorm zijn:

• Elk attribuut bevat slechts één waarde. Dus niet: ‘8000 Brugge’ in één veld, maar aparte velden voor postcode en gemeente.

• Geen enkel attribuut wordt herhaald.

Kortom, als alle data in een of meer tabellen zijn ondergebracht, is er al sprake van de eerste normaalvorm.

Tweede normaalvorm (2NF)

De regels van de tweede normaalvorm zijn:

• De database voldoet aan de regels van de eerste normaalvorm.

• Als bepaalde gegevens zich herhalen of bij meerdere records horen (bv. meerdere producten bij één bestelling), verplaats je die naar een aparte tabel en leg je een relatie.

Derde normaalvorm (3NF)

De regels van de derde normaalvorm zijn:

• De database voldoet aan de regels van de tweede normaalvorm.

• Informatie die afhankelijk is van andere gegevens, maar niet van de unieke ID (sleutel), moet ook in een aparte tabel. Bijvoorbeeld: als je in een klantentabel zowel de klant als de naam van de verkoper opslaat, en elke verkoper meerdere klanten heeft, dan hoort de verkoper beter in een eigen tabel. Zo vermijd je dat je bij elke klant opnieuw dezelfde informatie over de verkoper moet invullen.

2.2 Ontwerp van een relationele database

Situatieschets

Tex-Mex bv wil een database om contactmomenten met de klant op te slaan. Klantgegevens zijn bijvoorbeeld voornaam, naam en straat. Elke keer dat het bedrijf en een klant met elkaar communiceren, wordt beschouwd als een contactmoment.

We starten met het maken van een tabel. We houden daarbij rekening met de normalisatieregels en maken een attribuut voor iedere waarde (1NF).

Figuur 5: database contactmomenten

Onze database voldoet aan de eerste normaalvorm. Maar het adres van de klant moet bij ieder contactmoment weer ingevoerd worden, waardoor één adres wellicht honderden keren in de database voorkomt. De structuur kan dus beter.

Om te voorkomen dat de klantgegevens meerdere keren ingevoerd of gewijzigd moeten worden, plaatsen we deze in een aparte tabel (2NF). In de tabel met de contactmomenten komt een verwijzing naar de klant (Klant_ID).

Figuur 6: tweede normaalvorm

Het ER-diagram ziet er als volgt uit:

Figuur 7: ER-diagram

Iedere entiteit heeft een sleutel of een uniek record om de records te identificeren en de gegevens in de verschillende tabellen aan elkaar te koppelen:

• Tabel Klanten: Klant_ID (primaire sleutel)

• Tabel Contactmomenten: Contactmoment_ID (primaire sleutel)

• Tabel Contactmomenten: Klant_ID (vreemde sleutel)

Primaire en vreemde sleutels

Een primaire sleutel is een attribuut dat aan de volgende voorwaarden voldoet:

• uniek,

• niet leeg,

• legt relaties tussen tabellen.

Een vreemde sleutel of een verwijzende sleutel is een attribuut in een tabel dat dient als verwijzing naar een andere tabel. Een vreemde sleutel bevat dus uitsluitend waarden van de primaire sleutel van die andere tabel.

In het voorbeeld hebben we een één-op-veelrelatie gelegd tussen de entiteit Klanten en de entiteit Contactmomenten op basis van het gemeenschappelijke attribuut Klant_ID.

Onze database voldoet tot nu toe aan de tweede normaalvorm

We gaan een stap verder en kijken naar de derde normaalvorm. Bij de tweede normaalvorm gaan we er nog van uit dat de gemeente en de postcode attributen zijn van de klant. In de derde normaalvorm worden de postcode en de gemeente als aparte entiteiten gezien.

Figuur 8: derde normaalvorm

Ook voor de categorie waartoe het contact behoort en het type contact maken we nieuwe entiteiten.

Figuur 9: derde normaalvorm

Het ERD in de derde normaalvorm ziet er als volgt uit:

Figuur 10: ERD

Onze database voldoet nu aan de derde normaalvorm. In het voorbeeld is geen enkel niet-sleutelattribuut nog afhankelijk van een ander niet-sleutelattribuut. Voordeel: de data zijn niet meer redundant (overtollig) opgeslagen en de structuur van de data is meteen duidelijk, ook wanneer men de data zelf nog niet kent.

3 Relationeel model in Power BI

Met de Modelweergave (Model View) in Power BI kun je heel complexe gegevenssets met meer dan honderd tabellen bekijken en gebruiken.

Gegevens modelleren is de derde stap in de data-ijsberg:

Dit hoofdstuk bouwt verder op het hoofdstuk ‘Gegevens opschonen en transformeren met Power Query Editor’. Je kunt dus verder werken in het bestand H4_Gegevensanalyse_Tex-Mex.pbix. Als je dat hoofdstuk nog niet hebt afgewerkt, vind je het bestand ook in de lijst met opgavebestanden onder de naam H5_Gegevensanalyse_Tex-Mex.pbix.

1 Open het bestand H5_Gegevensanalyse_Tex-Mex_opgave.pbix in Power BI Desktop (of werk verder in je eigen oplossing).

2 Klik in het linkerdeelvenster op het pictogram Model view. In de modelweergave worden alle tabellen, kolommen en relaties in je model weergegeven.

Je herkent onmiddellijk een ER-diagram!

Figuur 11: modelweergave

a Het lint in de modelweergave bestaat uit drie tabbladen: File (Bestand), Home en Help.

b In het linkerdeelvenster kun je schakelen tussen de Report View (Rapportweergave), de Table View (Tabelweergave), de Model View (Modelweergave) en DAX Query View Dat doe je door de pictogrammen te selecteren.

c In het middelste deelvenster kun je de relaties tussen de verschillende tabellen zien.

d In het deelvenster Properties (Eigenschappen) kun je algemene eigenschappen van één of meerdere tabellen instellen. Je kunt meerdere tabellen tegelijk selecteren met de CTRL-toets.

e In het deelvenster Data kun je mappen aanmaken om complexe modellen beter leesbaar te maken.

De deelvensters Properties en Data kunnen dichtgeklapt worden (>).

f Je kunt extra tabbladen toevoegen met een subset van de tabellen die je model bevat.

g Met de schuifregelaar kun je op het middelste deelvenster in- of uitzoomen.

3.1 Autodetectie tijdens het laden

Tijdens het laden van de gegevens heeft Power BI automatisch relaties tussen de tabellen gedetecteerd (functie Autodetect). In de meeste gevallen is het nodig om relaties te wijzigen of nieuwe relaties te leggen die Power BI niet automatisch gedetecteerd heeft. Hoe dan ook is het belangrijk om relaties in Power BI te begrijpen en te weten hoe je ze maakt en bewerkt.

Power BI Desktop kijkt naar kolomnamen van de tabellen die je laadt en het gegevenstype om te bepalen of er mogelijke relaties zijn. Als dat het geval is, worden de relaties automatisch gemaakt. Als Power BI Desktop niet met grote zekerheid kan vaststellen of er een overeenkomst is, wordt er niet automatisch een relatie gemaakt.

Het is aan te raden om de autodetectie uit te schakelen via File > Options and settings > Options > Data Load

Figuur 12: autodetectie uitschakelen

Notitie

Als er een relatie bestaat tussen twee tabellen, kun je in beide tabellen met de gegevens werken alsof ze één tabel vormen.

3.2 Actieve en niet-actieve relaties

Wanneer Power BI Desktop automatisch relaties maakt, wordt er soms meer dan één relatie tussen twee tabellen gedetecteerd. In een dergelijk geval wordt maar een van de relaties als actief ingesteld. De actieve relatie fungeert als de standaardrelatie. De niet-actieve relatie wordt aangeduid in stippellijn.

1 Klik in het lint op Home > Manage relationships (Relaties beheren) om een overzicht te krijgen van de automatisch gedetecteerde relaties.

Figuur 13: dialoogvenster Manage relationships

3.3 Relaties verwijderen

Selecteer de relatie die je wilt verwijderen en klik op Delete

Figuur 14: relatie verwijderen

3.4 Relaties toevoegen

Relaties toevoegen kan op twee verschillende manieren.

Om het aantal orders per verkoper te kunnen visualiseren, leggen we een relatie tussen de tabel Personeelsleden (veld Personeelslid_ID) en de tabel Orders (veld Verkoper).

Eerste manier

1 Klik op het plusteken om een extra tabblad toe te voegen.

Figuur 15: tabblad toevoegen

2 Sleep de tabellen Personeelsleden en Orders uit het deelvenster Data naar het middelste deelvenster.

Figuur 16: tabellen slepen

3 Sleep het veld Personeelslid_ID naar het veld Verkoper.

Figuur 17: relatie toevoegen

Tweede manier

1 Selecteer de tabel Personeelsleden en klik in het lint op Home > Manage Relationships.

2 Kies New relationship. Het dialoogvenster New relationship verschijnt.

3 Selecteer in de eerste keuzelijst een tabel (Personeelsleden) en selecteer vervolgens de kolom die je in de relatie wilt gebruiken (Personeelslid_ID).

4 Selecteer in de tweede keuzelijst de andere gewenste tabel voor de relatie (Orders); selecteer vervolgens de andere kolom die je wilt gebruiken (Verkoper).

Figuur 18: relatie toevoegen

5 Klik op OK en sluit het venster New relationship.

Notitie

Om een relatie te leggen moet ten minste één tabel in de relatie een kolom hebben met unieke sleutelwaarden. Dit is een algemene vereiste voor alle relationele databases.

6 Verberg de kolommen die niet zichtbaar mogen zijn in de rapportweergave. Klik in de tabel Orders op het oogje naast het veld Bestelnr..

Figuur 19: verbergen in de rapportweergave

Tabellen of kolommen verbergen

Wanneer je een tabel of kolom verbergt, wordt die niet uit het model verwijderd. Het verbergen van tabellen of kolommen is alleen bedoeld om de lijst met tabellen en kolommen die zichtbaar zijn voor de eindgebruiker (in de rapportweergave) te vereenvoudigen.

3.5 Feiten en dimensies

Om het gegevensmodel goed te begrijpen verwijderen we alle automatisch aangemaakte relaties en voegen ze handmatig opnieuw toe. Zo krijg je beter inzicht in hoe de tabellen met elkaar verbonden zijn en hoe het model is opgebouwd.

Een gegevensmodel bestaat meestal uit twee soorten tabellen: feitentabellen en dimensietabellen

• Feiten zijn de meetbare gegevens, zoals omzet, aantal producten of ziekteverzuim.

• Dimensies geven context aan die feiten. Ze beantwoorden de vragen wie, wat, waar, wanneer

Een hulpmiddel om feiten en dimensies van elkaar te onderscheiden, is het gebruik van het woord ‘per’.

Als je zegt: ‘Ziekteverzuim per medewerker per maand’, dan is ziekteverzuim het feit. Medewerker en maand zijn de dimensies.

Of bij: ‘Omzet per land per smaak’, is omzet het feit, en land en smaak zijn de dimensies.

Hoofdstuk

In een goed opgebouwd gegevensmodel staat de feitentabel centraal. Die tabel bevat:

• sleutelkolommen die verwijzen naar de bijhorende dimensietabellen (zoals product-ID, klant-ID...);

• numerieke waarden die we willen analyseren (zoals omzet, kosten, aantal...).

Rond de feitentabel bevinden zich de dimensietabellen, die extra informatie bevatten over bijvoorbeeld producten, klanten of periodes.

In de praktijk bevatten dimensietabellen meestal minder rijen dan feitentabellen, maar wel meer beschrijvende velden.

De structuur van zo’n model lijkt op een ster: één centrale feitentabel met daaromheen meerdere dimensietabellen. Daarom noemen we dat een sterschema (star scheme).

Dat sterschema is een veelgebruikte en efficiënte manier van modelleren, vooral in relationele datawarehouses.

Figuur 20: sterschema

We passen dit toe in ons voorbeeld.

1 Klik in de modelweergave in het lint op Home > Manage relationships.

2 Verwijder alle relaties:

a Selecteer alle relaties met de SHIFT-toets.

b Klik op Delete

Figuur 21: relaties verwijderen

c Bevestig door te klikken op Delete.

d Klik op Close.

In een volgende stap controleren we welke tabel(len) de feiten bevatten en welke tabel(len) de dimensies:

Feitentabel(len)

Orders

Klachten

Dimensietabel(len)

Klanten

Personeelsleden

Producten

1 Plaats de feitentabel centraal en leg de volgende relaties door de velden te slepen.

Figuur 22: relaties

Figuur 23: sterschema

Een goed gestructureerd gegevensmodel bestaat idealiter uit tabellen die duidelijk te onderscheiden zijn als dimensietabellen of feitentabellen.In de praktijk is modelontwerp echter geen exacte wetenschap. Niet elk model volgt strikt die indeling, en dat is vaak helemaal prima. Het belangrijkste is dat het model logisch aanvoelt en aansluit bij de manier waarop je de gegevens wilt analyseren.

Zo kan een model bijvoorbeeld meerdere feitentabellen bevatten. In dat geval is het verstandig om voor elke feitentabel een afzonderlijk sterschema te ontwerpen, eventueel in verschillende weergaves of lay-outs. Dat helpt om het model overzichtelijk en onderhoudbaar te houden.

Figuur 24: nieuwe lay-out stermodel Klachten

2 Bewaar het bestand onder de naam H5_Gegevensanalyse_Tex-Mex.pbix.

Notitie

Het is aan te raden in de naamgeving van de tabellen de prefix Dim (dimensietabel) of Fact (feitentabel) te gebruiken. Dit kan helpen bij het modelleren.

Bij het leggen van relatie moeten we lussen vermijden. Als er bijvoorbeeld nog een relatie gelegd zou worden tussen de tabel Klachten (kolom Personeelslid_ID) en de tabel Personeelsleden (kolom Personeelslid_ID), ontstaat er een lus.

Een alternatief voor het sterschema is het snowflake scheme of sneeuwvlokschema. Daarbij worden de dimensietabellen verder genormaliseerd.

Het gegevensmodel begrijpen is cruciaal om tot een correcte gegevensanalyse te komen.

3.6 Kardinaliteit en kruisfilterrichting

Wanneer je een relatie maakt of bewerkt, kun je in Power BI extra opties configureren: de kardinaliteit (Cardinality, zie ook Relationele database) en de kruisfilterrichting (Cross filter direction).

Figuur 25: opties relaties

Power BI configureert automatisch de eigenschappen voor kardinaliteit en kruisfilterrichting. Maar je kunt ze wijzigen wanneer je dat nodig vindt.

Kardinaliteit

We onderscheiden vier soorten kardinaliteit:

Figuur 26: kardinaliteit

One to many of één op veel (1:*), of omgekeerd (*:1)

Dit type relatie komt heel vaak voor. Eén record in de eerste tabel is gerelateerd aan meerdere records in de tweede tabel. Voor elke klant (1) uit de tabel Klanten kunnen bijvoorbeeld meerdere (veel) orders in de tabel Orders opgeslagen zijn.

Figuur 27: één-op-veelrelatie

One to one of één op één (1:1)

Eén record in de eerste tabel is gerelateerd aan één record in de tweede tabel. Een personeelslid (1) uit de tabel Personeelsleden is bijvoorbeeld gerelateerd aan één wagen (1) uit de tabel Bedrijfswagens.

Many to many of veel op veel (*:*)

Meerdere records in een tabel zijn gekoppeld met meerdere records in een andere tabel. Tussen klanten en product bestaat er bijvoorbeeld een veel-op-veelrelatie. Klanten kunnen meerdere producten kopen en één product kan door meerdere klanten worden gekocht.

In dit geval kan er gewerkt worden met een samenvoegtabel, of de veel-op-veelrelatie wordt gesplitst in twee één-op-veelrelaties. Elke record in een samenvoegtabel bevat een vergelijkingsveld met de waarde van de primaire sleutels van de twee tabellen die worden samengevoegd.

Figuur 28: veel-op-veelrelatie

Hoofdstuk 5 Een gegevensmodel maken in power BI Desktop

Notitie

Power BI biedt ook ondersteuning voor veel-op-veelrelaties. Meer informatie over veel-op-veelrelaties kun je terugvinden op https://docs.microsoft.com/nl-nl/power-bi/transform-model/desktop-manyto-many-relationships.

Kruisfilterrichting

De richting van de relatie speelt een hele belangrijke rol bij het modelleren in Power BI. Concreet betekent dit dat de tabel Producten of de tabel Klanten de tabel Orders kan filteren.

Figuur 29: richting relatie

We werken verder in het bestand H5_Gegevensanalyse_Tex-Mex.pbix

1 Klik op het pictogram Report om naar de rapportweergave te gaan.

2 Selecteer in het deelvenster Data in de tabel Producten het veld Smaak en in de tabel Orders het veld Palletten. Het resultaat is het aantal palletten per smaak.

Figuur 30: aantal palletten per smaak

Door de filterrichting kan de tabel Orders gefilterd worden door een dimensie uit de tabel Producten. Stel dat we het aantal klanten per smaak willen visualiseren:

1 Selecteer in het deelvenster Data in de tabel Producten het veld Smaak en in de tabel Klanten het veld KlantID.

2 Kies voor het veld KlantID de aggregatie Count (Distinct).

Figuur 31: Count (Distinct)

3 Hoewel de tabellen gerelateerd zijn (met een tussentabel), krijgen we niet het juiste resultaat.

Figuur 32: aantal klanten per smaak

4 Wijzig de kruisfilterrichting tussen de tabel Orders en de tabel Klanten naar Both

Figuur 33: kruisfilterrichting Both

Figuur 34: kruisfilterrichting Both

Hoofdstuk

5 Ga naar de rapportweergave om het resultaat te bekijken.

Figuur 35: aantal klanten per smaak

Het resultaat is het correcte aantal klanten per smaak.

Notitie

Door de kruisfilterrichting te wijzigen kun je mogelijke problemen met visualisaties oplossen. We raden het niet aan, omdat het wijzigen van de kruisfilterrichting naar ‘Both’ negatieve gevolgen heeft voor de performantie van het model.

Betere oplossingen zijn het gegevensmodel wijzigen of gebruikmaken van de DAX-functie CROSSFILTER.

Hoofdstuk 6

Berekeningen en gegevensanalyse met DAX

Dit hoofdstuk bouwt verder op het hoofdstuk ‘Een gegevensmodel maken in Power BI Desktop’. Je kunt dus verder werken in je eigen oplossing Als je dat hoofdstuk nog niet afgewerkt hebt, kun je het bestand vinden in de lijst met opgavebestanden onder de naam H6_Gegevensanalyse_Tex-Mex_opgave.pbix

Met de kennis uit de vorige hoofdstukken kun je nu al rapporten bouwen die waardevolle inzichten opleveren. Maar wat als je bijvoorbeeld de gemiddelde doorlooptijd van een klacht wil berekenen? Of je wil weten hoeveel klanten een omzet van meer dan € 100 000 behaald hebben?

Net als in Excel kun je in Power BI Desktop extra berekeningen toevoegen aan het gegevensmodel. Power BI gebruikt daarvoor de taal DAX1 (Data Analysis eXpressions). DAX is geen programmeertaal, maar een formuletaal die wordt gebruikt in Power BI, Analysis Services en Power Pivot in Excel.

Met DAX kun je berekeningen en analyses uitvoeren op gegevens die zijn opgeslagen in tabellen en kolommen in een gegevensmodel.

DAX-formules maken gebruik van functies, operatoren en waarden om berekeningen en inzichtrijke analyses mogelijk te maken – bijvoorbeeld totalen, gemiddelden, tijdsanalyses of vergelijkingen tussen periodes.

DAX lijkt op het eerste gezicht sterk op Excel-formules, vooral qua schrijfwijze en structuur. Maar de manier van denken is fundamenteel anders. Waar Excel cel per cel rekent in een platte tabel, werkt DAX met tabellen, relaties en filtercontexten. Dat betekent dat je leert redeneren vanuit het gegevensmodel als geheel, en niet langer vanuit individuele cellen.

1 https://docs.microsoft.com/nl-nl/dax/dax-overview

Gegevens analyseren is de vierde stap in de data-ijsberg.

In deze stap ligt de nadruk op het analyseren van de gegevens en het opstellen én valideren van berekeningen met DAX. Het doel is om waardevolle inzichten te verkrijgen en na te gaan of de berekeningen logisch en correct zijn.

Het visueel aantrekkelijk presenteren van de gegevens en het delen van rapporten volgen pas in de latere stappen van de data-ijsberg.

1 DAX-basisbeginselen

1.1 New measure | New column | New table

DAX-formules in Power BI worden gebruikt in drie contexten:

1 Measures (metingen): een DAX-formule die één waarde teruggeeft

2 Calculated columns (berekende kolommen): een DAX-formule die rij per rij wordt berekend tijdens het laden van de gegevens. Het resultaat is een extra kolom in de oorspronkelijke tabel.

3 Calculated tables (berekende tabellen): een DAX-formule die een nieuwe tabel creëert op basis van bestaande gegevens.

Elke context heeft een ander doel en gedrag binnen je gegevensmodel.

Figuur 1: DAX-formules

Samengevat:

Measure Aggregatie op basis van filtercontext Een waarde SUM, AVERAGE, CALCULATE, DIVIDE, enz.

Calculated column Rij-per-rijberekening in een tabel

Calculated table Nieuwe structuur in je gegevensmodel

1.2 Rijcontext en filtercontext

Nieuwe kolom IF, DATEDIFF, RELATED, VALUES, enz.

Nieuwe tabel FILTER, SUMMARIZECOLUMNS, enz.

Rijcontext en filtercontext zijn twee fundamentele concepten in DAX. Ze bepalen welke gegevens worden gebruikt bij het uitvoeren van een berekening.

1.2.1 Rijcontext

Rijcontext ontstaat wanneer een formule wordt berekend rij per rij in een tabel. Dit gebeurt meestal in berekende kolommen

Voorbeeld:

Stel dat je een tabel Producten hebt met een kolom Prijs en een kolom Aantal. Je voegt een berekende kolom toe:

Totaal = Producten[Prijs] * Producten[Aantal]

Hier weet DAX precies in welke rij hij zich bevindt, en gebruikt daarom de waarden uit die specifieke rij. Dat is rijcontext.

1.2.2 Filtercontext

Filtercontext is wat ingewikkelder. Filtercontext ontstaat wanneer een berekening wordt uitgevoerd op basis van geselecteerde of gefilterde data, bijvoorbeeld via slicers, grafieken of een CALCULATEfunctie. Dat zie je vooral bij metingen (measures).

Voorbeeld

DAX

Totale Omzet = SUM(Producten[Totaal])

Als je die measure in een rapport gebruikt en filtert op “Smaak = Chili”, dan telt Power BI alleen de Totaal-waarden van de producten met die smaak op. De measure wordt berekend binnen de filtercontext die ontstaat door de visuele filters.

1.3 DAX-syntaxis

De syntaxis omvat de verschillende elementen van een formule of expressie:

Figuur 2: DAX-syntaxis

Deze formule bevat de volgende elementen:

1 De naam van de berekende kolom of de meting.

2 Het =-teken.

3 De DAX-functie, SUM in het voorbeeld.

4 Haakjes.

5 De tabel waarnaar wordt verwezen, in het voorbeeld de tabel Orders.

6 De kolom waarnaar wordt verwezen, in het voorbeeld de kolom Palletten.

Het resultaat van deze functie is de som van het aantal palletten uit de tabel Orders

1.4 DAX-functie opsplitsen in meerdere regels

Er is geen officiële standaard, maar zodra je ietwat complexere DAX-expressies gaat schrijven is het aan te raden meerdere regels te gebruiken in plaats van alles op één lijn te zetten.

Gebruik Shift+Enter of Alt+Enter voor een nieuwe regel.

Er worden ook een aantal regels geformuleerd om de leesbaarheid (en foutopsporing) van de code te vereenvoudigen:

• Verwijzingen naar kolommen: TableName[ColumnName]: vermeld altijd de tabelnaam, geen spaties.

• Measures: [MeasureName], geen tabelnaam.

• Na een komma volgt een spatie, nooit ervoor.

• Als de code op één lijn past, zijn er geen andere regels.

• Als de code niet op één lijn past:

a Zet de functienaam op een aparte regel, in hoofdletters, gevolgd door een spatie.

b Zet alle argumenten van de functie op een aparte regel.

c De ‘sluitende’ haakjes staan ook op een aparte regel, uitgelijnd met het begin van de functienaam.

Het is vooral belangrijk dat je snel je weg vindt in je eigen code.

1.5 DAX-operatoren

Een overzicht van de belangrijkste DAX operatoren:

Rekenkundig

Vergelijking

/ Optellen Aftrekken Vermenigvuldigen delen

Gelijk aan Niet gelijk aan Groter dan Groter dan of gelijk aan Kleiner dan Kleiner dan of gelijk aan

Tekst samenvoegen &

Logisch && ||

AND-voorwaarde in twee booleaanse expressies

OR-voorwaarde in twee booleaanse expressies

IN NOT Een element insluiten in een lijst Booleaanse negatie

[CountryRegion] = “USA” && [Quantity]>0

[CountryRegion] = “USA” || [Quantity]>0

[CountryRegion] IN {“USA”,”Canada”} NOT [Quantity]>0

1.6 Kleurgids

DAX gebruikt verschillende kleurcodes:

• Azuurblauw: variabelen

• Groen: commentaar

• Paars: measures

• Blauw: functies

• Rood: tekstwaarden

• Zwart: tabelnamen, kolomnamen, operatoren, enz.

1.7 Variabelen

Een variabele in DAX wordt gedefinieerd met het sleutelwoord VAR. Je gebruikt het om een waarde tijdelijk op te slaan die je later in de formule hergebruikt.

Waarom variabelen gebruiken?

• Je vermijdt dubbele berekeningen.

• Je formule wordt leesbaarder.

• Je kunt de resultaten stap voor stap opbouwen.

Belangrijk:

• Je kunt meerdere variabelen definiëren met meerdere VAR-regels.

• RETURN is verplicht om aan te geven wat de uiteindelijke waarde is.

1.8 Commentaar

In iedere taal is het handig om wat commentaar te kunnen toevoegen. Net zoals in de M-taal kun je ook in DAX commentaar toevoegen door de dubbele schuine streep te gebruiken (//).

2 Berekende kolommen met eenvoudige DAX-formules

De beste manier om DAX te leren kennen, is starten met een aantal eenvoudige formules:

1 Open het bestand H6_Gegevensanalyse_Tex-Mex_opgave.pbix (of je eigen oplossing) in Power BI Desktop.

2 Bewaar het bestand als H6_Gegevensanalyse_Tex-Mex.pbix.

3 Klik in het linkerdeelvenster op het pictogram Table view.

Figuur 3: Table view of Tabelweergave

a Het lint in de Tabelweergave bestaat uit vijf tabbladen: File (Bestand), Home (Start), Help, Exernal tools en Table tools.

b In het linkerdeelvenster kun je schakelen tussen de Report view (Rapportweergave), de Table view (Tabelweergave), de Model view (Modelweergave) en de DAX Query view door de pictogrammen te selecteren.

c In het middelste deelvenster of gegevensraster kun je de gegevens zien van de geselecteerde tabel.

d In het rechterdeelvenster zie je de lijst met velden. Selecteer een tabel of kolom om weer te geven in het gegevensraster.

e In de formulebalk kun je DAX-formules invoeren voor berekende kolommen en metingen.

2.1 Eenvoudige bewerking

We berekenen de verkoopprijs per pallet in de tabel Producten.

1 Klik in het linkerdeelvenster op het pictogram Table view om naar de tabelweergave te gaan.

2 Selecteer de tabel Producten

3 Klik in het lint op Table tools > New Column.

Figuur 4: nieuwe kolom toevoegen

a De nieuwe kolom is zichtbaar in het middelste deelvenster, in de formulebalk kun je de formule invoeren.

Figuur 5: nieuwe kolom

b Geef de veldnaam in voor het =-teken.

Figuur 6: veldnaam

c De formule geef je in na het =-teken in de formulebalk. De verkoopprijs per pallet is gelijk aan de VP/Pak * Aantal/karton * Kartons/Pallet. Start met het intikken van VP. Je krijgt een lijst met alle velden die beginnen met de letters VP. Kies de kolomkop door te bevestigen met de tabtoets of door dubbel te klikken op de kolomkop.

Figuur 7: formule invoeren

d Typ vervolgens een * om te vermenigvuldigen. Vermenigvuldig met de velden Aantal/ Karton en Kartons/Pallet.

Figuur 8: formule VP/Pallet

e Bevestig met Enter. Het resultaat is zichtbaar in de kolom VP/Pallet

Figuur 9: resultaat berekening VP/Pallet

Notitie

Kolomnamen moeten uniek zijn per tabel. Je kunt wel twee kolommen hebben met dezelfde naam als ze in aparte tabellen staan. We adviseren evenwel om de kolomnamen uniek te houden voor alle tabellen, om te vermijden dat je de verkeerde kolommen zou gebruiken in je analyse.

Een nieuwe berekende kolom wordt altijd rechts toegevoegd.

Berekende kolommen met DAX-functies

Net zoals DAX-formules vertonen DAX-functies sterke overeenkomsten met Excel-functies. Maar DAX is in veel opzichten krachtiger. Belangrijk om te weten is dat DAX-functies alleen in het Engels bestaan.

DAX-functies kunnen onderverdeeld worden in verschillende categorieën:

• aggregatiefuncties,

• datum- en tijdfuncties,

• filterfuncties,

• financiële functies,

• functies voor tabelmanipulatie,

• informatiefuncties,

• logische functies,

• ouder- en kindfuncties,

• rekenkundige en trigonometrische functies,

• relatiefuncties,

• statistische functies,

• tekstfuncties,

• tijdintelligentiefuncties,

• enz.

Notitie

Er bestaan meer dan 350 DAX-functies. We beperken ons in dit handboek tot een aantal veelgebruikte functies. Met de 15 meestgebruikte DAX-functies kun je 95 % van de analysevragen oplossen! Voor een overzicht van alle DAX-functies kun je terecht op https://docs.microsoft.com/nl-nl/dax/.

Net zoals in Excel verschijnt er een lijst met beschikbare functies zodra je een functie begint in te tikken in de formulebalk. Met behulp van de pijltjestoetsen kun je de functies selecteren. Er wordt telkens een korte beschrijving van de functie weergegeven.

Alleen de functies die overeenkomen met de letters die je hebt ingetikt worden getoond. Als je bijvoorbeeld ‘R’ hebt getikt, worden alleen de functies weergegeven die beginnen met een R.

Figuur 10: DAX-functie

3.1 Functie IF

Opgave

Als het aantal bestelde palletten (tabel Orders) hoger is dan 50, is de celwaarde hoog, is het aantal lager dan 50, dan is de celwaarde laag.

DAX-functies

We gebruiken de volgende DAX-functie:

Controleert een voorwaarde en geeft één waarde terug als die WAAR is, anders geeft het een tweede waarde terug.

Syntaxis IF

IF(<logical_test>, <value_if_true>[, <value_if_false>])

<logical_test> Logische test. <value_if_true> De waarde indien het resultaat WAAR is. [, <value_if_false>] [Optioneel] De waarde indien het resultaat ONWAAR is.

Oplossing

1 Klik in het linkerdeelvenster op het pictogram Table view om naar de tabelweergave te gaan.

2 Selecteer de tabel Orders

3 Klik in het lint op Table tools > New Column.

4 Geef in de formulebalk de functie in.

Figuur 11: functie IF

3.2 Functie RELATED

Opgave

Bereken in de tabel Orders de omzet (aantal palletten * VP/pallet). De VP/pallet hebben we eerder in dit hoofdstuk al berekend.

DAX-functie

In dit voorbeeld gebruiken we de volgende DAX-functie:

Geeft een gerelateerde waarde uit een andere tabel.

Syntaxis

RELATED(<column>)

Column De kolom die de waarden bevat die je wilt opvragen.

Oplossing

1 Klik in het linkerdeelvenster op het pictogram Table view om naar de tabelweergave te gaan.

2 Selecteer de tabel Orders.

3 Klik in het lint op Table tools > New Column. Geef in de formulebalk de functie in:

Figuur 12: functie RELATED

4 Wijzig het gegevenstype: klik in het lint op Column tools > Date type: Decimal Number, Format: 123 €, 0 decimalen:

Figuur 13: gegevenstype

Excel-functie VLOOKUP versus DAX-functie RELATED

VLOOKUP is naast SUM en IF misschien wel de meest gebruikte functie in Excel. Maar er zijn enkele bedenkingen bij het gebruik van de functie VLOOKUP.

Veel gebruikers weten niet wat het laatste argument van de functie betekent, hoewel het laatste argument bepalend is voor het resultaat. Je moet ook specificeren in de hoeveelste kolom van de tabel de waarde staat die je nodig hebt. Maar wat als je een kolom tussenvoegt? Of wat als je nieuwe cijfers downloadt?

Een van de krachtigste functies in Power BI is de mogelijkheid om relaties te maken tussen tabellen en vervolgens de gerelateerde tabellen te gebruiken om gerelateerde gegevens op te zoeken of te filteren.

In tegenstelling tot de zoekfunctie VLOOKUP, die gebaseerd is op matrices, volgt DAX bestaande relaties onder tabellen die met sleutels zijn samengevoegd om die ene gerelateerde waarde te vinden die exact overeenkomt.

DAX kan ook een tabel met records ophalen die verwant zijn aan de huidige record (functie RELATEDTABLE).

3.3 Functie YEAR

Opgave

Een veelgebruikte DAX-functie is de functie YEAR. Voeg een nieuwe berekende kolom Jaar toe aan de tabel Klachten met het jaartal van de Datum indienen klacht.

DAX-functie

In dit voorbeeld gebruiken we de volgende DAX-functie:

DAX-Functie Excel-functie

Categorie Beschrijving

YEAR YEAR/JAAR Datumfunctie Geeft het jaartal uit een datum.

Syntaxis

YEAR(<date>)

Argument Beschrijving

Date

Oplossing

Een datum met daarin het jaartal dat je wilt vinden.

1 Selecteer de tabel Klachten.

2 Klik in het lint op Table tools > New Column. Geef in de formulebalk de functie in.

Figuur 14: functie YEAR

3 Bevestig met Enter.

Notitie

Dit kan ook perfect in de Query editor (Add Column > Date > Year). Deze werkwijze geniet de voorkeur.

3.4

Opgave

Functies SWITCH en SWITCH in combinatie met TRUE()

Maak in de tabel Orders een nieuwe berekende kolom om een ‘waarde’ toe te kennen aan de bestelhoeveelheid:

• Als het aantal bestelde palletten hoger is dan tachtig, wil je ‘Hoog’ zien in de kolom;

• Als het aantal bestelde palletten tussen vijftig en tachtig ligt, wil je als resultaat ‘Gemiddeld’;

• Als het aantal bestelde palletten lager is dan vijftig, wil je als resultaat ‘Laag’.

DAX-functie

In dit voorbeeld gebruiken we de volgende DAX-functie:

Logische functie Evalueert een expressie aan de hand van een lijst van waarden en geeft een van de vele mogelijke resultaten terug.

Logische functie Geeft als resultaat de logische waarde TRUE of WAAR.

Met de functie SWITCH wordt één waarde (de expressie genoemd) geëvalueerd ten opzichte van een lijst met waarden en wordt het resultaat dat betrekking heeft op de eerste overeenkomende waarde geretourneerd. Als er geen overeenkomst wordt gevonden, kan een optionele standaardwaarde worden geretourneerd.

De SWITCH-functie kun je vergelijken met een geneste IF-functie.

Syntaxis

SWITCH(<expression>; <value>; <result>[; <value>; <result>]…[; <else>])

Argument Beschrijving

Expression

Value

Result

Zoekkolom

Waarde 1

Resultaat 1

Value Waarde 2

Result

Enz.

Else

Resultaat 2

Waarde om te retourneren als er geen overeenkomst is.

Voorbeeld

Stel dat je in je gegevensmodel een tabel Calendar met een kolom Month hebt met de waarden 1, 2, 3, ..., 12. Maar je wilt liever januari, februari, maart enzovoort zien staan. In dat geval is de functie SWITCH de perfecte oplossing:

= SWITCH(Calendar[Month];1;”Januari’;2;”Februari”;3;”Maart” enzovoort)

Oplossing

In dit voorbeeld gebruiken we de functie SWITCH in combinatie met de functie TRUE(). We vergelijken geen exacte tekst, maar een voorwaarde.

1 Klik in het linkerdeelvenster op het pictogram Table view om naar de tabelweergave te gaan.

2 Selecteer de tabel Orders.

3 Klik in het lint op Table tools > New Column. Geef in de formulebalk de functie in.

Figuur 15: functie SWITCH

4 Impliciete metingen met DAX

Metingen of measures berekenen het resultaat van een expressieformule. We maken een onderscheid tussen impliciete en expliciete metingen.

Een impliciete meting ontstaat automatisch wanneer je een veld (zoals een kolom met getallen) naar een visual sleept, en Power BI zelf een aggregatie kiest, zoals som, gemiddelde of aantal

Voorbeeld

1 Klik in het linkerdeelvenster op het pictogram Report om naar de rapportweergave te gaan.

2 Selecteer de tabel Orders

3 Vink het veld Omzet aan.

Figuur 16: veld Omzet

1 Er wordt een nieuwe visualisatie van een kolomdiagram weergegeven die de som van alle waarden in de kolom Omzet van de tabel Orders toont.

Figuur 17: kolomdiagram Som van omzet

2 Als je de aggregatie wilt aanpassen naar gemiddelde, klik je in het venster Visualizations in het gedeelte Value naast Omzet op de pijl omlaag en selecteer je Average. De visualisatie wordt gewijzigd in het gemiddelde van de omzet.

Figuur 18: gemiddelde Omzet

Notitie

Omdat impliciete metingen beperkt zijn tot standaardaggregaties (zoals SUM, COUNT, MIN, MAX, DISTINCTCOUNT of AVG) en alleen bruikbaar zijn binnen de visualisatie waarvoor ze zijn aangemaakt, werk je in een goed gegevensmodel bij voorkeur met expliciete metingen. Die bieden meer flexibiliteit, herbruikbaarheid en controle.

5 Expliciete metingen met DAX

Een expliciete meting schrijf je zelf in DAX, waardoor je precies bepaalt wat en hoe er wordt berekend. Anders dan bij impliciete metingen kun je een expliciete meting ook gebruiken als bouwsteen in andere metingen, wat zorgt voor meer flexibiliteit en herbruikbaarheid.

5.1 Functie COUNT

Opgave

Stel dat we het aantal klachten willen tonen in ons rapport. En we willen bovendien dat dit aantal wijzigt wanneer er een filter toegepast wordt, zoals verkoper of land.

DAX-functie

DAX-Functie Excel-functie Categorie Beschrijving

COUNT AANTAL

Syntaxis

COUNT(<column>)

Argument

Aggregatiefunctie Telt het aantal cellen in een bereik dat getallen bevat.

Beschrijving

Column De naam van de kolom die de te tellen waarden bevat.

Oplossing

1 Selecteer de tabel Klachten.

2 Klik in het lint op Home > New Measure.

Figuur 19: new measure

3 Een meting wordt op dezelfde manier opgebouwd als een berekende kolom. Geef de functie in.

Figuur 20: functie Count

4 Bevestig met Enter. De meting is zichtbaar in de lijst met velden (Data) van de tabel Klachten. (Let op het rekenmachinepictogram links van de veldnaam.)

Figuur 21: measure COUNT

Notitie

Een meting verschijnt niet als aparte kolom in je datamodel. Je kunt metingen toevoegen in zowel de Report view, de Table view als de DAX Query view. Standaard wordt een meting toegevoegd aan de tabel die je op dat moment geselecteerd hebt.

Het resultaat van een meting zie je pas wanneer je ze gebruikt in een visualisatie.

5 We gebruiken de meting in ons rapport:

a Klik in het linkerdeelvenster op het pictogram Report view om naar de rapportweergave te gaan.

b Vink in de tabel Klachten de measure Aantal klachten aan in de lijst met velden.

c Kies de visualisatie Card

22: visualisatie Card

23: visualisatie Card

6 Vink in de tabel Klachten het veld Jaar aan in de lijst met velden.

7 Kies de visualisatie Slicer

Figuur
Figuur

Figuur 24: visualisatie Slicer

Figuur 25: visualisatie Slicer

8 Sleep of geef het jaartal in de vakjes in. Het aantal klachten wijzigt.

5.2 Functie SUM

Opgave

Maak een nieuwe meting om de som van de omzet te berekenen.

DAX-functie

Syntaxis

SUM(<column>)

Column De kolom die de op te tellen getallen bevat.

Oplossing

1 Klik in het deelvenster Data op de drie puntjes (More options) naast de tabel Orders.

Figuur 26: More options

2 Klik op New Measure.

3 Geef de meting in.

Figuur 27: Meting omzet

4 Visualiseer het resultaat van de meting. Kies de visualisatie Card.

Figuur 28: Visualisatie Omzet

5.3 Functie CALCULATE

CALCULATE is een van de meest gebruikte DAX-functies. Met deze functie kun je een reeks filters toepassen op een meting die je vervolgens kunt gebruiken in de visualisaties in je rapport.

Notitie

Je kunt de functie CALCULATE vergelijken met de Excel-functies SOMMEN.ALS of AANTALLEN. ALS, maar dan veel krachtiger omdat de functie niet gebonden is aan één tabel.

DAX-functie

DAX-Functie

CALCULATE - Filterfunctie Maakt een berekening rekening houdend met de ingestelde filters.

Opgave

Gebruik de meting die je eerder in dit hoofdstuk hebt aangemaakt (Measure_omzet) om een nieuwe meting Omzet_Europa aan te maken.

Syntaxis

CALCULATE(<expression>;<filter1>;<filter2>…)

Argument

Expression

Filter1

Filter2

Oplossing

Beschrijving

Te evalueren expressie of bewerking (in wezen hetzelfde als een meting).

Het eerste criterium.

Het tweede criterium.

1 Klik in het deelvenster Data op de drie puntjes (More options) naast de tabel Orders

2 Klik op New Measure

3 Geef de meting in.

Figuur 29: omzet Europa

4 Stel dat je nog geen meting gemaakt hebt voor de totale omzet. Dan kun je de meting aanmaken als eerste argument van de functie CALCULATE. De functie ziet er dan uit als volgt:

Figuur 30: omzet Europa

5 Visualiseer het resultaat van de meting. Kies de visualisatie Card.

Figuur 31: omzet Europa

Je kunt ook meerdere filters ingeven. Bijvoorbeeld: je wilt de omzet van Europa van het jaar 2023.

1 Voeg in de tabel Orders een nieuwe berekende kolom toe:

2 Klik in het lint op Home > New Column

3 Geef in de formulebalk de DAX-functie in.

Figuur 32: jaar Besteldatum

4 Klik in het deelvenster Data op de drie puntjes (More options) naast de tabel Orders.

5 Geef in de formulebalk de meting in.

Figuur 33: meting CALCULATE meerdere filters

6 Visualiseer het resultaat van de meting. Kies de visualisatie Card.

Figuur 34: omzet Europa 2023

5.4 Functie SUMX

Opgave

Eerder in dit hoofdstuk hebben we een berekende kolom aan het gegevensmodel toegevoegd om de omzet per orderlijn te berekenen. Nadien hebben we een nieuwe, expliciete meting gemaakt om de som van de omzet te berekenen.

Met de functie SUMX kunnen we die twee stappen in één keer uitvoeren.

DAX-functie

DAX-Functie Excel-functie Categorie Beschrijving

SUMX - Aggregatiefunctie Berekent een waarde voor elke rij in een tabel en geeft het totaal als resultaat.

Syntaxis

SUMX(<table>; <expression>)

Argument

Beschrijving

Table De tabel die de rijen bevat waarop je de bewerking wilt uitvoeren.

Expression Te evalueren expressie of bewerking (in wezen hetzelfde als een meting

Het eerste argument van de SUMX-functie is een tabel, het tweede argument is een kolom die de getallen bevat die je wilt optellen.

Alleen de getallen in de kolom worden geteld. Lege cellen, logische waarden en tekst worden genegeerd.

Oplossing

1 Selecteer de eerder berekende measure Omzet

2 Wijzig de measure.

Figuur 35: SUMX

In principe kun je nu de eerder berekende kolommen (VP/pallet en Omzet) in de tabel Order verwijderen.

Notitie

Naast SUMX zijn er andere ‘X-functies’, zoals MINX, MAXX, AVERAGEX en COUNTX.

• Vermijd impliciete metingen. Expliciete metingen zijn veel krachtiger.

• Geef altijd de voorkeur aan metingen in plaats van berekende kolommen (waar mogelijk).

• Ken het gegevensmodel! Foute relaties kunnen leiden tot verkeerde inzichten.

5.5 Metingen ordenen

5.5.1 Meting verplaatsen van tabel

Een meting kun je eenvoudig verplaatsen door de meting te selecteren en in het lint te klikken op Measure tools > wijzig de Home Table:

Figuur 36: meting verplaatsen

Of door in de modelweergave de meting te verslepen in het deelvenster Data.

5.5.2 Aparte tabel aanmaken voor metingen

Metingen worden standaard weergegeven in de lijst met velden van de tabel die je geselecteerd hebt bij het aanmaken van de meting. Gezien de velden alfabetisch gesorteerd worden, staan metingen verspreid over de tabel heen (tussen de andere velden).

Je kunt dit oplossen door een aparte tabel aan te maken en de metingen te verzamelen in deze tabel:

1 Maak een nieuwe tabel aan:

a Klik in het lint op Home > Enter data.

b Wijzig de tabelnaam in: _Measures en klik op Load. Les op de underscore voor de naam! Op die manier komt de tabel bovenaan in de lijst met velden te staan.

Figuur 37: create table

2 Klik op het pictogram Model view om naar de modelweergave te gaan.

3 Sleep in het deelvenster Data de metingen (herkenbaar door het ‘rekenmachinepictogram’) naar de tabel _Measures. Tip: selecteer de metingen met SHIFT (aaneengesloten) en CONTROL (niet aaneengesloten).

Figuur 38: measures verplaatsen

4 Verwijder de kolom Column in de tabel met de measures:

Figuur 39: kolom verwijderen

5 Het rekenmachinepictogram kun je nu ook terugvinden voor de tabelnaam:

Figuur 40: rekenmachinepictogram

5.5.3 Mappen aanmaken

Het is mogelijk om velden in een tabel in te delen in mappen.

1 Klik op het pictogram Model view om naar de modelweergave te gaan.

2 Selecteer de metingen die je in een map wilt plaatsen.

3 Geef in het deelvenster Properties de mapnaam in bij Display folder

Figuur 41: map aanmaken

Notitie

Je kunt ook submappen maken met behulp van een backslash-teken. Met Measures_omzet_Europa maak je een map met de naam Measures_Omzet met daarin de map Europa.

4 Plaats de measures Omzet_Europa en Omzet_Europa_2023 in een submap Omzet_Europa

Figuur 42: submap aanmaken

6 Berekende tabellen met DAX-functies

We kunnen DAX ook gebruiken om nieuwe tabellen aan te maken in het model, calculated tables of berekende tabellen. Calculated tables zijn vergelijkbaar met calculated columns, alleen is het resultaat van de berekening een tabel in plaats van een extra kolom.

6.1 Functie ALL

De belangrijkste eigenschap van de functie ALL is dat die functie niet alleen een tabel als resultaat geeft, maar daarbij ook alle filters negeert. Dit betekent dat als je een visualisatie hebt die gefilterd is, ALL die filter(s) zal negeren bij de berekening. De functie ALL kan niet gebruikt worden als measure, wel als calculated table of genest in een measure.

ALL - Filterfunctie

Syntaxis

ALL([TableNameOrColumnName;[Column];… )

Geeft als resultaat alle rijen in een tabel, of alle waarden in een kolom, zonder rekening te houden met filters die eventueel zijn toegepast. Deze functie is nuttig voor het opheffen van filters en het maken van berekeningen op alle rijen in een tabel.

TableNameOrColumnName De tabel of kolom waarop je filters wilt opheffen.

Column De kolom waarop je filters wilt opheffen.

Voorbeeld

Bereken het procentueel aandeel in de omzet per klant.

Oplossing

1 Visualiseer de omzet per klant in een tabel:

Figuur 43: omzet per klant

2 Bereken de Totale omzet (zonder filters):

a Klik in het deelvenster Data op de drie puntjes (More options) naast de tabel _Measures

b Geef de meting in en visualiseer het resultaat in de tabel:

Figuur 44: Totale omzet

3 Bereken het procentueel aandeel in het totaal:

a Klik in het deelvenster Data op de drie puntjes (More options) naast de tabel _Measures.

b Geef de meting in, geef de meting de opmaak %:

Figuur 45: percentage omzet

c Visualiseer het resultaat in de tabel:

Figuur 46: visualisatie % omzet

6.2 Functie FILTER

Bereken het aantal bestellingen die geplaatst zijn in de laatste 30 dagen.

DAX-functie FILTER

DAX-functie Excel-functie Categorie Beschrijving

FILTER - Filterfunctie Retourneert een tabel die een subset van een andere tabel of expressie vertegenwoordigt.

Syntaxis

FILTER(<table>,<filter>)

Argument

Beschrijving

Table De tabel die moet worden gefilterd. De tabel kan ook een expressie zijn die resulteert in een tabel.

<filter> Een booleaanse expressie die moet worden geëvalueerd voor elke rij van de tabel. Bijvoorbeeld [Amount] > 0 of [Region] = "France".

Oplossing

1 Klik in het deelvenster Data op de drie puntjes (More options) naast de tabel _Measures

2 Geef de meting in en visualiseer het resultaat met de visualisatie Card:

Figuur 47: aantal bestellingen laatste 30 dagen

Wat doet deze functie?

Ze telt het aantal unieke bestellingen (Bestel_ID) die geplaatst zijn in de laatste 30 dagen op basis van de geselecteerde context (bijvoorbeeld een bepaalde klant of productcategorie):

• CALCULATE

Deze functie herberekent een measure (hier: DISTINCTCOUNT) in een gewijzigde context.

• DISTINCTCOUNT(Orders[Bestel_ID])

Dit telt het aantal unieke bestellingen.

• FILTER(Orders, ...)

Deze bepaalt welke rijen van de tabel Orders worden meegenomen in de telling.

• Orders[Besteldatum] >= MAX(Orders[Besteldatum]) – 30

Hier wordt enkel gekeken naar bestellingen waarvan de datum binnen de laatste 30 dagen ligt ten opzichte van de laatst beschikbare datum in de context.

Opmerking: MAX(Orders[Besteldatum]) gebruikt de filtercontext waarin de measure wordt berekend. Als je dat bijvoorbeeld op klantniveau bekijkt, wordt de maximale besteldatum binnen die klant gebruikt.

Notitie

FILTER() is hier noodzakelijk om een datumvergelijking te maken over een kolom, wat CALCULATE niet rechtstreeks kan doen zonder FILTER.

6.3 Functies SUMMARIZECOLUMNS en TOPN

In het volgende voorbeeld gebruiken we de functies SUMMARIZECOLUMNS en TOPN om te berekenen welk percentage van het totale aantal verkochte palletten afkomstig is van de top 5 producten (de producten met de hoogste verkoop in aantal palletten).

DAX-functie SUMMARIZE

DAX-functie

SUMMARIZECOLUMNS - Tabelfuncties Bouwt een samenvattende tabel op, automatisch rekening houdend met filters.

Syntaxis

SUMMARIZECOLUMNS( <groupBy_columnName> [, < groupBy_columnName >]…, [<filterTable>]…[, <name>, <expression>]…)

GroupBy_columnName

filterTable

Name

Expression

De kolom die je wilt groeperen, in het voorbeeld de kolom Product.

De brontabel die je wilt groeperen, in het voorbeeld de tabel Orders.

De naam van de ‘output’-kolom.

De berekening van de ‘output’-kolom.

6.3.1 Oplossing met tussenberekeningen

Maak een nieuwe tabel met het totale aantal verkochte palletten per productnummer.

1 Klik in het lint op Modeling > New table.

2 Voer de volgende functie in de formulebalk in en bevestig met Enter:

Figuur 48: tabel_palletten per product

DAX-functie TOPN

DAX-functie Excel-functie Categorie Beschrijving

TOPN - Tabelfuncties Geeft als resultaat de bovenste N rijen van de opgegeven tabel.

Syntaxis

TOPN(<n_value>;<table>;<orderBy_expression>;<order>;…)

Argument Beschrijving

N_value Aantal rijen, in het voorbeeld 5 rijen.

Table Brontabel, in het voorbeeld Product_som tickets.

OrderBy_expression De kolom die je wilt filteren, in het voorbeeld Aantal_tickets.

Order ASC of DESC, laagste of hoogste waarden, in het voorbeeld DESC.

Oplossing

1 Klik in het lint op Modeling > New table

2 Voer de volgende functie in de formulebalk in en bevestig met Enter:

Figuur 49: top 5 producten

Nu is het vrij eenvoudig om het aantal verkochte palletten van de top 5 producten te vergelijken met het totale aantal verkochte palletten.

In het volgende voorbeeld maken we gebruik van variabelen om de tussenberekeningen van het totale aantal verkochte palletten van de top 5 producten en het totale aantal verkochte palletten te berekenen. Dat maakt de functie leesbaarder.

3 Maak een nieuwe meting om het totale aantal verkochte palletten van de top 5 producten te vergelijken met het totale aantal verkochte palletten:

Figuur 50: top 5 producten

De top 5 producten is goed voor 18,82 % van de omzet.

Verberg eventueel tabellen die je enkel gebruikt voor berekening:

Figuur 51: tabellen verbergen

6.3.2 Oplossing zonder tussenberekeningen

Je kunt met DAX ook alle tussenstappen combineren in één enkele formule. De DAX-formule om het percentage van het totaal te berekenen ziet er dan als volgt uit:

Figuur 52: top 5 producten % totaal één formule

Waarom is dat beter?

– Performance: DAX-evaluatie is doorgaans sneller dan het berekenen en opslaan van fysieke tabellen. – Beheerbaarheid: minder tabellen = minder rommel in je model. – Flexibiliteit: je kunt filters en logica makkelijker aanpassen in één measure.

7 Tijdintelligentie

In nagenoeg elk rapport of dashboard speelt de tijd een rol. Want welke onderneming wil niet weten hoe de cijfers van dit jaar zich verhouden tot die van vorig jaar en waar er vooruitgang wordt geboekt?

Power BI bevat een groot aantal DAX-functies om analyses met datum en tijd te maken, de tijdintelligentiefuncties.

Om de tijdintelligentiefuncties te kunnen gebruiken, heb je een datumtabel nodig in je gegevensmodel.

Notitie

Er zijn heel wat verschillende manieren om een datumtabel aan te maken, in de Power Query editor of met DAX. In dit hoofdstuk maken we een datumtabel met DAX

7.1 Een datumtabel maken

7.1.1 Een datumtabel maken met de functie CALENDAR

Je kunt een datumtabel importeren in het gegevensmodel of zelf een datumtabel aanmaken. We maken zelf een datumtabel aan in Power BI Desktop met de DAX-functie CALENDAR.

Een aantal basisprincipes bij het maken van een datumtabel:

a Het datumbereik moet aaneengesloten zijn, er mag geen enkele dag ontbreken in de kolom met kalenderdagen. Stel dat je bijvoorbeeld het weekend niet opneemt in de datumtabel, zullen de functies niet werken.

b De datumtabel moet alle datums bevatten die elders in het gegevensmodel voorkomen.

c De datumtabel moet geïntegreerd worden in het gegevensmodel door relaties.

d Het model moet weten dat het een datumtabel is.

Notitie

De functie CALENDAR is een voorbeeld van een tabelfunctie.

DAX-functie CALENDAR

CALENDAR - Datum- en tijdfunctie

Syntaxis

CALENDAR(“start_date”;”end_date”)

Start_date De eerste datum van de kolom Date

End_date De laatste datum van de kolom Date

Notitie

Geeft als resultaat een tabel met één kolom met de naam Date die een aaneengesloten set data bevat. Het bereik van de data is vanaf de opgegeven begindatum tot en met de opgegeven einddatum, inclusief die twee data.

De notatie van de datum is afhankelijk van de configuratie van je computer. In ons geval dd/mm/yy. De datum moet tussen dubbele aanhalingstekens staan.

Oplossing

1 Klik op het pictogram Table view om naar de tabelweergave te gaan.

2 Klik in het lint op Table tools > New Table.

Figuur 53: nieuwe tabel

3 Vervang het woord Table door Datumdimensietabel

4 Geef in de formulebalk de functie in.

5 Bevestig met Enter.

6 Het resultaat is een kolom met alle data van 1/1/2023 tot en met 31/12/2024.

Figuur 54: functie CALENDAR

Maak de datumtabel dynamisch door de begindatum en einddatum te doen verwijzen naar de eerste datum in de tabel Orders en de laatste datum in de tabel Orders.

Figuur 55: functie CALENDAR

7 Wijzig de kolomnaam in Datumsleutel.

8 Wijzig het gegevenstype. Selecteer in het lint Column tools het gegevenstype Date

Figuur 56: gegevenstype

9 Wijzig de datumnotatie. Selecteer in het lint Column tools de notatie dd/mm/yyyy

Figuur 57: datumnotatie

We breiden de datumtabel uit met een aantal relevante extra kolommen (op basis van de datum in de eerste kolom). Het toevoegen van berekende kolommen is eerder in dit hoofdstuk uitgebreid aan bod gekomen, zodat we het hier niet in detail herhalen.

Jaar Jaar = YEAR(Datumdimensie[Datumsleutel])

Maand Maand = MONTH(Datumdimensie[Datumsleutel])

Maand_voluit Maand_voluit = FORMAT(Datumdimensie[Datumsleutel],"MMMM","nl-BE")

Dag Dag = DAY(Datumdimensie[Datumsleutel])

Week Week = WEEKNUM(Datumdimensie[Datumsleutel])

Weekdag Weekdag_voluit = FORMAT(Datumdimensie[Datumsleutel],"dddd","nl-BE")

Kwartaal Kwartaal = "Q"&ROUNDUP(MONTH(Datumdimensie[Datumsleutel])/3,0)

Kolomnaam Functie

Datumnotaties

Datumnotaties in Power BI zijn hoofdlettergevoelig en worden tussen dubbele aanhalingstekens geplaatst bij gebruik van de functie FORMAT:

Gewenste notatie Code

Dagen als 1-31 d

Dagen als 01-31 dd

Dagen als zo-za ddd

Dagen als zondag-zaterdag dddd

Jaren als 00-99 yy

Maanden als 1-12 M

Maanden als 01-12 MM

Maanden als jan-dec MMM

Maanden als januari-december MMMM

Jaren als 1900-9999 yyyy

7.1.2 Script om datumtabel te maken met DAX

Je kunt ook eenvoudig een online script gebruiken om de datumtabel te maken.

Voorbeeld:

1 Open het opgavebestand Script-for-Date-Dimension-DAX-RADACAD-1.txt 2

2 Selecteer het script met CTRL+A.

3 Kopieer het script naar het klembord met CTRL+C.

4 Ga naar het Power BI-rapport waarin je een datumtabel wilt toevoegen.

5 Klik in het lint op Home > New Table

6 Plak het script in de formulebalk en pas de variabele voor het startjaar en het eindjaar aan.

2 https://radacad.com/all-in-one-script-to-create-calendar-table-or-date-dimension-using-dax-in-power-bi.

Figuur 58: online script datumtabel

Het resultaat is een kant-en-klare dynamische datumtabel:

Figuur 59: datumtabel

Notitie

Voor de verdere uitwerking in het handboek gebruiken we de eerste methode (Een datumtabel maken met de functie CALENDAR).

De oplossing van de tweede methode (online script) kun je wel terugvinden als verborgen tabel in de map met de oplossingen (bestand H6_Gegevensanalyse_Tex-Mex.pbix).

7.2 De datumtabel linken aan het gegevensmodel

Nu je de datumtabel gemaakt hebt, moet je hem ook integreren in het gegevensmodel.

1 Klik op het pictogram Model om naar de modelweergave te gaan.

2 Sleep het veld Datumsleutel uit de tabel Datumdimensie naar het veld Besteldatum uit de tabel Orders.

Figuur 60: relatie datumtabel

7.3 Datumtabel markeren als datumtabel

Hoewel dit niet verplicht is, raden we aan om de datumtabel ook effectief te markeren als datumtabel.

1 Ga naar de Table View en selecteer de datumdimensietabel.

2 Klik in het lint op Table tools > Mark as date table.

3 Kies Datumsleutel als sleutelkolom.

Figuur 61: markeren als datumtabel

7.4

Opgave

Functies

DATESYTD | DATESMTD

Bereken hoeveel omzet er vanaf 1 januari tot en met de huidige datum is gerealiseerd.

DAX-functie

DAX-Functie Excel-functie

Categorie Beschrijving

DATESYTD - Tijdintelligentiefunctie Datums voor jaar-tot-datum.

DATESMTD

Notitie

Tijdintelligentiefunctie Datums voor maand-tot-datum.

We gebruiken de functies DATESYTD en DATESMTD in combinatie met de functie CALCULATE.

Syntaxis DATESYTD

DATESYTD(<dates> [,<year_end_date>])

Argument Beschrijving

Dates

Geeft als resultaat een tabel met een kolom met de datums van het jaar tot datum, in de huidige context.

Year_end_date [optioneel] De einddatum, de standaardwaarde is 31/12.

Syntaxis DATESMTD

DATESMTD(<dates>)

Argument Beschrijving

Dates

Geeft als resultaat een tabel die een kolom bevat met de datums van de maand tot datum, in de huidige context.

Oplossing

1 Klik in het deelvenster Data op de drie puntjes (More options) naast de tabel Measures_Omzet.

2 Klik op New Measure. Geef in de formulebalk de functie in.

Figuur 62: functie DATESYTD

3 Wijzig het gegevenstype:

e Klik in het lint op Measure tools.

f Kies in de groep Formatting de notatie € 123, 0 decimalen.

Figuur 63: notatie euro

4 Klik in het deelvenster Data op de drie puntjes (More options) naast de tabel _Measures.

5 Klik op New Measure. Geef in de formulebalk de functie in of kopieer en plak de functie Omzet_YTD en pas aan.

Figuur 64: functie DATESMTD

6 Wijzig het gegevenstype:

a Klik in het lint op Measure tools.

b Kies in de groep Formatting de notatie € 123, 0 decimalen.

7 Klik op het pictogram Report. Maak een nieuwe visualisatie om het resultaat te controleren:

a Kies de visualisatie Table

Figuur 65: visualisatie Table

b Vink de volgende velden aan in het deelvenster Data: Tabel Datumdimensie: Datumsleutel.

Tabel _Measures: Omzet, YTD_Omzet, MTD_Omzet.

c Wijzig de volgorde van de velden.

Figuur 66: volgorde waarden

d Controleer de sorteervolgorde van de datums (veld Datumsleutel). Klik indien nodig op het veld Datumsleutel in de visualisatie om te sorteren van oud naar nieuw.

e Klik op het pijltje naast YTD_Omzet en kies Conditional formatting > Databars.

Figuur 67: Data bars (gegevensbalken)

f Klik op OK in het dialoogvenster Data bars. g Doe hetzelfde voor het veld MTD_Omzet.

8 Klik op de Focus mode om in te zoomen op de visualisatie.

68: Focus mode

Figuur

7.5 Functie DATEADD

DAX-functie

DAX-Functie Excel-functie

DATEADD -

Notitie

Categorie Beschrijving

Tijdintelligentiefunctie

Geeft als resultaat een tabel met een kolom met datums, verschoven naar voren of naar achteren in de tijd met het opgegeven aantal intervallen vanaf de datums in de huidige context.

We gebruiken de functie DATEADD in combinatie met de functie CALCULATE. De functie CALCULATE voert de berekening uit en houdt rekening met de ingestelde filter, in dit geval de periode.

Syntaxis DATEADD

DATEADD(<dates>;<number_of_intervals>;<interval>)

Argument Beschrijving

Dates Een kolom met data (voorbeeld: datumdimensietabel, kolom datumsleutel).

Number_of_intervals

Interval

Een geheel getal dat het aantal intervallen specificeert dat moet worden opgeteld bij of afgetrokken van de data.

Het interval waarbinnen de data moeten worden verschoven. De waarde voor interval kan zijn: jaar, kwartaal, maand, dag.

Opgave

Vergelijk de omzet van een bepaalde maand met de omzet van de maand voordien.

Oplossing

1 Klik in het deelvenster Data op de drie puntjes (More options) naast de tabel _Meausers_Omzet

2 Klik op New Measure. Geef in de formulebalk de functie in.

Figuur 69: functie DATEADD

3 Wijzig het gegevenstype:

g Klik in het lint op Modeling.

h Kies het de groep Formatting de notatie € 123, 0 decimalen.

4 Bereken de procentuele stijging of daling ten opzichte van de vorige maand: Klik op New Measure Geef in de formulebalk de functie in.

Figuur 70: omzet vorige maand %

5 Wijzig het gegevenstype:

a Klik in het lint op Modeling.

b Kies in de groep Formatting de notatie Percentage.

6 Klik op het pictogram Report. Maak een nieuwe visualisatie om het resultaat te controleren:

a Kies de visualisatie Matrix.

b Vink de volgende velden aan in het deelvenster Data: Tabel Datumdimensie: Maand, Jaar, Omzet_vorige maand, Omzet_vorige maand %. Tabel Orders: Totale_Omzet_SUMX.

c Wijzig de volgorde van de velden.

Figuur 71: volgorde velden

7 Schakel de Column subtotals uit.

Figuur 72: Column subtotals uitschakelen

Figuur 73: resultaat omzet vorige maand

8 Gebruik conditional formatting om een stijging van de omzet de visualiseren:

a Klik op het pijltje naast Omzet_vorige maand % en kies Conditional formatting > Background

Figuur 74: conditional formatting

b Stel de voorwaardelijke opmaak in. Kies voor de positieve waarden een groene achtergrond (RGB 133-253-147).

Figuur 75: voorwaardelijke opmaak instellen

c De positieve waarden krijgen een groene achtergrondkleur.

Figuur 76: resultaat conditional formatting

8 DAX Query view

De DAX Query View is vooral bedoeld voor wie gevorderd is in DAX en diepgaandere analyses of debugging wil uitvoeren. Enkele typische toepassingen:

• Om DAX-code snel te testen zonder visualisaties te bouwen

Je kunt query’s schrijven zoals in SQL en meteen het resultaat van je DAX-logica bekijken, handig om tussenresultaten of filters te analyseren.

• Voor geavanceerde dataverkenning

Je kunt tabellen filteren, kolommen toevoegen, rijen groeperen, enzovoort zonder dat je eerst visuals of metingen moet bouwen.

• Voor het leren en begrijpen van tabelfuncties zoals SUMMARIZECOLUMNS, ADDCOLUMNS, FILTER, SELECTCOLUMNS, enzovoort.

• Om gegevens te valideren Denk aan het controleren van relaties, het onderzoeken van context of het nagaan welke waarden door filters zijn overgebleven.

In de DAX Query View (beschikbaar in Power BI Desktop vanaf versie 2023) moet je starten met een tabelfunctie, omdat een DAX-query altijd een tabel moet retourneren. Enkele veelgebruikte functies:

• EVALUATE – Verplicht als begin van een DAX-query, geeft aan dat je een tabel wilt retourneren.

• SUMMARIZE() – Groepeert data.

• ADDCOLUMNS() – Voegt berekende kolommen toe aan een bestaande tabel.

• SELECTCOLUMNS() – Selecteert specifieke kolommen.

• FILTER() – Retourneert een gefilterde versie van een tabel.

• VALUES() – Geeft unieke waarden van een kolom als tabel.

Notitie

Omdat de DAX Query View vooral nuttig is voor geavanceerde data-analyse en debugging werk ik die in dit handboek niet verder uit.

Figuur 77: DAX Query view

Hoofdstuk 7

Gegevens visualiseren met Power BI Desktop

In dit hoofdstuk gaan we dieper in op de laatste stap: het maken van rapporten of het presenteren van gegevens met Power BI Desktop.

Gegevens visualiseren is de vijfde stap in de data-ijsberg:

1 Ontwerp van Power BI rapporten: tips en aandachtspunten

De manier waarop informatie wordt getoond, bepaalt voor een groot deel hoe eenvoudig of juist lastig het is om de informatie te begrijpen. Het ontwerp van je rapporten is dan ook heel belangrijk.

Ontwerp Power BI-rapport versus ontwerp website

Je kunt het ontwerpen van een Power BI-rapport vergelijken met het ontwerpen van een website:

• Net zoals bij het ontwerpen van een website, is het bij het ontwerpen van een Power BI-rapport belangrijk om rekening te houden met de gebruikerservaring. Je wilt dat gebruikers intuïtief door het rapport kunnen navigeren, de informatie gemakkelijk kunnen vinden en begrijpen, en dat het rapport visueel aantrekkelijk is.

• Zowel Power BI-rapporten als websites kunnen interactieve elementen bevatten. Met Power BI kun je bijvoorbeeld filters, slicers en drill-downs toevoegen, net zoals je interactieve knoppen en menu’s op een website zou plaatsen. Die interactiviteit helpt gebruikers om de gegevens te verkennen en te analyseren op een manier die voor hen zinvol is.

• Het visuele ontwerp is essentieel voor zowel websites als Power BI-rapporten. Dat omvat zaken als kleurenschema’s, typografie, lay-out en grafische elementen. Door een consistent

en aantrekkelijk visueel ontwerp te gebruiken, wordt de gebruikerservaring verbeterd en worden de gegevens gemakkelijker te begrijpen.

• Net zoals bij het ontwerpen van een website is het bij het ontwerpen van een Power BIrapport belangrijk om de gegevens goed te structureren en te organiseren. Dat omvat het selecteren van de juiste visualisaties voor de gegevens, het organiseren van pagina’s, en het creëren van een logische flow door het rapport.

Voordat je begint

Een rapport maken begint voor je met de eerste grafiek aan de slag gaat. Met welke data werk je? Voor wie is het rapport bedoeld? Welke beslissingen moet de gebruiker nemen op basis van dit rapport?

De antwoorden op deze vragen bepalen het ontwerp van je rapport. Het is heel verleidelijk om mooie, kleurrijke grafieken toe te voegen. Maar als die geen antwoord geven op de vragen is het rapport uiteindelijk niet nuttig.

Je moet je continu de vraag stellen of het rapport de informatie oplevert die nodig is.

Basisprincipes

Op een pagina in een rapport is de ruimte beperkt; probeer niet alle informatie op één pagina te ‘proppen’, maar maak meerdere pagina’s per rapport

De natuurlijke kijk- en leesrichting is van links naar rechts. Plaats dan ook de belangrijkste informatie linksboven op je pagina.

De uitlijning van de objecten moet ervoor zorgen dat de lezer als het ware automatisch door het rapport navigeert.

Verwijder alle toeters en bellen die niet bijdragen tot het begrijpelijk maken van het rapport.

De ultieme test voor je rapport is of iemand zonder voorkennis en zonder hulp van anderen het rapport direct begrijpt. Als lezers je rapport bekijken, moeten hun ogen direct trekken naar het element dat je als eerste wilt laten zien. Vervolgens zullen ze er van links naar rechts en van onderen naar boven doorgaan.

Voor veel mensen is het verleidelijk om zich uit te leven met kleuren. Te veel kleuren leiden echter af, gebruik zo veel mogelijk dezelfde kleuren en wijk alleen af met een goede reden.

Designprincipes

Kies het juiste diagram. Je moet niet alleen nadenken voor het rapport als geheel (cfr. ‘Voordat je begint’ hierboven), je moet ook nadenken voor de grafieken, tabellen en kaarten die je wilt tonen.

Probeer de verleiding te weerstaan om indruk te willen maken met alle mogelijkheden van Power BI. Een eenvoudig kolom- of staafdiagram is misschien wel saai, maar vaak de meest duidelijke manier om informatie voor te stellen.

Pas titels en labels aan en sorteer!

Voorbeeld

In de eerste grafiek lijkt er een enorm verschil te zijn in omzet tussen de verschillende maanden. In de tweede grafiek is het verschil veel genuanceerder.

Door het nulpunt van de horizontale as aan te passen, krijg je een compleet ander resultaat.

Figuur 1: verstoorde weergave van de werkelijkheid

Notitie

Figuur 2: realistische weergave van de werkelijkheid

‘You have lies, big lies and … statistics’. Ook al kies je het juiste diagram, toch kan de informatie verkeerd geïnterpreteerd worden.

Er is een verschil tussen correlatie en causaliteit

Een correlatie betekent dat er een verband is tussen twee factoren, maar het hoeft niet te betekenen dat er een oorzaak-gevolg relatie is (causaal verband).

Voorbeeld

“Als de verkoop van ijsjes in Australië stijgt, stijgt ook het aantal haaienbeten.” De data toont een correlatie tussen het aantal ijsjes dat verkocht wordt en het aantal haaienbeten. Maar dit betekent nog niet dat de stijgende verkoop van ijsjes de oorzaak is van het stijgende aantal haaienbeten. Als we echter met een bredere blik naar de data kijken zien we bijvoorbeeld dat het aantal haaienbeten ook stijgt als de temperatuur stijgt, en ook de verkoop van de ijsjes stijgt omdat de temperatuur stijgt, en als de temperatuur stijgt gaan we ook meer zwemmen…

We kunnen concluderen dat de drijvende factor achter zowel de ijsconsumptie als de haaienbeten de temperatuur is. Er is een gedeelde drijvende factor, die zorgt voor een correlatie, zónder dat er sprake is van causaliteit.

Notitie

causaliteit

correlatie

causaliteit

Causaliteit en correlatie zijn twee begrippen binnen de statistiek die door de media vaak door elkaar worden gehaald, zij het bewust of onbewust. In wetenschappelijke publicaties worden vaak correlaties beschreven, die vervolgens in de media worden neergezet als causale verbanden om de aandacht van de lezer te trekken.

1.1 Report view of rapportweergave

In de rapportweergave kun je een willekeurig aantal rapportpagina’s met visualisaties maken.

1 Open het rapport H7_Gegevensanalyse_Tex-Mex.

2 Klik in het linkerdeelvenster op het pictogram Report view (Rapportweergave).

Figuur 3: report view of rapportweergave

a Het lint in de rapportweergave bestaat uit zeven tabbladen: File (Bestand), Home (Start), Insert (Invoegen), Modeling (Model maken), View (Weergave), Optimize (Optimaliseren) en Help.

b In het linkerdeelvenster kun je schakelen tussen Report view (Rapportweergave), Table view (Tabelweergave) en Model view (Modelweergave) door de pictogrammen te selecteren.

c Het middelste deelvenster is een leeg canvas.

d In het deelvenster Data zie je de lijst met velden. Vink een veld aan om een nieuw visueel element op het canvas toe te voegen.

e In het deelvenster Visualizations kun je een type visualisatie selecteren en bewerken.

f In het deelvenster Filters kun je filters instellen op een visualisatie, een pagina of op alle pagina’s van het rapport.

1.2 Rapportthema’s

Het is belangrijk dat de rapporten in de organisatie één look hebben, bij voorkeur in de huisstijl van de organisatie.

Met rapportthema’s in Power BI Desktop kun je opmaakopties die worden vermeld in de sectie Format van het deelvenster Visualizations, aanpassen en standaardiseren. Dat doe je door aanpassingen rechtstreeks door te voeren in Power BI Desktop of via een JSON-rapport-themabestand (introduction-to-report-theme-json-files, 2020).

Om een rapportthema rechtstreeks in Power BI Desktop aan te passen volg je de volgende stappen.

1 Open het bestand H7_Gegevensanalyse_Tex-Mex_opgave.pbix in Power BI Desktop

1 Bewaar het bestand onder de naam H7_Gegevensanalyse_Tex-Mex.pbix.

2 Klik in het lint op View > Themes > Customize current theme

Figuur 4: thema aanpassen

3 Er verschijnt een dialoogvenster waarin je allerlei wijzigingen in het huidige thema kunt aanbrengen en vervolgens je instellingen als een nieuw thema kunt opslaan:

a Name and colors (Naam en kleuren): themakleuren, gevoelskleuren (worden gebruikt in KPI-visuals en watervalgrafieken om positieve, negatieve of neutrale resultaten aan te geven), afwijkende kleuren (voorwaardelijke opmaak) en structurele kleuren (geavanceerd).

b Text (Tekst): lettertype, lettergrootte en -kleur waarmee de standaardwaarden voor de primaire tekstklasse worden ingesteld voor labels, titels, kaarten en KPI's, en tabbladkoppen.

c Visuals: achtergrond, rand, koptekst en knopinfo.

d Page (Pagina): het gebied achter de rapportpagina en de achtergrond van de rapportpagina.

e Filter pane (Filtervenster): achtergrond, doorzichtigheid, kleur van lettertype en pictogram en tekengrootte van het filtervenster, filterkaarten.

Hoofdstuk 7 Gegevens visualiseren met Power

Figuur 5: dialoogvenster Customize theme

Voorbeeld

We passen de huisstijl van het bedrijf Tex-Mex bv toe op het rapport:

Logo:

Kleuren:

Rood Grijs Lichtgroen Geel Groen
TORTILLA CHIPS

Lettertype: Tahoma, 10 punten

1 Open het dialoogvenster Customize Themes

2 Categorie Name and colors:

a Wijzig de themakleuren color 1, color 2, color 3, color 4 en color 5

b Wijzig ook de gevoelskleuren (Sentiment colors) naar het rood, groen en geel van de huisstijl.

Figuur 6: themakleuren aanpassen

3 Categorie Text:

a Pas het lettertype aan: Tahoma, 10 ptn.

b Klik op Title en wijzig de kleur van de titel naar de grijze kleur van de huisstijl (#6c6c6c).

c Klik op Cards and KPI’s: Font size: 25 pt, Font color #6c6c6c (grijs huisstijl).

4 Categorie Page:

a Page background: RGB 246-248-252.

b Transparancy: 0 %.

Figuur 7: pagina achtergrond

5 Klik om Apply om de wijzigingen toe te passen.

6 Bewaar het rapportthema voor verder gebruik:

a Klik in het lint View op Themes > Save current theme > Thema_Tex-Mex.json.

Figuur 8: save current theme

Notitie

Een JSON-bestand is een bestand dat eenvoudige datastructuren en objecten opslaat. Het bevat gegevens in een standaard data-uitwisselingsformaat dat tekstgebaseerd en menselijk leesbaar is. JSON-bestanden waren oorspronkelijk gebaseerd op een subset van JavaScript, maar JSON wordt beschouwd als een totaal onafhankelijk formaat, ondersteund door veel verschillende programmerings-API's (json, 2020).

1.3

JSON-rapportthemabestand importeren

Om het Thema_Tex-Mex.json te gebruiken in andere rapporten volg je deze stappen:

1 Klik in het lint View op Themes > Browse for themes.

Figuur 9: browse for themes

2 Navigeer naar het bestand Thema_Tex-Mex.json (zie ook opgavebestanden).

3 Klik op Openen

Figuur 10: thema importeren

1.4 Elementen toevoegen aan het rapport

Via het menu Insert > groep Elements kun je elementen toevoegen aan een rapportpagina:

• Tekstvak.

• Knoppen.

• Vormen.

• Afbeelding.

Figuur 11: elementen toevoegen

1.4.1 Vorm toevoegen

1 Klik in het lint op Insert > Shapes > Rectangle om een rechthoek toe te voegen.

2 Maak de vorm op:

a Klik in het tabblad Shape op Style. Geef de vorm de kleur White, Border off

b Klik in het tabblad General op Properties. Pas de afmetingen aan (Size):

hoogte: 720

breedte: 220

12: vorm opmaken

3 Voeg een extra vorm toe. Klik in het lint op Insert > Shapes > Rectangle om nog een rechthoek toe te voegen.

4 Maak de vorm op:

a Selecteer de eerste vorm.

b Klik in het lint Home op Format painter

c Selecteer de tweede vorm. De opmaak wordt gekopieerd.

13: opmaak kopiëren

d Klik in het tabblad General op Properties. Pas de afmetingen aan (Size): hoogte: 125 breedte: 800

5 Positioneer de elementen op het canvas.

Figuur
Figuur

Figuur 14: elementen positioneren op het canvas.

1.4.2 Logo invoegen

1 Klik in het lint op Insert > Image om het logo (opgavebestanden Logo_Tex-Mex-transparant.png) in te voegen.

2 Sleep aan de hoeken om het logo te verkleinen.

3 Positioneer het logo op het canvas.

15: logo invoegen

Figuur

1.4.3 Knoppen toevoegen

Voorbeeld

Door gebruik te maken van knoppen in je rapport kun je een betere gebruikerservaring bieden.

Een rapport heeft al snel meerdere pagina’s. Het is mogelijk om daartussen te navigeren via de standaard tabbladen in Power BI, maar het is ook mogelijk om paginanavigatie toe te voegen op de rapportpagina. Op die manier is het mogelijk om de knoppen zelf vorm te geven en is de navigatie opgenomen in het rapport zelf, wat een betere gebruikservaring is.

1 Maak drie rapportpagina’s:

a Omzetanalyse

b Klantenanalyse

c Klachtenanalyse

Figuur 16: rapportpagina’s

2 Klik in het lint op Insert > Buttons > Navigator > Page navigator:

Figuur 17: Page navigator

3 Maak de paginanavigator op. Klik in het deelvenster Format navigator op Style:

a Apply setting to state Default:

Text: font color black, Tahoma 10

Fill: Off

Border: Off

b Apply setting to state Hover and Press:

Text: font color black, Tahoma 10, underline

Fill: Off

Border: Off

c Apply setting to state Selected:

Text: font color Theme color 1 (red), Tahoma 10, underline

Fill: Off

Border: Off

Figuur 18: state Page Navigator

Figuur 19: opmaak paginanavigator

4 Kopieer de elementen op alle rapportpagina’s:

a Selecteer alle elementen met CTRL+A.

b Kopieer de elementen met CTRL+C.

c Plak de elementen op alle rapportpagina’s met CTRL+V.

Notitie

Paginanavigatie is dynamisch. Nieuwe pagina’s worden automatisch aan de paginanavigatie toegevoegd.

1.5 Rapport template

Om de uniformiteit van de rapporten in de organisatie te garanderen is het zinvol om een template aan te maken met alle elementen die op ieder rapport terugkeren (thema, logo, titel, buttons, vormen, enz.).

1 Klik in het lint op File > Save as > Power BI template

2 Geef het bestand de naam Template_rapport_Tex-Mex.pbit

3 Open de het bestand Template_rapport_Tex-Mex.pbit om een nieuw rapport te bouwen op basis van de template.

Notitie

In dit hoofdstuk werken we verder in de oplossing H7_Gegevensanalyse_Tex-Mex.pbix. De rapporttemplate gebruiken we in de oefeningen in het hoofdstuk ‘Businesscases’.

2 Typen visualisaties

Met visualisaties of visuals kun je data vertalen naar inzichten Er zijn veel verschillende typen visualisaties rechtstreeks beschikbaar vanuit het deelvenster Visualisaties in Power BI:

Figuur 20: soorten visualisaties

Het kolom-, lijn- en cirkeldiagram zijn bekend. Maar andere visualisaties geven vaak een beter inzicht in de gegevens. We raden dan ook aan om te experimenteren met de verschillende visualisatietypen. Naast de ingebouwde visualisaties is het ook mogelijk extra visualisaties te importeren:

Figuur 21: get more visuals

Een handig hulpmiddel bij het kiezen van de juiste visualisatie is de Visual Reference van SQLBI: https://www.sqlbi.com/ref/power-bi-visuals-reference/

Er zijn talrijke opmaakopties beschikbaar. Boven de soorten visualisaties bevinden zich drie pictogrammen: het pictogram Add data to your visual (een stapel balken), het pictogram Format your visual (grafiek met verfborstel) en, afhankelijk van de gekozen visualisatie, het pictogram Add further analyses to your visual (een vergrootglas).

Figuur 22: opmaakopties

Je kunt voor elke visualisatie allerlei elementen aanpassen. Welke opties er beschikbaar zijn, is afhankelijk van de visualisatie die je geselecteerd hebt.

De beste manier om te leren hoe je de opmaakopties kunt gebruiken, is door ze uit te proberen. Je kunt de wijzigingen altijd ongedaan maken of de standaardinstelling herstellen. Er bestaat al een groot aantal opties en er worden steeds nieuwe toegevoegd. In de verschillende voorbeelden die gebruikt worden in dit hoofdstuk komen al heel wat opties aan bod.

2.1 Card | Kaart: één getal

Soms is één getal het belangrijkste wat je wilt tonen op je Power BI-dashboard of -rapport, bijvoorbeeld de totale omzet. Dit type visualisatie wordt een card of kaart genoemd.

Figuur 23: kerncijfers visualiseren

1 Kies de visualisatie Card in het deelvenster Visualizations.

Figuur 24: visualisatie card

2 Selecteer de meting Aantal klanten in de tabel _Measures.

3 Maak de visualisatie op. Klik in het deelvenster Visualizations op Format your visual:

a Tabblad Visual > Category label: Off

b Tabblad General > Title:

Text: KLANTEN

Font: 10

Text color: Theme color 2 (grijs) Horizontal alignment Center

Figuur 25: Title

4 Voeg de afbeelding Icon_klanten.png in:

a Klik in het lint Insert op Image

b Navigeer naar het bestand Icon_klanten_png (map Icons).

c Selecteer het bestand en klik op Open.

d Pas de grootte van de afbeelding aan (50 × 70).

Figuur 26: opmaak visualisatie aantal klanten

5 Voeg op dezelfde manier de metingen Aantal orders (afbeelding: Icon_orders.png) en Totale omzet (afbeelding: Icon_omzet.png) toe.

6 Positioneer alle objecten in de witte rechthoek en lijn uit:

a Groepeer telkens de visualisatie en de afbeelding: selecteer de visualisatie klanten en het bijhorende icoon. Klik in het lint Format op Group > Group.

b Selecteer de gegroepeerde elementen en klik in het lint op Format > Align > Distribute horizontally

Figuur 27: objecten positioneren en uitlijnen

2.2 Slicer

Slicers worden gebruikt om het rapport te filteren.

Voorbeeld

Je wilt de rapportpagina Omzetanalyse filteren op kalenderjaar:

1 Klik op een lege plaats in het canvas van de rapportweergave.

2 Selecteer de visualisatie Slicer in het deelvenster Visualizations

Figuur 28: visualisatie

3 Selecteer het veld Jaar in de tabel Datumdimensie

4 Klik in het deelvenster Visualizations op Format your visual. Kies de optie Tile.

Figuur 29: Style slicer

5 Maak de tegels op:

a Sleep aan de hoeken om de tegels groter of kleiner te maken. Afhankelijk van het gekozen formaat worden de tegels horizontaal of verticaal gerangschikt.

b In het tabblad Visual kun je het lettertype, de corpsgrootte, de achtergrondkleur en de randen aanpassen naar keuze:

Slicer header: Off

Values: Font color White, Border Off, Background Theme color 1 (red)

30: slicer

2.3 Line chart | Lijndiagram

Lijndiagrammen zijn ideaal om de ontwikkeling van data in de loop van de tijd weer te geven. Met een lijngrafiek kunnen we gemakkelijk pieken, dalen en patronen herkennen.

Voorbeeld

Visualiseer de evolutie van de omzet van 2023 en 2024.

31: evolutie omzet

1 Selecteer de rapportpagina Omzetanalyse.

2 Selecteer de visualisatie Line Chart.

Figuur
Figuur

Figuur 32: visualisatie Line chart

3 Selecteer de velden in het deelvenster Data:

a Tabel Datumdimensie: Jaar, Maand.

b Tabel Measures: Omzet.

4 Sleep het veld Maand naar het gebied X-axis, sleep het veld Omzet naar het gebied Y-axis en sleep het veld Jaar naar het gebied Legend.

Figuur 33: grafiekgebieden line chart

5 Pas de grootte van de visualisatie aan: 235 × 650 en positioneer de visualisatie op het canvas.

6 Pas de titel en de subtitel aan:

a Klik in het deelvenster Visualizations op Format your visual

b Selecteer het tabblad General.

c Klik op het pijltje naast Title en pas de titel (EVOLUTIE OMZET, 12 pt) en de subtitel (PER JAAR, 8 pt) aan.

34: evolutie omzet

Figuur 35: titel en subtitel aanpassen

Figuur

7 Pas de X-as aan:

a Selecteer het tabblad Visual, X-axis.

b Type: Categorical

c Wijzig de sortering van de X-as in de visualisatie. Klik op de drie puntjes in de rechterbovenhoek van de visualisatie (More options). Sorteer de as oplopend op Maand.

Figuur 36: X-as aanpassen

d Voeg een trendlijn toe om de doelstelling van 2 500 000 € omzet per maand te visualiseren: Klik in het deelvenster Visualizations op Add further analysis to your visual Voeg een constante lijn toe.

Vul de waarde in: 2500000. Schakel het gegevenslabel in.

Figuur 37: constante lijn

Notitie

Alternatieven voor de lijndiagram zijn de Area chart of de Ribbon chart

2.4 Gauge | Meterdiagrammen

Met een gauge of meterdiagram kun je snel de voortgang naar een doelstelling/KPI tonen.

Voorbeeld

In 2024 willen we een omzetstijging van 15 procent realiseren. We gebruiken een meterdiagram om de status te tonen. In een meterdiagram (Gauge) kunnen we de te meten waarde, de minimumwaarde, de maximumwaarde en de doelwaarde instellen.

1 Selecteer het tabblad Omzetanalyse

2 Kies de visualisatie Gauge of Meter

38: visualisatie Gauge

3 Selecteer de meting Omzet in de lijst met velden (tabel _Measures).

4 Filter de visualisatie op kalenderjaar 2024:

a Selecteer de visualisatie.

b Open het deelvenster Filters

c Sleep het veld Jaar (tabel Datumdimensie) naar Filters on this visual

d Kies het filtertype Basic filtering

e Selecteer 2024.

5 Standaard ligt de waarde in het midden van het meterdiagram. De minimumwaarde is 0 en de maximumwaarde is het dubbele van de waarde.

Figuur 39: meting Omzet gefilterd op 2024

6 Sleep de meting Omzet_max value naar het gebied Maximum value.

Figuur

Figuur 40: maximumwaarde

7 De minimumwaarde, maximumwaarde en doelwaarde kun je ook manueel invoeren.

a Klik in het deelvenster Visualisations op Format your visual. b Geef de doelwaarde 10 000 000 in bij Target Value (Gauge axis).

Notitie

Je kunt de Target value dynamisch maken door een meting toe te voegen die bijvoorbeeld berekent wat de Target value moet zijn per maand. In dit geval klik je op fx om de meting te selecteren.

Figuur 41: target value

8 Wijzig de titel (Doelstelling 2024) en de subtitel (Omzet vorig jaar + 15 %)

Het resultaat ziet er als volgt uit:

Figuur 42: Target of doelstelling

2.5 Clustered column chart | Gegroepeerd kolomdiagram

Een van de meest gebruikte visualisaties is nog altijd het kolomdiagram. Een kolomdiagram is ideaal om een bepaalde waarde over verschillende categorieën weer te geven.

Voorbeeld

Visualiseer de omzet per verkoper per jaar (procentueel).

1 Selecteer het tabblad Omzetanalyse

2 Kies de visualisatie Clustered Column Chart

Figuur 43: visualisatie Clustered column chart

3 Selecteer de velden in het deelvenster Data:

a Tabel Datumdimensie: Jaar, Maand.

b Tabel Measures: Omzet.

c Tabel Orders: Verkoper.

d Sleep de velden naar de gebieden.

Figuur 44: grafiekgebieden clustered column chart

4 Toon de waarde Omzet als percentage van het totaal.

a Klik op het pijltje naast Omzet en kies de optie Show value as Percent of grand total

Figuur 45: percentage van het totaal

5 Pas de grootte van de visualisatie aan: klik op het tabblad General > Properties, hoogte 235, breedte 650.

6 Kopieer de opmaak van de visualisatie Evolutie omzet met de verfborstel.

7 Pas de titel (OMZET PER VERKOPER) en subtitel (PER JAAR) aan.

8 Positioneer de visualisatie op het canvas.

Figuur 46: visualisatie positioneren

2.6 KPI

Een key performance indicator (KPI) is een meetbare waarde die laat zien hoe effectief je presteert ten opzichte van je doelen. Je kunt KPI’s zien als de scorekaart van je bedrijf: het is een manier om te meten of je al dan niet je doelstellingen bereikt.

De visualisatie KPI bestaat uit drie elementen:

1 Value (waarde): de maatstaf die we willen evalueren, bijvoorbeeld de omzet.

2 Trend axis (trendas): hoe evolueert de waarde in een bepaalde periode, gaat het omhoog, omlaag...?

3 Target (doelstelling): wat is de huidige status van de waarde ten opzichte van de doelstelling.

Voorbeeld

Evalueer de omzet per maand in 2024 ten opzichte van de doelstelling (1 000 000 € omzet per maand).

1 Selecteer het tabblad Omzetanalyse

2 Kies de visualisatie KPI.

Figuur 47: visualisatie KPI

3 Selecteer de meting Omzet in de lijst met velden (tabel _Measures).

4 Filter de visualisatie op kalenderjaar 2024:

a Selecteer de visualisatie.

b Open het deelvenster Filters

c Sleep het veld Jaar (tabel Datumdimensie) naar Filters on this visual

d Kies het filtertype Basic filtering.

e Selecteer 2024.

5 Sleep het veld Maand (tabel Datumdimensie) naar het gebied Trend axis. Er verschijnt een Area chart die de omzet per maand toont in 2024.

Figuur 48: trend axis

6 Vink in het deelvenster Format your visual de optie Date aan. De waarde die je ziet (1,3 M) is de omzet van de laatste maand (6).

Figuur 49: optie Date

7 Sleep de meting Doelstelling_omzet naar het gebied.

Figuur 50: grafiekgebieden KPI

8 Het resultaat is een Area chart die de evolutie toont van de omzet per maand, de omzet van de laatste maand (6) wordt geëvalueerd ten opzichte van de doelstelling (1 000 000 €). In juni 2024 is er 30,32 % meer omzet gerealiseerd dan de doelstelling.

Notitie

Automatisch wijzigt de kleur van de visualisatie (groen). Als de doelstelling niet behaald wordt zal de kleur rood zijn. Dat wordt bepaald door de sentimentkleuren. De kleuren kun je aanpassen in het deelvenster Format your visual > Trend axis.

9 Wijzig de titel (KPI OMZET PER MAAND 2024) en subtitel (DOELSTELLING 1.000.000 € PER MAAND).

51: KPI omzet per maand

10 Pas de grootte van de visualisatie (235 × 325) aan en positioneer op het canvas.

Figuur

Figuur 52: rapportpagina omzetanalyse gefilterd op kalenderjaar 2024

2.7 Clustered bar chart | Gegroepeerd staafdiagram

Een alternatief voor het kolomdiagram is de Clustered bar chart of Gegroepeerd staafdiagram

Voorbeeld

Visualiseer de top 5 klanten (omzet).

1 Ga naar het tabblad Klantenanalyse

2 Kopieer de slicer en de kerncijfers Klanten en Omzet van de rapportpagina Omzetanalyse naar de rapportpagina Klantenanalyse.

3 Klik op een lege plaats in het canvas.

4 Selecteer de visualisatie Clustered bar chart

5 Selecteer de velden in het deelvenster Data:

a Tabel _Measures: Omzet

b Tabel Klanten: Bedrijfsnaam

6 Klik op Format your visual > zet de Data labels aan:

Figuur 53: Data labels on

7 Filter de lijst op de 5 klanten met de hoogste omzet:

a Open het filterdeelvenster.

b Open de filter op Bedrijfsnaam

Filter type: Top N.

Show items: Top 5.

By value: sleep het veld Omzet naar Add data fields here

c Klik op Apply filter. Het resultaat is een gegroepeerde staafdiagram met de top 5 van klanten.

Figuur 54: filter top 5 klanten

8 Wijzig de titel in TOP 5 KLANTEN

9 Pas de grootte aan (235 × 500) en positioneer op het canvas.

Figuur 55: Top 5 klanten

2.8 Table | Tabel

Met een tabel kun je gedetailleerde gegevens en exacte waarden bekijken en vergelijken in plaats van visuele weergaven.

Voorbeeld

Toon de orderdetails in een tabel.

Figuur 56: orderdetails

1 Ga naar het tabblad Klantenanalyse.

2 Klik op een lege plaats in het canvas.

3 Selecteer de visualisatie Table

Figuur 57: visualisatie tabel

4 Selecteer de velden in het deelvenster Data:

a Tabel _Measures: Aantal_palletten, Omzet

b Tabel Klanten: Bedrijfsnaam, Landcode

c Tabel Orders: Besteldatum, Bestelnr, Verkoper.

5 Pas de volgorde van de kolommen aan.

Figuur 58: volgorde kolommen

6 Maak de tabel op. Klik in het deelvenster Visualizations op Format your visual:

a Style presets: Style None

b Grid: Gridlines Off

c Grid > Options: Row padding 5.

d Column headers: Background color White, 10 % darker.

7 Pas de grootte van de tabel aan (235 × 1010) en positioneer op het canvas.

Figuur 59: tabel orders

2.9 Map | Kaart

Power BI biedt integratie met Bing-kaarten om standaard kaartcoördinaten toe te wijzen (een proces dat geocodering wordt genoemd), zodat je zelf kaarten kunt maken. In beide gevallen worden algoritmen gebruikt voor het identificeren van de juiste locatie, maar soms gaat het om een schatting.

Notitie

Om de visualisatie Map en Filled map te gebruiken moet de optie Use Map and Filled Map visuals aangevinkt zijn (File > Options and Settings > Options). Start Power BI opnieuw op om de optie te activeren.

Voorbeeld

Toon de omzet per land op een kaart:

1 Ga naar de rapportpagina Klantenanalyse.

2 Klik op een lege plaats in het canvas. Kies de visualisatie Map.

Figuur 60: visualisatie Map

3 Vink de volgende velden aan:

a Tabel Klanten: Landcode.

b Tabel Measures: Omzet.

4 Sleep het veld landcode naar Location:

Figuur 61: location

Hoofdstuk 7 Gegevens visualiseren met Power

5 Wijzig de titel in Omzet per land

6 Pas de groote aan (235 × 500) en positioneer op het canvas.

Figuur 62: omzet per land

Notitie

Let op! Soms wordt de locatie toch verkeerd begrepen in Bing-kaarten. Sommige locaties zijn dubbel omdat de locatie voorkomt in meerdere landen of regio’s. Er is bijvoorbeeld een Southampton in Engeland, Pennsylvania en New York. Je doet er dan ook goed aan om een extra kolom toe te voegen aan de dataset, bijvoorbeeld met de staat of provincie.

2.10 AI-visualisaties: TRUST BUT VERIFY

De visualisaties Key influencers (Belangrijkste beïnvloeders) en Decomposition tree (Uitgevouwen structuur) zijn twee voorbeelden van AI-visualisaties in Power BI Desktop. Je kunt een AI-visualisatie herkennen aan de lamp.

Figuur 63: AI-visualisatie (lamp)

2.11 Key influencers | Belangrijkste beïnvloeders (power-bi-visualization-influencers, 2020)

Met de visualisatie Key influencers of Belangrijke beïnvloeders kun je inzicht krijgen in de factoren die een belangrijke metrische waarde beïnvloeden. Stel bijvoorbeeld dat je wilt achterhalen wat invloed heeft op de daling van de omzet. Eén factor kan het land zijn, een andere de smaak of de verkoper.

Wanneer is de visualisatie Key influencers interessant?

• Als je wilt zien welke factoren invloed hebben op het metrisch gegeven dat wordt geanalyseerd.

• Als je het relatieve belang van deze factoren wilt vergelijken. Heeft het land meer invloed op de omzet dan de verkoper?

Voorbeeld

Welke factoren hebben de meeste invloed op het stijgen van de omzet?

1 Maak een nieuwe rapportpagina aan voor de AI-visualisaties:

a Klik onderaan in de rapportweergave op het plusteken om een nieuwe pagina toe te voegen.

b Dubbelklik op het tabblad om de naam aan te passen naar AI visuals.

2 Kopieer het logo, de navigatiebalk en de slicer op jaar van de pagina Omzetanalyse. Plak de elementen op de pagina AI visuals

3 Filter op 2023.

4 Kies de visualisatie Key influencers

Figuur 64: visualisatie Key influencers

5 Selecteer de velden:

a Sleep de metrische waarde die je wilt analyseren naar het veld Analyze (meting Omzet, tabel_Measures).

b Verplaats velden waarvan je denkt dat ze van invloed kunnen zijn naar het veld Explain by Je kunt zoveel velden verplaatsen als je wilt. Begin in dit geval met de velden:

tabel Klanten: Landcode

tabel Producten: Gewicht

tabel Producten: Smaak

tabel Orders: Verkoper.

Figuur 65: velden selecteren

6 Selecteer Increase (Hoog) in de vervolgkeuzelijst om een positieve waardering te bekijken.

Figuur 66: vervolgkeuzelijst

De functies van de visualisatie Key influencer

Figuur 67: functies key influencer (voorbeeld gefilterd op 2023)

a Tabbladen: selecteer een tabblad om te schakelen tussen weergaven. Key influencers toont de belangrijkste factoren die invloed hebben op de geselecteerde metrische waarde. Top segments toont de topsegmenten die van invloed zijn op de geselecteerde metrische waarde. Een segment bestaat uit een combinatie van waarden.

Figuur 68: voorbeeld segment

b Vervolgkeuzelijst: de waarde van de meetwaarde die wordt onderzocht. In dit voorbeeld kijken we naar de meetwaarde waardering. De geselecteerde waarde is Increase (Hoog).

c Aanpassing: dit helpt ons om de visual in het linkerdeelvenster te interpreteren.

d Linkerdeelvenster: het linkerdeelvenster bevat één visualisatie. In dit geval toont het linkerdeelvenster een lijst met de belangrijkste beïnvloeders.

e Aanpassing: dit helpt ons om de visualisatie in het rechterdeelvenster te interpreteren.

f Rechterdeelvenster: het rechterdeelvenster bevat één visual. In dit geval worden in het kolomdiagram alle waarden voor de belangrijkste beïnvloeder Landcode weergegeven; die is geselecteerd in het linkerdeelvenster. De specifieke waarde voor bruikbaarheid in het linkerdeelvenster wordt in het groen weergegeven. Alle andere waarden voor Landcode worden in het zwart weergegeven.

g Lijn voor gemiddelde: het gemiddelde wordt berekend voor alle mogelijke waarden voor Landcode, behalve bruikbaarheid (welke de geselecteerde beïnvloeder is). De berekening is dus van toepassing op alle zwarte waarden.

h Selectievakje: hiermee filter je de visualisatie in het rechterdeelvenster, zodat alleen waarden worden weergegeven die van invloed zijn op het veld.

2.12 Decomposition tree | Uitgevouwen structuur

De Decomposition tree of Uitgevouwen structuur is een visualisatie waarmee je inzicht kunt krijgen in de hoofdoorzaak (root cause) van een hoge of lage metrische waarde. Met de decomposition tree kun je metrische gegevens onderverdelen op basis van één of meer dimensies om te begrijpen welke impact afzonderlijke factoren hebben.

Voorbeeld

1 Kies de visualisatie Decomposition tree.

Figuur 69: visualisatie decomposition tree

2 Selecteer de velden:

a Sleep de metrische waarde die je wilt analyseren naar het veld Analyze (meting Omzet, tabel_Measures).

b Verplaats velden waarvan je denkt dat ze van invloed kunnen zijn naar het veld Explain by. Je kunt zoveel velden verplaatsen als je wilt. Begin in dit geval met de velden:

tabel Klanten: Landcode

tabel Producten: Smaak

tabel Orders: Verkoper

tabel Datumdimensie: Kwartaal

Figuur 70: velden selecteren

3 Klik op het +-teken om in te zoomen op een specifieke dimensie:

Figuur 71: inzoomen op dimensie

4 Zoom in op de dimensie Land, vervolgens op Smaak, Kwartaal en Verkoper.

Figuur 72: visualisatie decomposition tree

5 Klik op eender welke dimensie om in te zoomen.

Notitie

Achter de schermen wordt in de AI-visualisatie Key influencers met behulp van ML.NET een lineaire regressie uitgevoerd om de belangrijkste beïnvloeders te berekenen.

Als je geen kennis hebt van hoe de gebruikte algoritmes werken achter de schermen, hoe kun je dan controleren of het resultaat correct is? Moet je dit zomaar voor waar aannemen?

Heel wat factoren beïnvloeden de resultaten: de grootte van de dataset (‘het aantal waarnemingen’), de correlaties, de opbouw van het model (de kardinaliteit) …

Conclusie: AI-visualisaties kunnen heel inspirerend zijn en aanzetten tot verdere analyse. Neem de resultaten niet zomaar voor waar aan. Trust but verify!

3 Visualisaties uitlijnen

Met Power BI Desktop kun je visualisaties op verschillende manieren uitlijnen.

3.1 Rasterlijnen

Klik in het lint View op Gridlines (Rasterlijnen) en/of Snap to grid (Uitlijnen op raster) om de rasterlijnen in te schakelen. Rasterlijnen zijn zichtbare hulplijnen waarmee je visualisaties kunt uitlijnen. Door de optie Snap to grid in te schakelen worden visualisaties automatisch uitgelijnd op het raster.

Met de optie Lock objects (Objecten vergrendelen) vergrendel je alle objecten op het canvas zodat ze niet kunnen worden verplaatst of gewijzigd.

Figuur 73: uitlijnen op raster

3.2 Uitlijnen en distribueren

Met de optie Align (Uitlijnen) in het tabblad Format > groep Arrange kun je objecten links, rechts, aan de bovenkant, aan de onderkant, gecentreerd of in het midden uitlijnen.

Als je twee of meer objecten geselecteerd hebt, worden ze samen uit uitgelijnd.

4 Filterdeelvenster

In het deelvenster Filters kun je filters instellen, verbergen of vergrendelen. Het deelvenster Filters ziet er hetzelfde uit voor de gebruikers van het rapport wanneer je het rapport publiceert. Klik in het lint View op Filters om het filtervenster weer te geven of te verbergen tijdens het bewerken. Dat heeft geen invloed op de zichtbaarheid voor de rapportlezers.

Figuur 74: filterdeelvenster

Hoofdstuk 7 Gegevens visualiseren met Power BI Desktop

Als je niet wilt dat de gebruikers het filtervenster zien, kun je dit uitschakelen door op het oogpictogram naast Filters te klikken.

Figuur 75: filtervenster verbergen

In het filterdeelvenster kun je filters instellen die van toepassing zijn op een visualisatie, een pagina of op alle pagina’s van het rapport.

Voorbeeld

1 Sleep het veld Jaar (tabel Datumdimensie) naar de Filters on all pages 2 De filter is nu ook zichtbaar in de andere pagina’s van het rapport.

Figuur 76: filter jaar

Het is mogelijk om een filter te vergrendelen of te verbergen. Wanneer je een filter vergrendelt, kunnen de gebruikers van het rapport hem zien, maar niet wijzigen. Als je de filter verbergt, kunnen de gebruikers hem niet zien.

Figuur 77: filter verbergen

3 Voeg op de rapportpagina Klantenanalyse een paginafilter toe voor het veld Landcode (tabel Klanten) en het veld Verkoper (tabel Orders).

4 Filter in het filterdeelvenster op:

• Landcode: BE

• Verkoper: Pierre Callebaut

• Jaar: 2024 (slicer)

5 Klik op het filterpictogram van een visualisatie om de toegepaste filters te zien.

Figuur 78: filterpictogram

Notitie

Het deelvenster Filters zorgt ervoor dat er extra filters in het rapport toegevoegd kunnen worden zonder ruimte in te nemen op het canvas met slicers.

5 Bookmarks

Met Bookmarks of Bladwijzers kun je de weergave van een rapport vastleggen, inclusief de filters, en later teruggaan naar deze weergave door de bladwijzer te selecteren.

Je kunt ook een verzameling bladwijzers maken, ze in de gewenste volgorde rangschikken en vervolgens in een presentatie opslaan om een reeks inzichten of het verhaal dat je wilt vertellen (storytelling) stapsgewijs te tonen.

1 Klik in het lint op View en vink de optie Bookmarks aan. Het deelvenster Bookmarks opent.

Figuur 79: deelvenster Bookmarks

2 De eerste bookmark die we maken is het rapport zonder filters.

a Ga naar de rapportpagina Klantenanalyse b Wis alle filters.

c Klik in het deelvenster Bookmarks op Add d Klik in het deelvenster Bookmarks op Options > Rename. Wijzig de naam van de bookmark in Alle filters verwijderen.

Figuur 80: naam bladwijzer wijzigen

3 Filter het rapport op het jaar 2024, verkoper Pierre Callebaut.

4 Klik in het deelvenster Bookmarks op Add

5 Klik in het deelvenster Bookmarks op Options > Rename. Wijzig de naam van de bookmark in Pierre Callebaut_2024.

6 Klik op de bookmark Alle filters verwijderen om de filters te verwijderen.

7 Stel een nieuwe filter in: Jaar 2023, Landcode DE, Verkoper Leemans Marleen.

8 Klik in het deelvenster Bookmarks op Add

9 Wijzig de naam van de bookmark in Leemans Marleen_DE_2023.

10 Klik op View in het deelvenster Bookmarks om de ‘slideshow’ te starten. Onderaan in het scherm verschijnt een balk om te navigeren.

Figuur 81: bookmarks slideshow

Notitie

In Power BI-service kun je ook persoonlijke bookmarks maken.

6 Knop ‘Alle filters verwijderen’

Het kan handig zijn om een knop op het rapport te voorzien om alle filters te verwijderen.

1 Selecteer in het lint Insert > Buttons > kies blank uit de lijst met opties.

82: knop maken

2 Maak de knop op. Klik in het deelvenster Format button op:

a Button text: wijzig de tekst in FILTERS VERWIJDEREN. Kies een kleur, puntgrootte en lettertype.

83: button tekst

Figuur
Figuur

b Schakel de optie Action in. Kies bij type actie voor Bookmark en selecteer de bookmark Alle filters verwijderen uit de lijst met bookmarks.

Figuur 84: action

c Test de werking van de button door een aantal filters te selecteren en vervolgens met CTRL + klik op de knop te klikken om alle filters te verwijderen.

Figuur 85: knop filters verwijderen

7 Drill-through (filteren)

In Power BI is het ook mogelijk om ‘door te drillen’. Dat betekent dat je van gegevens binnen een grafiek of tabel detailinformatie kunt opvragen. Om door te drillen selecteer je het gegevenspunt dat je wilt bekijken en kies je vervolgens de optie 'Right-click tot drillthrough'. Dit brengt je naar een nieuwe pagina (doelpagina) binnen het rapport waar de gewenste informatie te vinden is.

Voorbeeld

Stel een drill-through in om de details van de klanten en orders te zien per verkoper. Gebruik de pagina Klantenanalyse als doelpagina.

1 Ga naar de rapportpagina Klantenanalyse.

2 Sleep in het deelvenster Visualisaties het veld waarvoor je de analyse wilt doen (Verkoper) naar Add drill-through fields here

Figuur 86: Add drill-through fields here

3 Als je een veld toevoegt aan Drill through, wordt in Power BI automatisch de knop Terug als visual gemaakt. Deze visual wordt een knop in gepubliceerde rapporten. Gebruikers die het rapport gebruiken in de Power BI-service, kunnen deze knop gebruiken om naar de rapportpagina terug te gaan van waar ze vandaan komen:

Figuur 87: knop Terug

4 Ga naar de pagina Omzetanalyse.

5 Klik in de visualisatie Omzet per verkoper met je rechtermuisknop op het gegevenspunt Leemans Marleen en kies de optie Drill Through

Figuur 88: drill-through naar klantanalyse

De rapportpagina Klantenanalyse wordt gefilterd op verkoper Leemans Marleen. Nu is het echter voor de gebruiker niet echt duidelijk op welk land de pagina gefilterd is. Het is daarom belangrijk om in een dynamische tekst te voorzien met de geselecteerd waarde:

6 Klik in het deelvenster Data op de drie puntjes en voeg een nieuwe meting toe (New measure) om een dynamische tekst aan te maken. Indien de pagina niet gefilterd is, krijgt de gebruiker de tekst ‘Geen filters’ te zien, indien de pagina gefilterd is ziet de gebruiker de tekst ‘Pagina gefilterd op Verkoper’.

Figuur 89: measure SELECTEDVALUE

7 Klik in het lint op Insert > Buttons > Blank om een knop toe te voegen.

a Gebruik de verfborstel om de opmaak van de eerder aangemaakte knop Alle slicers resetten te kopiëren en te plakken.

b Stel de knop in. Klik in het deelvenster Format button bij Style op fx om de dynamische tekst in te stellen. De tekst is gebaseerd op de measure Filter verkoper.

Figuur 90: dynamische knop

8 Positioneer de knop op de rapportpagina.

9 Klik op de knop ‘terug’ om terug te keren naar de pagina Omzetanalyse.

Figuur 91: rapportpagina klantanalyse drill-through Leemans Marleen

8 Tooltips

Een alternatief om detailinformatie weer te geven zijn de tooltips.

Als je in een visualisatie over een gegevenspunt beweegt, krijg je detailinformatie. Dit noemen we tooltips. Standaard zijn dit de details van de velden opgenomen in de grafiek, maar je kunt er ook voor kiezen om extra tooltips toe te voegen.

Voorbeeld

1 Selecteer op de rapportpagina Omzetanalyse de visualisatie Evolutie omzet. Beweeg over de kolom van de maand februari (maand 2). De detailgegevens verschijnen in een tooltip.

Figuur 92: tooltip

2 Sleep het veld Aantal orders naar het gebied Tooltip.

Figuur 93: tooltip toevoegen

3 De extra informatie Aantal orders verschijnt nu ook als je de kolom van de maand februari selecteert.

Figuur 94: extra tooltip

Het is mogelijk in Power BI Desktop om een volledig aangepaste tooltip te maken.

Voorbeeld

Als je over een gegevenspunt beweegt in de visualisatie Evolutie omzet, krijg je de omzet per dag.

Figuur 95: aangepaste tooltip

1 Maak een nieuwe pagina met de naam Tooltip.

2 Klik in het deelvenster Visualizations op Format your report page en kies bij Canvas settings het type Tooltip

Figuur 96: Page size Tooltip

3 Selecteer in het lint View de optie Page view > Fit to page om het canvas aan te passen aan de pagina.

Figuur 97: fit to page

4 Maak je ‘minirapport’ met een lijngrafiek die de omzet per dag toont.

a Selecteer de visualisatie Line chart

b Selecteer de velden: Tabel Datumdimensie: Dag. Tabel _Measures: Totale_omzet

c Pas de titel aan.

Figuur 98: omzet per dag

5 Klik op een lege plaats in het canvas (om de visualisatie te deselecteren).

6 Klik op Format your report page en geef bij Page information de naam in van de tooltip. Zet de schuifbalk bij Tooltip op On

Figuur 99: Page information

7 Ga naar de pagina Omzetanalyse.

a Selecteer de visualisatie Evolutie omzet

b Klik op het pictogram Format your visual

c Stel de tooltip in.

Figuur 100: tooltip instellen

Notitie

Let op met overmatig gebruik van tooltips. Gebruik ze alleen als ze een meerwaarde zijn voor de visualisatie.

Hoofdstuk 8

Rapporten delen met Power BI-service

In het hoofdstuk 'Rapporten delen met Power BI-service' komen de laatste twee stappen in de dataijsberg aan bod:

1 Power BI-service

De manier waarop je met Power BI werkt is afhankelijk van je functie of rol in de organisatie. Als ontwerper (report designer) begin je doorgaans met het maken van rapporten in Power BI Desktop. Vervolgens publiceer je de rapporten naar Power BI-service, waar je ze verder kunt aanpassen en delen met collega’s. In Power BI-service maak je ook de dashboards op basis van je rapporten.

Hoofdstuk

2 Aanmelden bij Power BI-service

1 Als je al een Microsoft-account hebt, kun je jezelf aanmelden via de webpagina app.powerbi.com.

Figuur 1: aanmelden bij Power BI-service

2 Geef je e-mailadres in (Microsoft-account) en klik op Verzenden. De aanmeldpagina is voor iedere organisatie verschillend.

3 Je komt op de Power BI-service-startpagina terecht. Klik in het navigatiedeelvenster op Learn om het Learning center te openen.

Figuur 2: Power BI-service-Learning center

Notitie

Power BI-service biedt heel wat extra mogelijkheden voor de rapportontwerper. In de hoofdstuk beperken we ons tot de essentie.

3 Power BI-service: bouwstenen

De belangrijkste bouwstenen van Power BI-service zijn:

1 reports of rapporten; 2 dashboards;

3 semantic models.

Ze zijn allemaal ingedeeld in workspaces of werkruimten. Een Power BI-werkruimte is een samenwerkingsgebied binnen de Power BI-service. Elke Power BI-gebruiker heeft een persoonlijke werkruimte die My Workspace of Mijn werkruimte heet. Er kunnen extra werkruimten worden gemaakt om samenwerking mogelijk te maken.

Rapporten worden gepubliceerd naar een werkruimte zodat collega's de inhoud kunnen bekijken, samenwerken en waar nodig bijdragen.

Notitie

Voor het aanmaken van workspaces of werkruimtes moet je een licentie voor Power BI Pro hebben of moet de inhoud zich in een Premium-capaciteit bevinden.

De verschillende bouwstenen kun je in Power BI-service in een workspace terugvinden op verschillende manieren:

Figuur 3: bouwstenen Power BI-service

3.1 Reports of rapporten

Een Power BI-rapport bestaat uit één of meer pagina’s met visualisaties of visuals zoals lijndiagrammen, kolomdiagrammen, enz.

En Power BI-rapport bouw je gewoonlijk in Power BI Desktop, maar kun je ook met de nodige rechten bewerken in Power BI-service.

Een rapport

• is opgenomen in één werkruimte.

• kan worden gekoppeld aan meerdere dashboards in die werkruimte. Tegels die zijn vastgemaakt vanuit dat rapport, kunnen worden weergegeven in meerdere dashboards.

• kan worden gemaakt van gegevens uit één semantisch model. Power BI Desktop kan meer dan één gegevensbron combineren in één semantisch model in een rapport en dat rapport kan worden geïmporteerd in Power BI-service.

3.2 Dashboards

Een dashboard maak je in de Power BI-service. Een dashboard bestaat uit één pagina dat meerdere tegels en widgets bevat. Elke tegel die vanuit een rapport of vanuit Q&A is vastgemaakt, geeft één visualisatie weer die is gemaakt van een semantisch model en die is gepind aan het dashboard. Volledige rapportpagina's kunnen ook als één tegel worden vastgemaakt aan een dashboard.

Waarom zou je dashboards willen maken?

• Je kunt in één oogopslag alle benodigde informatie weergeven om een beslissing te nemen. Dashboards worden dan ook vaak gebruikt voor het management.

• Je kunt de belangrijkste informatie over het bedrijf bewaken.

• Je kunt er met dashboards voor zorgen dat alle collega's hetzelfde voor ogen hebben en

allemaal dezelfde informatie zien en gebruiken.

Een dashboard

• is gekoppeld aan één werkruimte;

• kan visualisaties weergeven uit semantische modellen;

• kan visualisaties weergeven uit verschillende rapporten;

• kan visualisaties weergeven die zijn vastgemaakt vanuit andere hulpprogramma's (bv. Excel).

3.3 Semantische modellen

Een semantisch model in Power BI is een bron van gegevens die gereed zijn voor rapportage en visualisatie.

Een semantisch model is het object dat de verbinding met de gegevensbron, de (getransformeerde) gegevenstabellen, de gegevens zelf, de relatie tussen tabellen (het model) en DAX-berekeningen bevat (stap 1, 2, 3 en 4 van de data-ijsberg).

Gewoonlijk is het semantisch model verborgen in de Power BI Desktop-weergave, maar ze kan gemakkelijk worden bekeken in de Power BI-service.

Figuur 4: semantisch model

Notitie

Eén semantisch model kan gebruikt worden als bron in meerdere rapporten.

Figuur 5: semantisch model als gegevensbron

Notitie

Voor het aanmaken van dataflows of gegevensstromen moet je een licentie voor Power BI Pro hebben of moet de inhoud zich in een Premium-capaciteit bevinden.

4 Een rapport publiceren naar Power BI-service

1 Open het bestand H8_Gegevensanalyse_Tex-Mex_opgave.pbix in Power BI Desktop.

2 Bewaar het bestand als H8_Gegevensanalyse_Tex-Mex.pbix

3 Klik in het lint op Home > Publish.

4 Een rapport publiceren naar Power BI-service.

Figuur 6: rapport publiceren

5 Meld je aan met je Microsoft-account.

Figuur 7: aanmelden

6 Selecteer het doel My workspace

Figuur 8: doel selecteren

7 Klik in het dialoogvenster Publishing to Power BI op de link H8_Gegevensanalyse_Tex-Mex.pbix in Power BI

Figuur 9: dialoogvenster Publishing to Power BI

8 Als je al aangemeld bent bij Power BI-service kun je onmiddellijk naar Power BI-service gaan. Ga in Power BI-service in het linkerdeelvenster naar My workspace. Selecteer het rapport H8_ Gegevensanalyse_Tex-Mex.pbix.

Figuur 10: Mijn werkruimte Power BI-service

Notitie

Het is ook mogelijk om een .pbix-bestand te openen vanuit Power BI-service (Get Data > Files).

5 Een dashboard maken en delen in Power BI-service

Een Power BI-dashboard is één pagina met de belangrijkste visualisaties (ook tiles of ‘tegels’ genoemd).

Figuur 11: Dashboard versus rapport

Een dashboard moet als het ware een verhaal vertellen (storytelling).

Notitie

Een dashboard kun je niet maken in Power BI Desktop of op mobiele apparaten. Op mobiele apparaten kun je ze wel weergeven en delen.

1 Open het rapport H8_Gegevensanalyse_Tex-Mex.pbix in Power BI service.

Figuur 12: open het rapport

2 Filter het rapport op 2024.

3 Beweeg over de visualisatie Evolutie omzet.

4 Klik op de ‘punaise’ om de visualisatie vast te maken aan een dashboard.

Figuur 13: pin visual

5 Maak een nieuw dashboard. Als je het bestaande thema wilt behouden, moet je de optie ‘Keep current theme’ aanvinken.

Figuur 14: nieuw dashboard

6 Klik op Pin.

7 Doe hetzelfde voor een aantal andere visualisaties van het rapport. In het linkerdeelvenster kun je navigeren tussen de rapportpagina's.

Figuur 15: navigeren tussen rapportpagina's

Kies nu om de visualisaties vast te maken aan een bestaand dashboard.

8 Een dashboard vind je eveneens onder My workspace (Mijn Werkruimte)

Figuur 16: Mijn werkruimte of My workspace

Figuur 17: voorbeeld dashboard

Notitie

Het is niet mogelijk om een slicer vast te pinnen op een dashboard.

9 Klik op More options om de tegel te verwijderen, terug te keren naar het rapport enzovoort.

Figuur 18: More options

10 Klik op Share om je dashboard te delen.

Figuur 19: dashboard delen

11 Voer de e-mailadressen in van de collega’s met wie je het rapport wilt delen.

Notitie

Het is mogelijk ook mogelijk om rapporten in te sluiten in Microsoft Teams, Sharepoint online of een beveiligde portal of website.

Voor het delen van de inhoud moet je een licentie voor Power BI Pro hebben of moet de inhoud zich in een Premium-capaciteit bevinden. Dat geldt ook voor de eindgebruiker of consument.

Hoofdstuk 9

Efficiënt data verwerken in Excel met Power BI

Hoofdstuk 9 Efficiënt data verwerken in Excel met Power BI

Power BI is sinds 2014 beschikbaar voor de gebruiker. Initieel was het een invoegtoepassing voor Excel 2010 (Power Query, Power Pivot en Power View).

Power BI in Excel is de afgelopen jaren enorm ontwikkeld. Afhankelijk van de MS Office-versie die geïnstalleerd is, moet je al dan niet een invoegtoepassing downloaden. In de laatste MS Office-versies zijn Power Query en Power Pivot geïntegreerd in Excel. Power View is niet meer beschikbaar. (Voor rapporten en dashboards gebruiken we Power BI Desktop.)

1 Power BI in Excel versus Power BI Desktop

Excel en Power BI gaan hand in hand. Gebruikers van Business Intelligence-oplossingen, gebruiken vaak nog steeds Excel om kleine ad-hocrapporten te bouwen. Ook als je verschillende gegevensbronnen wilt transformeren, modelleren of analyseren om vervolgens te laden naar een tabel in Excel kan Power BI heel handig zijn.

De volgende hoofdstukken kun je volledig in Excel uitwerken:

• Data ophalen met Power BI Desktop

• Gegevens opschonen en transformeren met Power Query Editor

• Gegevensmodel maken in Power BI Desktop

• Berekeningen en gegevensanalyse met DAX

Om gegevens te visualiseren in Excel kun je draaitabellen en grafieken gebruiken.

1.1 Data ophalen in Excel

De werkwijze is gelijklopend. Je kunt bij het laden van de gegevens kiezen om de gegevens onmiddellijk te laden in het gegevensmodel of om ze te bewerken in de Query Editor. Alle bewerkingen uit het hoofdstuk ‘Gegevens opschonen met Power Query Editor’ kun je ook perfect in de Query Editor in Excel uitvoeren.

Voorbeeld

Maak verbinding met het Excel-bestand Database_Tex-Mex_Excel.xlsx:

1 Open Excel.

2 Klik in het lint op Data > Get data > From File > From Workbook.

Figuur 1: gegevens ophalen

3 Navigeer naar het opgavebestand Database_Tex-Mex_Excel.xlsx en klik op Import.

4 Selecteer de tabellen DimKlanten, DimProducten en FactOrders en klik op Transform data.

Figuur 2: dialoogvenster Navigator

Hoofdstuk 9 Efficiënt data verwerken in Excel met Power BI

5 Het Power Query Editorvenster opent.

6 Transformeer als voorbeeld de tabel DimKlanten:

a Verwijder alle kolommen behalve Klant_ID en Bedrijfsnaam

7 Klik op Close & Load to… om de doellocatie te kiezen.

Figuur 3: dialoogvenster Import Data

Als je kiest voor de optie Table worden de tabellen geladen naar Excel-werkbladen. Met de optie Only Create Connections maak je verbinding met de gegevens, maar worden ze nog niet geladen.

Als je Add this data to the Data Model aanvinkt, worden de gegevens onmiddellijk geladen in het gegevensmodel.

8 Kies de optie Only Create Connection en vink Add this data to the Data Model aan.

In het rechterdeelvenster krijg je een overzicht te zien van de query’s die geladen zijn. Als je met de cursor over een query beweegt, verschijnt er een pop-upvenster met een preview van de query en een aantal opties, bijvoorbeeld de query bewerken (Edit), weergeven in een Excel-werkblad (View in worksheet) of verwijderen (Delete).

Figuur 4: query DimKlanten

1.2 Gegevensmodel maken

Zodra je de data geladen hebt naar het gegevensmodel, kun je relaties maken of berekeningen en gegevensanalyses met DAX uitvoeren.

Klik in het lint op het tabblad Data op Go to the Power Pivot Window of in het lint op Power Pivot > Manage om naar het gegevensmodel te gaan.

Figuur 5: manage data model

Het venster Power Pivot for Excel opent. Power Pivot for Excel is vergelijkbaar met de gegevensweergave (Table View) in Power BI Desktop. De interface van Power Pivot in Excel is anders, maar de mogelijkheden zijn hoofdzakelijk dezelfde. Ook in Excel kun je relaties maken in de diagramweergave, en berekende kolommen en metingen toevoegen.

Bovenaan links in het venster kun je schakelen tussen Excel en Power Pivot, rechts kun je schakelen tussen de Data View of Gegevensweergave en de Diagram View of Modelweergave

Per tabel is een tabblad aangemaakt.

Hoofdstuk 9 Efficiënt data verwerken in Excel met Power BI

Figuur 6: Table view of tabelweergave

Klik op Diagram View om de relaties te bekijken of te wijzigen (Model view).

Figuur 7: diagramweergave

De relaties tussen de tabellen leg je op dezelfde manier als in Power BI Desktop.

Sleep het veld Productnr van de tabel DimProducten naar het veld Productnr van de tabel FactOrders. Sleep het veld Klant_ID van de tabel DimKlanten naar het veld Klantnr van de tabel FactOrders

Figuur 8: relaties

1.3 Een datumtabel maken in Excel

Net zoals in Power BI Desktop kun je in Excel een datumtabel maken en vervolgens de tijdintelligentiefuncties gebruiken.

Een aantal basisprincipes bij het maken van een datumtabel:

a Het datumbereik moet aaneengesloten zijn; er mag geen enkele dag ontbreken in de kolom met kalenderdagen. Stel dat je bijvoorbeeld het weekend niet opneemt in de datumtabel, dan zullen de functies niet werken.

b De datumtabel moet alle datums bevatten die elders in het gegevensmodel voorkomen.

c De datumtabel moet geïntegreerd worden in het gegevensmodel door relaties.

d Het model moet weten dat het een datumtabel is.

Een datumtabel maken in Excel kun je als volgt:

1 Klik in het lint op Power Pivot > Manage om Power Pivot for Excel te openen.

2 Klik in het lint op Design > Date Table > New

Hoofdstuk 9 Efficiënt data verwerken in Excel met Power BI

Figuur 9: datumtabel aanmaken

3 De datumtabel wordt automatisch gegenereerd en automatisch gemarkeerd als datumtabel.

4 Pas eventueel de tabelnaam en veldnaam aan.

Figuur 10: datumtabel

5 Integreer de datumtabel in het model:

a Ga naar de Diagram view.

b Sleep het veld Besteldatum uit de tabel FactOrders naar het veld Datumsleutel (of Date) van de tabel Dimdatumtabel (Calendar)

1.4 Berekeningen en gegevensanalyse

Bereken de omzet.

Een berekende kolom toevoegen in het gegevensmodel in Excel gaat als volgt:

1 Open het Power Pivot-scherm.

2 Selecteer het tabblad DimProducten.

3 Dubbelklik op Add Column en geef de veldnaam VP/pallet in.

Figuur 11: berekende kolom toevoegen

1 Geef de formule in de formulebalk in. (Zie ook het hoofdstuk ‘Berekeningen en gegevensanalyse met DAX’.)

Figuur 12: formule VP/pallet

2 Ga naar de tabel FactOrders. Bereken de omzet:

Hoofdstuk 9 Efficiënt data verwerken in Excel met Power BI

Figuur 13: omzet berekenen

3 Klik in het lint op Home > PivotTable om een draaitabel te maken op basis van het gegevensmodel.

Figuur 14: draaitabel maken

4 In het rechterdeelvenster krijg je een lijst met alle tabellen en velden van het gegevensmodel:

a Sleep het veld Bedrijfsnaam uit de tabel DimKlanten naar het gebied Rows.

b Sleep het veld Omzet uit de tabel FactOrders naar het gebied Values.

Figuur 15: draaitabelvelden

Hoofdstuk

Notitie

Als je met Power BI in Excel het gegevensmodel voorbereidt, kun je dus ook tabellen aan elkaar relateren en ze onmiddellijk gebruiken in draaitabellen en -grafieken. De VLOOKUP-functie of verticaal zoeken hoef je dus niet meer te gebruiken.

5 Klik in het lint op Power Pivot > Measures > New Measure om een nieuwe meting toe te voegen in Excel.

Figuur 16: nieuwe meting

6 Voeg een meting toe om de omzet year to date (YTD) te berekenen (zie ook het hoofdstuk 'Berekeningen en gegevensanalyse met DAX').

Figuur 17: meting omzet YTD

Hoofdstuk 9 Efficiënt data verwerken in Excel met Power BI

a Table name: selecteer de tabel waarin de meting moet worden opgenomen.

b Measure name: de naam van de meting.

c DAX-functie.

d Check formula: klik op Check formula om de functie te testen.

De meting is automatisch toegevoegd aan de tabel FactOrders.

1.5 Gegevens visualiseren

In principe kun je nu een dashboard in Excel maken op basis van draaitabellen en -grafieken. Maar je kunt het gegevensmodel ook in Power BI Desktop of Power BI-service laden en daar de visualisaties maken.

Gegevens visualiseren in Excel

Visualiseer de omzet year to date

1 Open Power Pivot for Excel (klik in het lint Power Pivot op Manage).

2 Maak een nieuwe draaitabel. Klik in het lint op Home > PivotTable > New worksheet

3 Sleep het veld Datumsleutel naar het gebied Rows.

4 Sleep het veld Omzet en de meting Omzet_YTD naar het gebied Values

5 Selecteer de waarden in de kolom Omzet_YTD:

a Klik in het lint Home op Contional Formatting

b Kies de optie Data Bars en selecteer een kleur.

c Klik op OK.

Figuur 18: visualisatie Omzet_YTD

Gegevensmodel laden in Power BI-service

1 Bewaar het bestand onder de naam Power BI in Excel.xlsx.

2 Klik in het lint op File > Publish.

3 Kies de optie Export workbook data to Power BI

Figuur 19: publiceren naar Power BI-service

4 Kies de optie Export.

5 Klik in de gele balk op Go to Power BI om naar Power BI-service te gaan:

Figuur 20: Publiceren naar Power BI-service

Hoofdstuk 9 Efficiënt data verwerken in Excel met Power BI

6 Het bestand is nu beschikbaar in Power BI-service.

Figuur 21: Power BI-service

Notitie

In Power BI service kun je rapporten en dashboards bouwen op basis van het semantische model gebouwd in Excel en delen met je doelpubliek.

Gegevensmodel laden in Power BI Desktop

1 Open Power BI Desktop.

2 Klik op File > Import > Power Query, Power Pivot, Power View.

Figuur 22: importeren in Power BI Desktop

3 Navigeer naar het bestand Power BI in Excel.xlsx.

4 Klik op Start in het dialoogvenster Import Excel workbook contents

Figuur 23: dialoogvenster Import Excel workbook contents

5 Het gegevensmodel wordt geïmporteerd en je kunt verderwerken in Power BI Desktop.

Hoofdstuk 9 Efficiënt data verwerken in Excel met Power BI

24: Importeren in Power BI Desktop

2

Analyseren in Excel

2.1 Microsoft Analysis Services OLE DB Provider installeren

Met Analyseren in Excel (Analyze in Excel) kun je Power BI gegevenssets overbrengen naar Excel en ze daar weergeven en bewerken met behulp van draaitabellen, grafieken, slicers en andere Excel-functies.

Notitie

Voor Analyseren in Excel is een Power BI Pro-licentie vereist. Analyseren in Excel wordt enkel ondersteund op computers met Microsoft Windows.

Als je Analyseren in Excel wilt gebruiken, moet je de functie eerst downloaden uit Power BI-service en installeren.

1 Meld je aan bij Power BI-service via de webpagina app.powerbi.com.

2 Klik op Download > Analyze in Excel updates.

Figuur

Figuur 25: Analyze in Excel updates

3 Download en installeer het .msi bestand.

Figuur 26: installatie Microsoft Analysis Services OLE DB Provider

Als het installeren is voltooid, kun je een rapport of gegevensset selecteren in Power BI-service en dat vervolgens analyseren in Excel.

Hoofdstuk 9 Efficiënt data verwerken in Excel met Power BI

2.2 Verbinding maken met Power BI-gegevens

Navigeer naar het rapport of het semantisch model dat je wilt analyseren in Excel.

1 Ga naar de werkruimte My workspace (Mijn werkruimte).

2 Klik op More options (drie puntjes) van het rapport H8_Gegevensanalyse_Tex-Mex (of een ander rapport in je werkruimte indien je het rapport van H8 niet gepubliceerd hebt) en kies de optie Analyze in Excel

Figuur 27: rapport selecteren

Notitie

Als je Analyze in Excel toepast op het type rapport, werk je met de onderliggende gegevensset van het rapport dat in Excel wordt geopend.

3 Mogelijk krijg je nog de vraag om Excel libraries te installeren. Indien je de Microsoft Analysis Services OLE DB Provider geïnstalleerd hebt (zie hierboven) mag je klikken op de blauwe link ‘I’ve already installed these updates’

28: Excel libraries installeren

4 Power BI-service maakt vervolgens een Excel-bestand van het semantisch model dat is ontworpen (en gestructureerd) om te Analyseren in Excel en start een downloadproces in de browser. De bestandsnaam komt overeen met de naam van het rapport.

29: Excel-bestand download

5 Open het Excel-bestand. De eerste keer dat je het bestand opent, moet je mogelijk op Bewerken inschakelen en vervolgens Inhoud inschakelen klikken, afhankelijk van je instellingen.

6 Zodra je bewerken en inhoud hebt ingeschakeld, zie je in Excel een lege draaitabel (PivotTable) en lijst met velden (Fields) uit de Power BI-gegevensset, klaar om te worden geanalyseerd.

Figuur
Figuur

Hoofdstuk 9 Efficiënt data verwerken in Excel met Power BI

Figuur 30: draaitabel in Excel

7 Sla de Excel-werkmap op zoals iedere andere werkmap.

Belangrijk om te weten als je met Analyseren in Excel aan de slag gaat:

• Met Analyseren in Excel worden alle gegevens op detailniveau zichtbaar voor alle gebruikers met een machtiging voor het semantisch model.

• Het Excel-bestand heeft een MSOLAP-verbindingsreeks die verbonden is met het semantisch model of het rapport in Power BI. Wanneer je de gegevens analyseert of ermee werkt, vraagt Excel het semantisch model op in Power BI en worden de resultaten naar Excel geretourneerd. Als het semantisch model verbonden is met een live gegevensbron met behulp van DirectQuery, vraagt Power BI de gegevensbron op en retourneert Power BI de resultaten naar Excel.

Conclusie

Afhankelijk van je voorkeur of gewenste resultaat kun je het semantisch model bouwen in Power BI Desktop of in Excel.

Een semantisch model gebouwd in Excel kun je visualiseren: – in Excel met draaitabellen en draaigrafieken (pivot tables en pivot charts);

in Power BI service als je het semantisch model uit Excel publiceert naar Power BI Service;

in Power BI Desktop als je het semantisch model uit Excel importeert in Power BI Desktop.

Een semantisch model gebouwd in Power BI Desktop kun je visualiseren:

in Power BI Desktop;

in Power BI service als je het semantisch model uit Power BI Desktop publiceert naar Power BI service;

in Excel als je het semantisch model publiceert naar Power BI service en vervolgens kiest voor de optie Analyze in Excel

Hoofdstuk 10 Businesscases

1.1 Analyse tijdsregistratie

Situatieschets

Tex-Mex wil meer inzicht krijgen in hoelang medewerkers met een bepaald project of een bepaalde taak bezig zijn. Door de medewerkers de uren te laten registreren, kun je bijvoorbeeld bij een volgend soortgelijk project meer uren of mankracht inplannen.

Tex-Mex maakt hiervoor gebruik van de online tool Funkytime. Omdat het nog niet mogelijk is om met Power BI direct verbinding te maken met Funkytime, exporteren we de gegevens naar Excel om ze vervolgens op te halen met Power BI.

Eerst halen we de tijdsregistraties van 2023 op. Daar voegen we de tijdsregistraties van 2024 aan toe.

Opgavebestanden

• Timesheet-year_2023.xlsx

• Timesheet-year_2024.xlsx

• Personeelsleden.xlsx

Opgave

1 Open de template Template_rapport_Tex-Mex.pbit

2 Maak verbinding met de opgavebestanden.

3 Transformeer de query Timesheet-year_2023:

a Behoud enkel de kolommen from, to, projectname en collaborator

b Wijzig de kolomnamen in Starttijd, Eindtijd, Project en Personeelslid

c Wijzig de querynaam naar Tijdsregistratie

4 Voeg de tabel timesheet-year_2024 toe aan de tabel timesheet-year_2023.

5 Leg de nodige relaties.

6 Maak een tabel om de measures in te bewaren.

7 Bereken:

a Het aantal gewerkte uren per project, notatie: toon de uren voluit met scheidingsteken voor duizendtallen, geen decimalen.

b Het aantal projectmedewerkers.

8 Maak een rapport met de volgende inzichten:

a Totaal aantal gewerkte projecturen.

b Aantal projectmedewerkers.

c Aantal gewerkte uren per project.

d Aantal gewerkte uren per medewerker.

e Aantal gewerkte uren per maand per jaar.

f Filters: periode, afdeling, project.

9 Maak bookmarks per project en per kalenderjaar.

10 Kies zelf de weergave van de gegevens (tabellen of grafieken) en zorg voor de opmaak.

11 Bewaar het bestand onder de naam Analyse_tijdsregistratie.pbix.

1.2 Analyse ziekteverzuim

Situatieschets

De organisatie Tex-Mex wil het ziekteverzuim van de laatste drie jaar in kaart brengen.

Bijvoorbeeld: Hoe groot is het ziekteverzuim in de organisatie? Verschilt het ziekteverzuim voor verschillende afdelingen? Is er meer ziekteverzuim onder oudere medewerkers? Is er meer verzuim op maandag? Wat is de Bradfordfactor (zie kader) per personeelslid?

Opgavebestanden

• Personeelsleden.xlsx

• Verzuim.csv

• Feestdagen.csv

Definities

• Aantal verzuimdagen: de verzuimdagen worden berekend door de netto werkdagen (aantal kalenderdagen zonder weekends en feestdagen) tussen de start- en einddatum van het verzuim op te tellen.

• Aantal beschikbare werkdagen: het aantal beschikbare werkdagen wordt berekend door het aantal werkdagen (aantal kalenderdagen zonder weekends) in een periode te vermenigvuldigen met het tewerkstellingspercentage van het personeelslid.

• Verzuimpercentage: het verzuimpercentage is het totale aantal ziektedagen van de werknemers, in procenten van het totale aantal beschikbare werkdagen van de werknemers.

• Verzuimfrequentie: de verzuimfrequentie is het totale aantal ziektemeldingen over een bepaalde periode.

• Gemiddeld aantal verzuimdagen per periode: het gemiddeld aantal verzuimdagen per personeelslid wordt berekend door het totale aantal verzuimdagen te delen door het totale aantal ziekteperiodes in dezelfde periode.

• Gemiddeld aantal verzuimdagen per personeelslid: het gemiddeld aantal verzuimdagen per personeelslid wordt berekend door het totale aantal verzuimdagen te delen door het totale aantal ziektegevallen in dezelfde periode.

• Bradfordfactor – Formule: B = S² × D

Waarbij: B = de Bradfordscore

S = het aantal verschillende ziekteperiodes voor een bepaalde medewerker

D = het totale aantal dagen ziekte voor een bepaalde medewerker

1 Open de template Template_rapport_Tex-Mex.pbit

2 Bewaar het bestand onder de naam Analyse_verzuim.pbix

3 Maak verbinding met de opgavebestanden.

4 Transformeer:

a Verwijdere overbodige rijen en kolommen.

b Pas indien nodig de querynaam en kolomnamen aan.

c Controleer het gegevenstype en pas aan indien nodig.

5 Leg de nodige relaties.

6 Maak een datumtabel aan met de velden Datumsleutel (= datum), Weekdagnummer, Maandnummer, Maand en Jaar. Integreer de datumtabel in het gegevensmodel door een relatie.

7 Maak een tabel om de measures in te bewaren.

8 Bereken:

a het aantal personeelsleden;

b het aantal verzuimdagen (aantal werkdagen verzuim zonder weekends en/of feestdagen);

c het verzuimpercentage (= aantal verzuimdagen\aantal werkdagen);

d de verzuimfrequentie (= aantal ziektemeldingen);

e percentage verzuimers en percentage niet-verzuimers;

f gemiddeld aantal verzuimdagen per periode;

g gemiddeld aantal verzuimdagen per personeelslid;

h de leeftijd van de personeelsleden;

i de Bradfordfactor.

9 Visualiseer:

a Kerncijfers: verzuimpercentage; percentage verzuimers versus niet-verzuimers.

b Evolutie aantal verzuimdagen per jaar.

c Verzuimpercentage per statuut (arbeiders, bediende) per jaar.

d Gemiddeld aantal verzuimdagen (per periode en per personeelslid) per leeftijdscategorie (groepeer per 10 jaar).

e Detail per personeelslid: aantal verzuimdagen, verzuimfrequentie, verzuimpercentage, gemiddeld aantal verzuimdagen per periode en de Bradfordfactor.

f Filters: geslacht, periode, afdeling, functie.

g Extra: voeg een rapportpagina toe met de definities. Gebruik tekstvakken.

1: rapportpagina Definities

10 Kies zelf de weergave van de gegevens (tabellen of grafieken).

2 Oplossingen

Voor iedere case is zijn er meerdere oplossingen mogelijk. In dit handboek hebben we telkens één mogelijke oplossing opgenomen.

Figuur

2.1 Analyse tijdsregistratie

Figuur 2: rapport Funkytime

1 Open de template Template_rapport_Tex-Mex.pbit. Een nieuw rapport (.pbix-bestand) wordt geopend op basis van de template.

2 Maak verbinding met de bestanden timesheet-year_2023.xlsx en Personeelsleden.xlsx.

a Klik in het lint op Excel workbook

b Navigeer naar het opgavebestand timesheet-year_2023.xlsx

c Vink het tabblad timesheet-year_2023 aan en klik op Transform data. Het venster Power Query Editor opent.

d Klik in het lint Home op New source > Excel workbook. Maak verbinding met het bestand Personeelsleden.xlsx

3 Behoud enkel de kolommen from, to, projectname en collaborator:

a Selecteer de query timesheet-year_2023

b Klik in het lint op Home > Choose columns en vink de kolommen aan die je wilt behouden.

Figuur 3: kolommen kiezen

c Wijzig de kolomnamen in Starttijd, Eindtijd, Project en Personeelslid: dubbelklik op de kolomkoppen en wijzig de naam.

d Wijzig de naam van de query in Tijdsregistratie.

Figuur 4: querynaam wijzigen

4 Voeg de gegevens van 2024 toe: Timesheet-year_2024.xlsx:

a Open de Query Editor (Home > Transform data).

b Maak verbinding met het bestand Timesheet-year_2024.xlsx:

Klik in het lint op Home > New Source > Excel Navigeer naar het bestand Timesheet-year_2024.xlsx. Selecteer de tabel en klik op Load.

c Voeg de gegevens van 2024 toe:

Selecteer de query Tijdsregistratie. Klik op de querystap Changed type

Notitie

Het is belangrijk dat we de query Timesheet-year-2024 toevoegen aan de query Tijdsregistratie voor we de tabel getransformeerd hebben!

Figuur 5: querystap changed type

Klik in het lint op Home > Append Queries

Klik in het dialoogvenster Insert step op Insert.

Figuur 6: Append Queries

Klik met de rechtermuisknop op de query Timesheet-year_2024 en vink Enable load uit.

Klik op Close & Apply om de data te laden naar het gegevensmodel.

5 Leg de nodige relaties. Om het aantal gewerkte uren per afdeling te kunnen rapporteren, moet er een relatie zijn tussen de tabellen Personeelsleden en Tijdsregistratie. Er is geen gemeenschappelijk veld in beide tabellen, dus kunnen we geen relatie leggen. We lossen dat op door een extra kolom met de volledige naam aan te maken in de tabel Personeelsleden, zodat we een relatie kunnen leggen met de kolom Personeelslid in de tabel Tijdsregistratie.

a Selecteer de query Personeelsleden

b Selecteer de kolommen Voornaam en Naam (in die volgorde!).

c Klik in het lint op Transform > Merge.

d Geef de kolom de naam Personeelslid.

e Klik op Close & Apply

f Ga naar de modelweergave.

g Er wordt automatisch een relatie gedetecteerd op basis van de veldnaam tussen het veld Personeelslid (tabel Tijdsregistratie) en het veld Personeelslid (tabel Personeelsleden).

Notitie

Een relatie tussen twee tabellen op basis van de naam van de medewerker is niet de beste oplossing. Beter zou zijn mocht je de relatie kunnen leggen op basis van het rijksregisternummer, maar aangezien dat gegeven niet aanwezig is in de dataset, moeten we kiezen voor een alternatieve oplossing.

6 Maak een tabel om de measures in te bewaren:

a Klik in het lint Home op Enter data

b Geef de tabel de naam _Measures

Figuur 7: model

7 Bereken:

a Het aantal gewerkte uren per project. Klik in het deelvenster Data op de drie puntjes naast de tabel _Measures. Kies de optie New measure

Figuur 8: measure aantal gewerkte uren

Notitie

Als je onmiddellijk ‘HOUR’ kiest als laatste argument van de functie DATEDIFF, krijg je afrondingsfouten omdat in dit geval de minuten per regel afgerond worden.

b Het aantal projectmedewerkers. Klik in het deelvenster Data op de drie puntjes naast de tabel _Measures. Kies de optie New measure.

Figuur 9:

8 Maak een rapport met de volgende inzichten.

a Totaal aantal gewerkte projecturen:

• Kies de visualisatie Card

• Selecteer de measure Aantal projecturen

• Wijzig de titel in PROJECTUREN.

• Maak de visualisatie op. Klik in het deelvenster Visualizations op Format your visual. Zet het Category label Off. Klik in het tabblad General op Title en voer de titel

PROJECTUREN in.

• Pas de grootte aan (75 x 150) en positioneer op het canvas.

b Aantal projectmedewerkers:

• Kopieer de visualisatie met de projecturen.

• Deselecteer de measure Aantal projecturen en selecteer de measure Projectmedewerkers

• Wijzig de titel in PROJECTMEDEWERKERS.

Figuur 10: kerncijfers

c Aantal gewerkte uren per project.

• Kies de visualisatie Clustered bar chart.

• Vink het veld Project (tabel Tijdsregistratie) en de measure Aantal gewerkte projecturen (tabel _Measures) aan.

• Pas de titel aan (GEWERKTE UREN PER PROJECT).

• Pas de grootte aan (250 × 475) en positioneer op het canvas.

Figuur 11: visualisatie aantal gewerkte uren per project

d Aantal gewerkte uren per medewerker:

• Kopieer (CTRL+C) en plak (CTRL+V) de visualisatie Aantal gewerkte uren per project

• Vink het veld Project uit en vink het veld Personeelslid aan.

• Pas de titel aan.

• Pas de grootte van de visualisatie aan en positioneer op het canvas.

Figuur 12: visualisatie aantal gewerkte uren per medewerker

e Aantal gewerkte uren per maand en per jaar.

• Selecteer de visualisatie Ribbon chart.

Notitie

Lijngrafieken zijn goed om de trend te laten zien en ze kunnen laten zien of de waarde van een bepaalde categorie in de loop van de tijd hoger of lager is. Ze kunnen echter geen waarden op elkaar stapelen. Lintdiagrammen of ribbon charts tonen de trend én stapelen waarden.

• Vink de velden Month en Year (veld Starttijd, datumhiërarchie) en de measure Aantal gewerkte projecturen (aan.

• Sleep het veld Month naar de as (Axis).

• Sleep het veld Year naar Legend

• Pas de grootte aan en positioneer op het canvas.

13: aantal gewerkte uren per maand per jaar

f Filters: periode, afdeling, project:

• Periode:

Selecteer de visualisatie Slicer en vink het veld Starttijd aan.

Slicer Style: Between.

• Afdeling:

Selecteer de visualisatie Slicer en vink het veld Afdeling aan.

Slicer Style: Dropdown

• Project:

Kopieer en plak de slicer Afdeling

Vink het veld Afdeling uit en het veld Project aan.

9 Pas de grootte van de objecten aan, lijn uit en positioneer op het canvas.

Figuur

Figuur 14: Slicers

10 Maak bookmarks per jaar en per project.

a Klik in het lint op View > Bookmarks.

b Filter het rapport op het project CRM.

c Klik op Add. Wijzig de naam van de bookmark in CRM.

d Doe hetzelfde voor de andere projecten.

e Voeg ook de bookmarks toe voor 2023 en 2024.

11 Klik in het lint op File > Save as. Bewaar het rapport onder de naam Analyse_tijdsregistratie.pbix

2.2 Analyse ziekteverzuim

Figuur 15: rapportpagina overzicht verzuim

Figuur 16: rapportpagina detail personeel

1 Open de template Template_rapport_Tex-Mex.pbit. Een nieuw rapport (.pbix-bestand) wordt geopend op basis van de template.

2 Bewaar het bestand onder de naam Analyse_verzuim.pbix

3 Maak verbinding met de opgavebestanden:

g Klik in het lint op Home op > Excel workbook

h Navigeer naar het opgavebestand Personeelsleden.xlsx

i Vink de tabel Personeelsgegevens aan en klik op Transform data.

j Klik in Power Query Editor in het lint op New Source > Text/CSV.

k Navigeer naar het bestand Verzuim.csv en klik op Openen

l Klik op Load

m Herhaal de stappen d tot f voor het bestand Feestdagen.csv.

4 Transformeer:

a Selecteer de tabel Verzuim. Wijzig de querynaam in FactVerzuim. Dubbelklik in de kolomkoppen om de veldnamen te wijzigen en controleer het gegevenstype:

• RR  Personeelslid_ID, type Whole Number

• Tot  Einddatum, type Date

• Van  Startdatum, type Date

b Selecteer de tabel Personeelsgegevens.

• Wijzig de querynaam in DimPersoneelsgegevens

• Verwijder de kolommen Adres, Postcode, Gemeente en E-mailadres

• Wijzig de kolomnaam Rijksregisternr in Personeelslid_ID

• Voeg de kolommen Naam en Voornaam samen. Selecteer de kolommen en klikt in het lint Transform op Merge Columns. Kies een spatie als scheidingsteken. Geef de kolom de naam Personeelslid

c Selecteer de query Feestdagen.

• Wijzig de querynaam in DimFeestdagen.

d Klik op Close & Apply

5 Er wordt automatisch een relatie gedetecteerd tussen het veld Personeelslid_ID van de tabel Personeelsleden en het veld Personeelslid_ID van de tabel Verzuim.

Figuur 17: relatie Personeelslid_ID

6 Maak een datumtabel:

a Stap 1:

• Selecteer de tabelweergave (Table View).

• Klik in het lint op Home > New Table.

• Gebruik de DAX-functie CALENDAR om een datumtabel aan te maken.

Figuur 18: datumdimensietabel

• Wijzig de veldnaam Date in Datumsleutel.

• Wijzig het gegevenstype in Date, korte datumnotatie.

• Voeg een berekende kolom toe om de dag van de week toe te voegen (1 = maandag, 2 = dinsdag, 3 = woensdag enzovoort).

Figuur 19: berekende kolom Weekdagnummer

• Voeg een berekende kolom Jaar toe.

Figuur 20: berekende kolom jaar

• Voeg een berekende kolom Maandnummer toe.

Figuur 21: berekende kolom Maandnummer

• Voeg een berekende kolom Maand toe.

Figuur 22: berekende kolom Maand

• Voeg een berekende kolom Werkdag toe.

Figuur 23: berekende kolom Werkdag

b Stap 2: leg de nodige relaties.

• Selecteer de modelweergave.

• Leg een relatie tussen het veld Datumsleutel (tabel Dimdatumtabel) en het veld Startdatum (tabel Verzuim).

• Leg een relatie tussen het veld Datumsleutel (tabel Dimdatumtabel) en het veld Datum (tabel Feestdagen)

Figuur 24: relaties

c Markeer de datumtabel als Date Table. Ga naar de Table view en selecteer de Dimdatumtabel. Klik in het lint Table Tools op Mark as date table. Selecteer de kolom Datumsleutel.

7 Maak een nieuwe tabel om de metingen te verzamelen.

a Klik in het lint op Home > Enter data.

b Wijzig de tabelnaam in: _Measures.

8 Bereken:

a Het aantal personeelsleden. Maak een nieuwe meting in de tabel _Measures.

Figuur 25: aantal personeelsleden

b Het aantal verzuimdagen (aantal werkdagen verzuim zonder weekends en/of feestdagen):

• Voeg een berekende kolom toe in de tabel FactVerzuim

Figuur 26: berekende kolom aantal verzuimdagen

• Maak een nieuwe meting in de tabel _Measures voor het totale aantal dagen verzuim.

Figuur 27: measure aantal dagen verzuim

Alternatieve oplossing

Maak een meting in de tabel _Measures voor het totaal aantal dagen verzuim:

Figuur 28: aantal verzuimdagen

De tussenstap van de berekende kolom is in dit voorbeeld niet nodig.

c Het verzuimpercentage (= aantal verzuimdagen\aantal werkdagen):

• Bereken het aantal werkdagen. Maak een nieuwe meting in de tabel _Measures

Figuur 29: measure aantal werkdagen

• Bereken het verzuimpercentage (= aantal verzuimdagen\aantal werkdagen). Maak een nieuwe meting in de tabel _Measures.

Notitie

In de oefening houden we geen rekening met verlofdagen.

Figuur 30: measure verzuimpercentage

• Selecteer de measure Verzuimpercentage. Klik in het lint Measure Tools > Formatting op %.

d Verzuimfrequentie (aantal ziektemeldingen). Maak een nieuwe meting in de tabel _Measures.

Figuur 31: measure verzuimfrequentie

e Percentage verzuimers versus niet-verzuimers:

• Bereken het percentage verzuimers. Maak een nieuwe meting in de tabel _Measures

Figuur 32: measure percentage verzuimers

• Selecteer de measure Verzuimpercentage. Klik in het lint Measure Tools > Formatting op %.

• Bereken het percentage niet-verzuimers. Maak een nieuwe meting in de tabel _Measures

Figuur 33: measure percentage niet-verzuimers

• Selecteer de measure Verzuimpercentage. Klik in het lint Measure Tools > Formatting op %.

f Bereken het gemiddeld aantal verzuimdagen per ziekteperiode. Maak een nieuwe meting in de tabel _Measures.

Figuur 34: measure gemiddeld aantal verzuimdagen per ziekteperiode

g Bereken het gemiddeld aantal verzuimdagen per personeelslid. . Maak een nieuwe meting in de tabel _Measures

Figuur 35: measure gemiddeld aantal verzuimdagen per personeelslid

h Bereken de leeftijd van de personeelsleden.

• Voeg een berekende kolom toe in de tabel Personeelsleden

Figuur 36: berekende kolom geboortedatum

Voeg in de tabel Personeelsleden een berekende kolom Leeftijd toe.

Figuur 37: berekende kolom leeftijd

i Bereken de Bradfordfactor. Maak een nieuwe meting in de tabel _Measures

Bradfordfactor Formule: B = S² × D Waarbij:

B = de Bradfordscore

S = het aantal verschillende ziekteperiodes voor een bepaalde medewerker D = het totale aantal dagen ziekte voor een bepaalde medewerker

Meer informatie: blog.officient.io/beter-zicht-op-ziekteverzuim-via-de-bradford-factor

Figuur 38: measure Bradfordfactor

9 Visualiseer:

a Kerncijfers:

• Verzuimpercentage:

Kies de visualisatie Card.

Selecteer de meting Verzuimpercentage

Klik op Format your visual en zet het Category label Off Zet de Title aan: VERZUIMPERCENTAGE, rood, 12 ptn.

Positioneer de visualisatie op het canvas (zie Figuur 15).

• Percentage verzuimers versus niet-verzuimers:

Kopieer de visualisatie Verzuimpercentage. Pas de meting en de titel aan.

Positioneer de visualisaties op het canvas (zie Figuur 15).

• Lijn de visualisaties uit:

Selecteer de drie kerncijfers.

Klik in het lint op Format > Align > Distribute horizontally.

b Evolutie verzuim per periode (jaar, maand):

• Kies de visualisatie Area chart

• Sleep het veld Jaar naar de X-as en het veld Verzuimpercentage naar de Y-as.

• Klik op Format your visual. Pas het nulpunt van de Y-as aan.

Figuur 38: nulpunt aanpassen

• Verwijder de Gridlines: Horizontal en Vertical Off.

• Zet de Markers en Datalabels aan.

• Pas de grootte aan (250 × 450) en positioneer de visualisatie op het canvas (zie Figuur 15).

c Verzuimpercentage per statuut (arbeiders, bediende) per jaar:

• Kies de visualisatie Clustered column chart

• Sleep het veld Jaar naar de X-as, het veld Verzuimpercentage naar de Y-as en het veld Statuut naar de legende.

• Selecteer de visualisatie EVOLUTIE VERZUIM PER JAAR. Klik in het lint Home op de verfborstel om de opmaak te kopiëren. Selecteer de visualisatie Verzuimpercentage by Jaar and Statuut om de opmaak te plakken.

• Pas de titel en subtitel aan:

Titel: VERZUIMPERCENTAGE PER STATUUT

Subtitel: verschillen tussen arbeiders en bedienden

• Pas de grootte aan (250 x 450) en positioneer de visualisatie op het canvas (zie Figuur 15).

d Ziekteduur en frequentie per leeftijdscategorie (groepeer per 10 jaar):

• Groepeer de leeftijd. Klik in het rechterdeelvenster Data op de drie puntjes naast het veld Leeftijd en selecteer de optie New Group., Bin size 10.

Figuur 39: nieuwe groep

• Dupliceer de visualisatie Verzuimpercentage per statuut (CTRL+C, CTRL+V).

• Sleep het veld Leeftijd (bins) naar de X-as, de measures Gemiddeld aantal verzuimdagen per periode en Gemiddeld aantal verzuimdagen per personeelslid naar de Y-as.

• Pas de titel en subtitel aan:

Titel: GEMIDDELD AANTAL VERZUIMDAGEN PER LEEFTIJDSCATEGORIE

Subtitel: ouderen zijn gemiddeld langer ziek dan jongeren, ook de verzuimfrequentie ligt significant hoger bij ouderen

• Pas de grootte aan (250 × 935) en positioneer de visualisatie op het canvas (zie Figuur 15).

e Detail per personeelslid: aantal verzuimdagen, verzuimfrequentie, verzuimpercentage, gemiddeld aantal verzuimdagen per periode en de Bradfordfactor.

• Maak een nieuwe rapportpagina.

• Kies de visualisatie Matrix

• Selecteer de velden: aantal verzuimdagen, verzuimfrequentie, verzuimpercentage, gemiddeld aantal verzuimdagen per periode en de Bradfordfactor.

• Maak de tabel op. Klik in het deelvenster Visualizations op Format your visual:

Style presets: Style None

Grid: Gridlines Off

Grid > Options: Row padding 3.

Column headers: Background color White, 10 % darker.

• Pas de grootte van de tabel aan (500 × 965) en positioneer op het canvas (zie Figuur 15).

f Filters: geslacht, periode, afdeling, functie:

• Geslacht: kies de visualisatie Slicer, Style Tile

Figuur 40: slicer geslacht

• Periode: kies de visualisatie Slicer, Style Between, Slider Off.

Figuur 41: slicer periode

• Afdeling: kies de visualisatie Slicer, Style Dropdown

• Functie: kies de visualisatie Slicer, Style Dropdown

• Pas de grootte aan en positioneer op het canvas (zie Figuur 15).

g Voeg een rapportpagina toe met de definities. Gebruik tekstvakken om de definities toe te voegen.

Begrippenlijst

Begrippen

Begrip

Attribuut

Business analytics

Business intelligence

Business reporting

CSV-bestand

Customer Relationship Management (afgekort: CRM)

Data Analysis eXpressions (afgekort: DAX)

Database

Datawarehouse

Enterprise Resource Planning (afgekort: ERP)

Entiteit

ER-diagram (ERD)

Extract Transform Load (afgekort: ETL)

Hiërarchisch DBMS

Kardinaliteit

Omschrijving

Een entiteit wordt voorgesteld door een verzameling attributen. Mogelijke attributen voor de entiteit student zijn bijvoorbeeld snaam, studnr, straat en woonplaats.

Onderdeel van business intelligence dat de waarom-vraag stelt: Hoe komt het dat de verkoop in een bepaalde periode daalt? Is er een causaal verband tussen de omzet in een regio en de weersomstandigheden?

Gegevens omzetten naar informatie. Deze informatie helpt organisaties bij het nemen en onderbouwen van operationele en strategische beslissingen.

Onderdeel van business intelligence dat de wat-vraag stelt: wat is er verkocht per verkoper, per regio, per product enzovoort.

Kommagescheiden bestand (Comma Separated Values), een oude databaseindeling die enkel alleen bestaat uit tekst waardoor de gegevens gemakkelijk geïmplementeerd (lezen/schrijven) kunnen worden.

Manier waarop een organisatie de relatie en interactie met (potentiële) klanten beheert.

Functies in Power BI.

Gestructureerde verzameling van gegevens.

Centrale opslagplaats van actuele en historische gegevens uit één of meer verschillende bronnen. Deze gegevens worden gebruikt om analytische rapporten te maken voor de volledige organisatie.

Softwarepakket bedoeld om alle verschillende afdelingen binnen een bedrijf in één systeem te brengen (te centraliseren) met behulp van een gemeenschappelijke database. Belangrijke spelers op de markt zijn SAP, Exact en Microsoft.

Een entiteit is een object dat bestaat en onderscheidbaar is van andere objecten. Voorbeelden hiervan zijn: een student, een richting, een docent.

Een ERD is een soort stroomdiagram dat illustreert hoe entiteiten binnen een systeem met elkaar verbonden zijn. ER-diagrammen worden vaak gebruikt om relationele databases te ontwerpen. Een ERD bestaat uit entiteiten, attributen en relaties.

Extract: brondata inlezen. Transform: gegevens aanpassen aan hoe ze gebruikt moeten worden. Load: gegevens ergens naartoe laden (bijvoorbeeld Excel-werkblad).

In een hiërarchische database zijn de modelgegevens georganiseerd in een boomachtige structuur. De gegevens worden hiërarchisch opgeslagen (topdown of bottom-up). De gegevens worden weergegeven met behulp van een ouder-kindrelatie. In een hiërarchisch DBMS kunnen ouders veel kinderen hebben, maar kinderen hebben slechts één ouder.

De kardinaliteit van de relatie beschrijft het aantal records in een tabel dat kan relateren met het aantal records in een andere tabel. Bijvoorbeeld: een richting kan veel studenten hebben, maar een student kan bij maximaal één richting behoren. Kardinaliteit wordt meestal uitgedrukt als een-op, een-opveel, en veel-op-veel.

Begrip

Kritische Prestatie Indicator (afgekort: KPI)

M-taal

Netwerkmodel

Object-georiënteerd model

Query

Relatie

Omschrijving

Managementinstrument dat in één oogopslag de status van een proces laat zien.

Taal in Power Query.

Het netwerkdatabasemodel maakt het mogelijk dat elk kind meerdere ouders heeft. Het helpt om te voldoen aan de behoefte om meer complexe relaties te modelleren.

In een object-georiënteerd model worden gegevens opgeslagen in de vorm van objecten.

Een query (Engels voor vraagstelling) kan omschreven worden als een opdracht die aan een database wordt gegeven om een bepaalde actie uit te voeren, die mogelijk ook gegevens teruggeeft.

Een relatie is een verband tussen verschillende entiteiten. Men kan bijvoorbeeld een relatie definiëren welke 'Sara De Smet' associeert met richting '3GBM'. Deze relatie specificeert dat Sara De Smet een student is die in het derde jaar zit van de opleiding Global Business Management.

Relationeel model

Semantisch model

Structured Query Language (afgekort: SQL)

SQL-server

Relationeel DBMS is het meest gebruikte DBMS-model omdat het een van de gemakkelijkste is. Dit model is gebaseerd op het normaliseren van gegevens in de rijen en kolommen van de tabellen. Een relationeel model wordt opgeslagen in vaste structuren en gemanipuleerd met behulp van SQL.

Vertaling van een technische database-implementatie in een voor de eindgebruiker leesbaar en begrijpelijk model dat bruikbaar is voor wie niet over (veel) technische kennis beschikt

SQL (Structured Query Language, spreek uit ‘S-Q-L’ of ‘Sequel’) is een ANSI/ISO-standaardtaal voor een relationeel databasemanagementsysteem. Het is een gestandaardiseerde taal die gebruikt kan worden voor taken zoals het bevragen en het aanpassen van gegevens in een relationele database.

Relationeel databasebeheerssysteem (RDBMS) ontwikkeld door Microsoft en veel gebruikt in het bedrijfsleven.

DAX-functie Excelfunctie

ALL - Filterfunctie

CALCULATE - Filterfunctie

CALENDAR - Datum- en tijdfunctie

Geeft als resultaat alle rijen in een tabel, of alle waarden in een kolom, zonder rekening te houden met filters die eventueel zijn toegepast. Deze functie is nuttig voor het opheffen van filters en het maken van berekeningen op alle rijen in een tabel.

Maakt een berekening rekening houdend met de ingestelde filters.

Geeft als resultaat een tabel met één kolom met de naam Date die een aaneengesloten set data bevat. Het bereik van de data is vanaf de opgegeven begindatum tot en met de opgegeven einddatum, inclusief die twee data.

COUNT AANTAL Aggregatiefunctie Telt het aantal cellen in een bereik dat getallen bevat.

DATEADD - Tijdintelligentiefunctie

Geeft als resultaat een tabel met een kolom met datums, verschoven naar voren of naar achteren in de tijd met het opgegeven aantal intervallen vanaf de datums in de huidige context.

DATESYTD - Tijdintelligentiefunctie Datums voor jaar-tot-datum.

DATESMTD - Tijdintelligentiefunctie Datums voor maand-tot-datum.

FILTER - Filterfunctie Retourneert een tabel die een subset van een andere tabel of expressie vertegenwoordigt.

IF IF/ALS Logische functie Controleert een voorwaarde en geeft één waarde terug als die WAAR is, anders geeft ze een tweede waarde terug.

RELATED XLOOKUP/ XZOEKEN

Relatiefunctie Geeft een gerelateerde waarde uit een andere tabel.

SUM SUM/SOM Aggregatiefunctie Telt het aantal getallen in een kolom op.

SUMMARIZECOLUMNS Tabelfunctie Bouwt een samenvattende tabel op, automatisch rekening houdend met filters.

SUMX - Aggregatiefunctie Berekent een waarde voor elke rij in een tabel en geeft het totaal als resultaat.

SWITCH SWITCH/ SCHAKELEN Logische functie Evalueert een expressie aan de hand van een lijst van waarden en geeft een van de vele mogelijke resultaten terug.

TOPN

Tabelfunctie Geeft als resultaat de bovenste N rijen van de opgegeven tabel.

TRUE Logische functie Geeft als resultaat de logische waarde TRUE of WAAR.

YEAR YEAR/JAAR

Datum- en tijdfunctie Geeft het jaartal uit een datum.

FAQ-lijst

1 Een bestand is niet compatibel met mijn versie van Power BI Desktop

Power BI Desktop evolueert razendsnel. Het is mogelijk dat een Power BI-bestand niet compatibel is met de versie die op je computer geïnstalleerd is.

Figuur 1: dialoogvenster

1 Klik op de link om de nieuwste versie van Power BI Desktop te installeren (zie het hoofdstuk ‘Power BI Desktop’).

2 DataSource.Error: Kan het netwerkpad niet vinden

Stel dat je de brongegevens naar een andere locatie op je computer of server hebt verplaatst en je wilt vernieuwen. Dan kan Power BI het pad niet meer terugvinden. In dat geval moet je opnieuw verbinding maken met de gegevensbronnen.

1 Klik in het lint op Home > Transform data. Je krijgt de foutmelding ‘DataSource.Error’.

Figuur 2: foutmelding

2 Klik in het lint op Data source settings.

Figuur 3: data source settings

3 In het dialoogvensters Data source settings kun je het pad naar de gegevensbron aanpassen. Selecteer de gegevensbron die je wilt vernieuwen en klik op Change Source

Figuur 4: change source

4 Navigeer naar het juiste pad en klik op OK.

Figuur 5: file path

5 Herhaal dit voor alle gegevensbronnen met het uitroepteken naast de bestandsnaam.

Belangrijk! Zorg dat je telkens het juiste bronbestand selecteert voor je navigeert naar de bron.

Ook als je de oefenbestanden gedownload hebt van www.mijnstudiemateriaal.be, moet je opnieuw verbinding maken met de bronbestanden. De locatie van de bronbestanden is immers gewijzigd.

Van zodra je opnieuw verbinding gemaakt hebt met het bronbestand Database_Tex-Mex_Excel.xlsx worden alle tabellen uit de werkmap bijgewerkt. Je hoeft deze stap dus niet te herhalen voor alle tabellen.

3 Verbinding met een webpagina vernieuwen

Als Power BI problemen heeft om verbinding te maken met de webpagina, zie je in het linkerdeelvenster een uitroepteken staan naast de query. In het middelste deelvenster volgt meer informatie over de waarschuwing.

Figuur 6: verbinding herstellen

1 Klik op Edit Credentials.

Figuur 7: dialoogvenster Access Web Content

2 Klik op Connect om opnieuw verbinding te maken.

4 Een Access-bestand kan niet geladen worden

Als je een Access-database wilt laden in Power BI Desktop, kun je de volgende foutmelding krijgen:

Figuur 8: unable to connect

Het is mogelijk dat je een foutmelding krijgt als je probeert om verbinding te maken met de Accessdatabase. In Power BI Desktop maken zowel Access-databases als vroege versies van Excel-werkmappen (.XLS bestanden van het type Excel 97-2003) gebruik van de Access Database Engine. We lichten twee veel voorkomende situaties die kunnen voorkomen dat de Access Database Engine goed werkt toe.

4.1 Situatie 1: de Access Database Engine is niet geïnstalleerd

Als de Power BI Desktop foutmelding aangeeft dat de Access Database Engine niet is geïnstalleerd, moet je de Access Database Engine-versie installeren, ofwel 32-bits ofwel 64-bits, die overeenkomt met je Power BI Desktop versie. Je kunt de Access Database Engine installeren vanaf de downloadpagina: https://www.microsoft.com/en-us/download/details.aspx?id=13255.

Figuur 9: download Microsoft Access Database Engine

1 Selecteer de versie die je wilt installeren:

Figuur 10: selecteer versie

2 Controleer vooraf de bitsversie van Power BI Desktop: File > Help > About.

Figuur 11: bitsversie Power BI

3 Klik op Next om de Access Database Engine te installeren.

4.2 Bitsversie MS Office

Standaard wordt de 32 bitsversie van MS Office geïnstalleerd, tenzij je voorafgaand aan het installatieproces expliciet de 64 bitsversie selecteert. Hoogstwaarschijnlijk heb je dus de 32 bitsversie van MS Office op je computer.

Als de 64 bitsversie van Power BI Desktop geïnstalleerd is, leidt dat tot een conflict. De beide versies moeten gelijk zijn. Aangezien de bitsversie van Power BI Desktop overeenstemt met de bitsversie van je besturingssysteem (Windows), installeer je het best ook de 64 bitsversie van MS Office.

Als je de 32 bitsversie al hebt geïnstalleerd, maar de 64 bitsversie wilt installeren, verwijder je de ongewenste versie (via Programma’s installeren of verwijderen) voor je de gewenste versie installeert.

Mogelijk heb je daartoe de hulp nodig van de IT-dienst van je organisatie.

Je kunt de bitsversie van MS Office als volgt controleren:

1 Open een Office-toepassing, bijvoorbeeld MS Excel.

2 Klik op File > Account.

3 Klik op de knop Info over Excel.

Figuur 12: productgegevens

4 In het dialoogvenster zie je het nummer van de volledige versie en de bitsversie (32 bits of 64 bits):

13: bitsversie

Figuur

Je kunt de bitsversie van Power BI Desktop als volgt controleren:

File > Help > About.

Figuur 14: bitsversie Power BI

5 Unable to open document

Als jouw versie van Power BI ouder is dan de versie waarin de oefenbestanden gemaakt zijn, krijg je de volgende melding:

Figuur 15: Unable to open document

Klik op Close. Het bestand opent, maar mogelijk kunnen bepaalde querystappen niet uitgevoerd worden doordat je met een oudere versie werkt.

Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.