Posts

Power Query, Vorgänger Nachfolger, Index

Bild
Anhand von Datensätzen einer fiktiven Strukturstückliste soll im Folgenden ein Weg mit Power Query aufgezeigt werden, wie man mittels der Index Funktion Vorgänger und Nachfolger ermitteln kann, um zB zwischen Endprodukten, Baugruppen und Komponenten unterscheiden zu können. Ausgangsstruktur Zielstruktur 1 benutzerdefinierte Spalte hinzufügen [Ebene_Zahl] := Value.FromText(Text.End([Stuecklisten_Ebene],1)) 2 Index Spalte hinzufügen 3 weitere benutzerdefinierte Spalten hinzufügen [Vorgaenger_Wert] : = try #"Hinzugefügter Index"[Ebene_Zahl]{[Index]-1} otherwise 0 [Nachfolger_Wert] : = try #"Hinzugefügter Index"[Ebene_Zahl]{[Index]+1} otherwise 0 [Materialklasse] : = if [Ebene_Zahl] = 1 then "Endprodukt" else  if [Ebene_Zahl] = [Vorgaenger_Wert] or [Ebene_Zahl] = [Nachfolger_Wert] then "Komponente" else  "Baugruppe" siehe auch hier

Sharepoint, verweissensitive Grafik, Image Map einbinden

Tags < img src= "Hier steht die URL des Bildes" alt = "alternativer Titel"       width= "345"      height= "312"       usemap ="#Landkarte" > <map name ="Landkarte">  < area shape= "rect" coords= "255,132,316,150" href= "Verweisziel" title= "Titel"> </map> erforderliche Attribute: shape= : Festlegung der Flächenform shape= "rect" : rechteckige Fläche shape= "circle" Kreis shape= "poly" beliebiges Vieleck coords= : Angabe Koordinaten der verweis-sensitiven Flächen. Pixelangaben = absolute Werte innerhalb der Grafik, welche verweis-sensitiv sein sollen. Alle Pixelwerte werden durch Kommata getrennt. Beispiel: Viereck (shape="rect") = Koordinaten für x1,y1,x2,y2 x1 = linke obere Ecke, Pixel von links y1 = linke obere Ecke, Pixel von oben x2 = rechte untere Ecke, Pixel von links y2 = recht...

Power Pivot, GANTT Darstellung

