Power BI,Power Pivot, DAX dynamischen Kalender erstellen

in Power BI Desktop in die Modellansicht wechseln,

neue Tabelle -> DAX einfügen: 

--- SCHNIPP --- 

Kalender_DAX = 

 //VAR StartDatum = EDATE(TODAY(),-48)

 //VAR EndDatum = EDATE(TODAY(),48)

 //VAR StartDatum =DATE(2013,1,1)

 //VAR EndDatum = DATE(2014,12,31)

 //oder mit DAX Funktionen FIRSTDATE,LASTDATE 


 VAR StartDatum = FIRSTDATE(Min_Datum[Min_Datum])

 VAR EndDatum = LASTDATE(Max_Datum[Max_Datum])

 

 RETURN

    ADDCOLUMNS(

        CALENDAR(StartDatum,EndDatum),

        "Jahr", YEAR([Date]),

        "Jahr Monat", YEAR([Date])  &"."& MONTH([Date]),

        "Quartal", QUARTER([Date]),

        "Monat", MONTH([Date]),

        "Monatsname", FORMAT(MONTH([Date]),"mmmm"),

        "Tag", DAY([Date]),

        "KW", WEEKNUM([Date],1),

        "Datum Datenschnitt", IF([Date]=TODAY(), "HEUTE",

                            IF([Date] = TODAY()-1, "Gestern",

                            FORMAT([Date],"dd.mm.yyyy")

                            )

    )

)

--- SCHNAPP ---


DAX Kalender mit Geschäftsjahr

(hier auf Basis Abfrage (Power Query) Name financials, Feldname [Date],
entsprechend anpassen bei Übernahme in eigenes Datenmodell)


--- SCHNIPP ---

Kalender_GJ_DAX =
VAR FirstFiscalMonth = 4 -- Erster Monat des Geschäftsjahres GJ
VAR FirstDayOfWeek = 1   -- 0 = Sonntag, 1 = Montag, ...
VAR FirstYear =          -- setzt das erste Jahr
    YEAR ( MIN ( financials[Date]  ))
RETURN
GENERATE (
    FILTER (
        CALENDARAUTO (),
        YEAR ( [Date] ) >= FirstYear
    ),
    VAR Yr = YEAR ( [Date] )            -- Jahr Nummer
    VAR Mn = MONTH ( [Date] )           -- Monat Nummer (1-12)
    VAR Qr = QUARTER ( [Date] )         -- Quartal Nummer (1-4)
    VAR MnQ = Mn - 3 * (Qr - 1)         -- Monat im Quartal (1-3)
    VAR Fyr =                           -- Geschäftsjahr Nummer
        Yr + 1 * ( FirstFiscalMonth > 1 && Mn >= FirstFiscalMonth )
    VAR Fqr =                           -- Geschäftsjahres Quartal (Zeichen)
        FORMAT ( EOMONTH ( [Date], 1 - FirstFiscalMonth ), "\QQ" )
    RETURN ROW (
        "KJ Enddatum", DATE ( Yr, 12, 31 ),
        "Quartal KJ", FORMAT ( [Date], "\QQ-YYYY" ),
        "KJ Quartal kurz", FORMAT ( [Date], "\QQ" ),
        "KJ Quartal Enddatum", EOMONTH ( [Date], 3 - MnQ ),
        "KJ Monatsende", EOMONTH ( [Date], 0 ), -- Monat Enddatum
        "KJ Monatsanfang", EOMONTH ( [Date], -1 ) + 1, -- Monat Startdatum
        "GJ Enddatum", DATE ( Fyr + (FirstFiscalMonth = 1), FirstFiscalMonth, 1 ) - 1,
        "GJ Quartal kurz", Fqr,
        "GJ Quartal Enddatum", EOMONTH ( [Date], 3 - MnQ ),
        "GJ", (Fyr - 1) & "/"& Fyr
    )
)


--- SCHNAPP ---


Kommentare

Beliebte Posts aus diesem Blog

Vergleich mit 2 Bedingungen, INDEX(), VERGLEICH()

Dropdown Liste mit Mehrfachauswahl

nützliche Text Funktionen in Power Query