Delen via


DATESINPERIOD

Van toepassing op:berekende kolomberekende tabelMetingVisuele berekening

Notitie

Deze functie wordt afgeraden voor gebruik in visuele berekeningen omdat deze waarschijnlijk betekenisloze resultaten oplevert.

Retourneert een tabel die een kolom met datums bevat die begint met een opgegeven begindatum en doorgaat voor het opgegeven aantal en het type datumintervallen.

Deze functie is geschikt om als filter door te geven aan de CALCULATE functie. Gebruik deze om een expressie te filteren op standaarddatumintervallen, zoals dagen, maanden, kwartalen of jaren.

Syntaxis

DATESINPERIOD(<dates>, <start_date>, <number_of_intervals>, <interval>)

Parameters

Term Definitie
dates Een datumkolom.
start_date Een datumexpressie.
number_of_intervals Een geheel getal dat het aantal intervallen aangeeft dat moet worden toegevoegd aan of afgetrokken van de datums.
interval Het interval waarmee de datums moeten worden verplaatst. De waarde voor interval kan een van de volgende zijn: DAY, MONTH, QUARTERen YEAR

Retourwaarde

Een tabel met één kolom met datumwaarden.

Opmerkingen

  • In het meest voorkomende gebruiksvoorbeeld is dates een verwijzing naar de datumkolom van een gemarkeerde datumtabel.

  • Als het opgegeven getal voor number_of_intervals positief is, worden datums naar voren verplaatst in de tijd; als het getal negatief is, worden datums achteruit in de tijd verschoven.

  • De parameter interval is een opsomming. Geldige waarden zijn DAY, MONTH, QUARTERen YEAR. Omdat het een opsomming is, worden waarden niet doorgegeven als tekenreeksen. Plaats ze dus niet tussen aanhalingstekens.

  • De geretourneerde tabel kan alleen datums bevatten die zijn opgeslagen in de kolom dates. Als de kolom dates bijvoorbeeld begint vanaf 1 juli 2017 en de start_date waarde 1 juli 2016 is, begint de geretourneerde tabel vanaf 1 juli 2017.

  • Deze functie wordt niet ondersteund voor gebruik in de DirectQuery-modus wanneer deze wordt gebruikt in regels voor beveiliging op rijniveau (berekende kolommen of beveiliging op rijniveau).

Voorbeeld

In de volgende definitie van de tabelmeting Sales wordt de functie DATESINPERIOD gebruikt om de omzet voor het vorige jaar (PY) te berekenen.

U ziet dat de formule gebruikmaakt van de functie MAX. Deze functie retourneert de laatste datum die zich in de filtercontext bevindt. De functie DATESINPERIOD retourneert dus een tabel met datums vanaf de laatste datum voor het afgelopen jaar.

Voorbeelden in dit artikel kunnen worden gebruikt met het voorbeeldmodel Adventure Works DW 2020 Power BI Desktop. Zie DAX voorbeeldmodelom het model op te halen.

Revenue PY =
CALCULATE(
    SUM(Sales[Sales Amount]),
    DATESINPERIOD(
        'Date'[Date],
        MAX('Date'[Date]),
        -1,
        YEAR
    )
)

Houd er rekening mee dat het rapport wordt gefilterd op de maand juni 2020. De functie MAX retourneert 30 juni 2020. De functie DATESINPERIOD retourneert vervolgens een datumbereik van 1 juli 2019 tot 30 juni 2020. Het is een jaar met datumwaarden vanaf 30 juni 2020 voor het afgelopen jaar.

time intelligence-functies (DAX)datum- en tijdfuncties (DAX)DATESBETWEEN functie (DAX)