Bild
Im folgenden wird beschrieben, wie man mit Power Pivot eine dynamische Gantt-Darstellung erstellen kann 1 Ausgangstabelle [tbl_Aufgaben] erstellen und zu Datenmodell hinzufügen 2 Tabelle für einzelne Tage [tbl_Tage] erstellen und in Datenmodell hinzufügen 3 folgende Spalten im Datenmodell  zu [tbl_Aufgaben] hinzufügen: [Status] =IF(tbl_Aufgaben[Prozent_Fortschritt]=1;"abgeschlossen";IF(tbl_Aufgaben[Ende]<TODAY() && tbl_Aufgaben[Prozent_Fortschritt]<1;"überfällig";"offen") [Faktor] =SWITCH(tbl_Aufgaben[Status];"abgeschlossen";2;"überfällig";-1;1) [Prozent] =IF(tbl_Aufgaben[Prozent_Fortschritt]=BLANK();0;tbl_Aufgaben[Prozent_Fortschritt]*100) & "%" 4 Datumstabelle [Kalender] im Datenmodell erstellen, mit [tbl_Tage] verknüpfen (hier: Felder [Kalender].[Wochentag] N, [tbl_Tage].[Tag] 1) und [Kalender] um folgende Spalten ergänzen [Woche_endet_am] =DATEADD(Kalender[Date];RE...

Power Pivot, DAX,DATEADD(), Periodenvergleiche, YearOverYear, QuarterOverQuarter, MonthOverMonth

Bild
Periodenvergleiche können mit Excel Power Pivot mit der DAX Funktion DATEADD() umgesetzt werden Beispiel [Faktentabelle] 1 [Datumstabelle] mit Power Pivot erstellen 2 [Faktentabelle] und [Datumstabelle] über Datumsfeld verknüpfen 3 Measures in Faktentabelle anlegen Wert_Vorjahr:=CALCULATE ( SUM ( Tabelle1[Wert] ); DATEADD ( Kalender[Date]; -1; YEAR ) ) Wert_Vorvorjahr:=CALCULATE ( SUM ( Tabelle1[Wert] ); DATEADD ( Kalender[Date]; -2; YEAR ) ) Wert Vorquartal:=CALCULATE ( SUM ( Tabelle1[Wert] ); DATEADD ( Kalender[Date]; -1; QUARTER ) ) Wert Vormonat:=CALCULATE ( SUM ( Tabelle1[Wert] ); DATEADD ( Kalender[Date]; -1; MONTH ) ) 4 Ergebnis (Pivottabelle, vereinfachte Pivottabelle) Quelle https://powerpivotinsights.de/dateadd/ alternativ (getestet mit Power BI Desktop) DAX  YoY(Jahresvergleich) =   var _prev =   IF (   NOT ( ISBLANK ( [Umsatz] )),   CALCULATE ( [Umsatz] , PREVIOUSYEAR ( Kalender_DAX [Date] )  ))   RETURN...

Power Pivot, Segment Analyse

Bild
Lern Video Im folgenden wird eine Methode aufgezeigt, wie man mittels Power Pivot und einem Measure eine dynamische Segment Analyse durchführen kann. Ziel dabei ist es, die Anzahl der Aufträge je Datum nach ihrem Auftragswert zu segmentieren (Segmente Datenschnitt [Display] und zu analysieren (Pivottabelle, analytischer Bericht) 1 Tabelle mit Segmenten anlegen und ins Power Pivot Modell übernehmen 2 Datumstabelle in Power Pivot anlegen und Verknüpfung über Feld [Datum] (hier: [Bestelldatum], [Date] N:1) herstellen 3 Measure in Power Pivot anlegen Anzahl Aufträge segmentiert:=IF (     HASONEVALUE ( tbl_Segment[ID] );     COUNTROWS (         FILTER (             tbl_Auftragsdaten;             tbl_Auftragsdaten[Auftragswert] < VALUES ( tbl_Segment[bis] )         )     );     BLANK () ) 4 Pivot Tabelle auf Basis Power P...

Power Query, laufender Index innerhalb einer Gruppe, Gruppenindex

Bild
Aufgabe: laufenden Index innerhalb einer Gruppe (hier: [Bestellnummer]) erstellen.  Nach Gruppenwechsel  (hier: von Bestellnummer 500000000 zu 6000000000)  fängt der Index wieder bei 1 an 1 Gruppieren, neuer Spaltenname [Daten] 2 benutzerdefinierte Spalte [Gruppenindex] hinzufügen =Table.AddIndexColumn([Daten], "Index", 1, 1) 3 Spalte [Daten] entfernen 4 Spalte [Gruppenindex] erweitern Praxisbeispiel SAP ERP Tabelle MVER (Verbrauchsdaten) Language M Code --- SCHNIPP --- let     Quelle = Excel.CurrentWorkbook(){[Name="tbl_SAP_MVER"]}[Content],     #"Entpivotierte Spalten" = Table.UnpivotOtherColumns(Quelle, {"Material", "Jahr", "Periode", "Zeile"}, "Attribut", "Wert"),     Spalte_Verbrauch_hinzufuegen = Table.AddColumn(#"Entpivotierte Spalten", "Verbrauch", each "Verbrauch"),     Spalte_Attribut_entfer...

Power Query, Anzahl Zeichen in einem Text ermitteln

Bild
Mit folgender benutzerdefinierten Funktion kann die Anzahl Zeichen in einem Text (string) ermittelt werden: fxAnzahlZeichen ---- SCHNIPP (string as text, zeichen as text) => let   ListObjectZeichen=Text.ToList(string),   Loop=List.Accumulate(ListObjectZeichen,                        0,                        (state, current) => if current = zeichen                                            then state + 1                                            else state                        ) in   Loop ---- SCHNAPP Anwendungsbeispiel Ordnerpfad aus einem Dateip...