13.10. deep dive power query und „m“...fit für mittelschweres power query trekking...
TRANSCRIPT
![Page 1: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/1.jpg)
Munich Office Group
12.10.13.10.
2018
Mit freundlicher Unterstützung von:
Deep Dive Power Query und „M“Über die Benutzeroberfläche hinaus
Track #3: Power & Co.
![Page 2: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/2.jpg)
Munich Office Group
12.10.13.10.
2018
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
Vorstellen
Hans Peter Pfister • Jahrgang 1973, 2 Kinder, Schweizer
• Partner, CFO und Lead BI / AnalyticsWAGNER AG Informatik Dienstleistungen, Schweiz
• Co-Leader Power BI PUG Switzerland, Speaker• über 25 Jahren Erfahrung in Datenanalyse & Reporting
• dipl. Experte Controlling & Rechnungslegung • Dipl. Bankfachexperte• Microsoft Certified Professional & MCSA “BI Reporting”• Blog www.PowerBI-Pro.com• [email protected]
![Page 3: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/3.jpg)
Munich Office Group
12.10.13.10.
2018Wer sind die Teilnehmer?
• BI / Reporting Professional?
• Business User (Controlling / Finance, Marketing, anderes?)
• Erfahrung mit Power Query?- keine, erste, längere, Profi, Ninja?
• Erfahrungen mit Power BI?
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
![Page 4: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/4.jpg)
Munich Office Group
12.10.13.10.
2018Anforderungen an die Teilnehmer
➢ Fit für mittelschweres Power Query Trekking
➢ Leidensfähigkeit für lange Monologe notwendig
Es gibt keine Umkehr. Die Türen sind geschlossen!
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
![Page 5: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/5.jpg)
Munich Office Group
12.10.13.10.
2018Agenda
• Einleitung
• Einführung „M“
• Code Aufbau
• Dynamischer Kalender
• Funktionen erstellen
• Abschluss & Fragen
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
![Page 6: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/6.jpg)
Munich Office Group
12.10.13.10.
2018
Einleitung
![Page 7: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/7.jpg)
Munich Office Group
12.10.13.10.
2018Einleitung
Power Query vereinfacht den Datenimport und -transformationen erheblich!
Vorbei die Zeiten von Importen und Transformationen durch• SQL Statements, • VBA Scripts, • Access oder Exceldateien (?!) als Datenbank• copy & paste• usw.
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
![Page 8: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/8.jpg)
Munich Office Group
12.10.13.10.
2018Einsatzgebiete Power Query
• Excel• Power BI• SQL Server Analysis Services (SSAS) ab 2017• Common Data Service (CDS)• Common Data Services for Apps (CDS-A)• Power BI Dataflows
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
![Page 9: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/9.jpg)
Munich Office Group
12.10.13.10.
2018Power BI – Design PhasenDaten
importieren
➢ Quellen anbinden
➢ Daten importieren
Web logsSocial Media
ERPCRMLOB Files
Daten modellieren
➢ Beziehungen➢ Berechnete
Spalten/Tabellen➢ Measures➢ Formatieren➢ usw.
Daten visualisieren
➢ Charts, Tabellen➢ Filtern➢ Datenschnitte➢ Drill down➢ Drill through➢ usw.
Reports veröffentlichen
➢ Power BI Service➢ Power BI
Mobil App➢ Embed➢ Zusammenarbeit➢ usw.
Daten bearbeiten
➢ Bereinigen➢ Transformieren➢ Filtern➢ Anreichern➢ Zusammenfügen➢ usw.
Power Query DAX
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
![Page 10: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/10.jpg)
Munich Office Group
12.10.13.10.
2018Grenzen der Benutzeroberfläche• Power Query hat 681 Funktionen (Stand Juli 2018)
=> #shared oder http://bit.ly/PQ_Code
• nicht alle Funktionen über die Benutzeroberfläche erreichbar
• Es gibt Anforderungen, die «M» benötigen, wie z.B.
=> Spalten hinzufügen mit eigener Logik
=> «if then else» Befehle mit mehreren Bedingungen
=> Fehlerroutinen
=> wiederverwendbare, eigene Funktionen – sehr nützlich!
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
![Page 11: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/11.jpg)
Munich Office Group
12.10.13.10.
2018
Einführung «M»
![Page 12: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/12.jpg)
Munich Office Group
12.10.13.10.
2018Was ist «M»?
• Sprache hinter Power Query• Alle Arbeitsschritte = «M» Code• funktionale Sprache• «M» / Power Query ist faul resp. effizient
=> nicht benötigte Schritte werden ignoriert!• Arbeitsschritte wiederverwendbar• case sensitive => gRoSs- & kLeInScHrEiBuNg
beachten!
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
![Page 13: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/13.jpg)
Munich Office Group
12.10.13.10.
2018Demo – einfache Beispiel
• Einführungsbeispiele
• Statischer Kalender ab Exceltabelle
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
![Page 14: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/14.jpg)
Munich Office Group
12.10.13.10.
2018
Code Aufbau
![Page 15: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/15.jpg)
Munich Office Group
12.10.13.10.
2018Aufzeichnung der Arbeitsschritte
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
![Page 16: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/16.jpg)
Munich Office Group
12.10.13.10.
2018Code Aufbau
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
• let => Beginn einer normalen Abfrage
• in => kennzeichnet Ende der Abfrage
![Page 17: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/17.jpg)
Munich Office Group
12.10.13.10.
2018Code Aufbau - Variablen
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
![Page 18: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/18.jpg)
Munich Office Group
12.10.13.10.
2018Code Aufbau - Variablen• Variablen = Arbeitsschritte
• Gültige Variablennamen – keine Leerzeichen, keine Zahlen zu Beginn
• «Heilung» durch # " "
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
![Page 19: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/19.jpg)
Munich Office Group
12.10.13.10.
2018«M» Code Beispiel
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
letQuelle = Excel.CurrentWorkbook(){[Name="Zeitreihe"]}[Content],
#"Geänderter Typ" = Table.TransformColumnTypes(Quelle,{{"Datum", type date}}),
#"Jahr eingefügt" = Table.AddColumn(#"Geänderter Typ", "Jahr“,each Date.Year([Datum]), type number),
#"Monat eingefügt" = Table.AddColumn(#"Jahr eingefügt", "Monat“, each Date.Month([Datum]), type number),
#"Quartal eingefügt" = Table.AddColumn(#"Monat eingefügt", "Quartal“, each Date.QuarterOfYear([Datum]), type number)
in#"Quartal eingefügt"
Beginn Abfrage
Variablen
Funktionen
Zeilenende
Bezug auf vorherige Variable (Arbeitsschritt)
Parameter
Ende der Abfrage
![Page 20: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/20.jpg)
Munich Office Group
12.10.13.10.
2018Verfügbare Funktionen
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
• Power Query hat 681 Funktionen (Stand Juli 2018) => #shared oder http://bit.ly/PQ_Code
![Page 21: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/21.jpg)
Munich Office Group
12.10.13.10.
2018Reihenfolge der Arbeitsschritte
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
![Page 22: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/22.jpg)
Munich Office Group
12.10.13.10.
2018Lazy Evaluation
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
![Page 23: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/23.jpg)
Munich Office Group
12.10.13.10.
2018Code Kommentierung
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
![Page 24: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/24.jpg)
Munich Office Group
12.10.13.10.
2018Spezialzeichen
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
• Eckige Klammer => Bezug auf Spalten
• Geschweifte Klammern => Bezug auf Felder
![Page 25: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/25.jpg)
Munich Office Group
12.10.13.10.
2018
Dynamischer
Kalender
![Page 26: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/26.jpg)
Munich Office Group
12.10.13.10.
2018Warum ein Kalender?
• Jede Auswertung, welche einen Zeitbezug hat, muss über chronologisch fortlaufende Kalenderdaten verfügen
• Der Ansatz, in der Transaktionstabelle für jeden Eintrag die entsprechenden Spalten (wie Jahr, Monat, Quartal usw.) anzufügen, funktioniert nur für Modelle mit 1 Tabelle!
Grundsatz:Alle beschreibende Daten (wie Kunden, Kalender, Produkte, Ortschaften usw.) erhalten eine eigene Tabelle (Dimension)!
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
![Page 27: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/27.jpg)
Munich Office Group
12.10.13.10.
2018
Funktionen
![Page 28: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/28.jpg)
Munich Office Group
12.10.13.10.
2018Funktionen
• Netto-Arbeitstage
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
![Page 29: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/29.jpg)
Munich Office Group
12.10.13.10.
2018
Zusammenfassung
![Page 30: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/30.jpg)
Munich Office Group
12.10.13.10.
2018Repetition Code Aufbau
• Jede Abfrage (Query) ist ein einzelner Ausdruck, der einen Wert zurück gibt => kann auch eine Tabelle oder Liste sein
• Jede Abfrage beginnt mit «let», gefolgt von einer Reihe von Variablen• Die Variablen sind die benannten Arbeitsschritte auf der Oberfläche• Jede Variablendeklaration endet mit einem Komma• Vor «in» darf kein Komma stehen!• Der Ausdruck hört mit «in» und dem gewünschten Output (meistens
letzter Arbeitsschritt) auf • Innerhalb der Abfrage ist jede Variablen wiederholt ansprechbar
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus
![Page 31: 13.10. Deep Dive Power Query und „M“...Fit für mittelschweres Power Query Trekking Leidensfähigkeit für lange Monologe notwendig Es gibt keine Umkehr. Die Türen sind geschlossen!](https://reader036.vdocuments.net/reader036/viewer/2022081401/5f0607aa7e708231d415f0fa/html5/thumbnails/31.jpg)
Munich Office Group
12.10.13.10.
2018
Vielen Dank für Ihre Aufmerksamkeit!
Mit freundlicher Unterstützung von:
Deep Dive Power Query und "M" - Über die Benutzeroberfläche hinaus