VAR

Egy kifejezés eredményét névvel ellátott változóként tárolja, amelyet aztán argumentumként átadhat más mértékkifejezéseknek. Ha az eredményül kapott értékek egy változókifejezéshez lettek kiszámítva, ezek az értékek nem változnak, még akkor sem, ha a változóra egy másik kifejezés hivatkozik.

Syntax

VAR <name> = <expression>  

Parameters

Időszak Definíció
név A változó neve (azonosító).
A határolójelek nem támogatottak. A "varName" vagy a [varName] például hibát eredményez.
Támogatott karakterkészlet: a-z, A-Z, 0-9.
A 0-9 nem érvényes első karakterként.
__ (dupla aláhúzás) az azonosító nevének előtagjaként engedélyezett.
Más speciális karakterek nem támogatottak.
A fenntartott kulcsszavak nem engedélyezettek.
A meglévő táblák neve nem engedélyezett.
Üres szóközök nem engedélyezettek.
Kifejezés DAX-kifejezés, amely skaláris vagy táblaértéket ad vissza.

Visszaadott érték

Névvel ellátott változó, amely a kifejezés argumentumának eredményét tartalmazza.

Remarks

  • A VAR argumentumként átadott kifejezések tartalmazhatnak egy másik VAR-deklarációt is.

  • Változóra való hivatkozáskor:

    • A mértékek nem hivatkozhatnak a mértékkifejezésen kívül definiált változókra, de hivatkozhatnak a kifejezésben definiált funkcionális hatókörváltozókra.
    • A változók mértékekre hivatkozhatnak.
    • A változók hivatkozhatnak korábban definiált változókra.
    • A táblaváltozók oszlopai nem hivatkozhatók TableName[ColumnName] szintaxissal.
  • A VAR használata során ajánlott eljárásokért lásd : Változók használata a DAX-képletek javításához.

  • Ha többet szeretne megtudni arról, hogy a VAR hogyan használható a DAX-lekérdezésekben, tekintse meg a DAX-lekérdezéseket.

Példa

Ha egy változó használata nélkül szeretné kiszámítani az évközi növekedés százalékos arányát, három külön mértéket hozhat létre. Ez az első mérték kiszámítja az értékesítési összeg összegét:

Sum of SalesAmount = SUM(SalesTable[SalesAmount])  

Egy második mérték kiszámítja az előző év értékesítési összegét:

SalesAmount PreviousYear =
    CALCULATE([Sum of SalesAmount],
    SAMEPERIODLASTYEAR(Calendar[Date])
    )  

Ezután létrehozhat egy harmadik mértéket, amely a másik két mértéket kombinálva kiszámítja a növekedési százalékot. Figyelje meg, hogy a SalesAmount mértéket két helyen használja a rendszer; először állapítsa meg, hogy van-e értékesítés, majd ismét egy százalék kiszámításához.

Sum of SalesAmount YoY%: = 
    IF([Sum of SalesAmount] ,  
        DIVIDE(([Sum of SalesAmount] – [SalesAmount PreviousYear]), [Sum of SalesAmount])
    )  

Egy változó használatával egyetlen mérték hozható létre, amely ugyanazt az eredményt számítja ki:

YoY% = VAR Sales = SUM(SalesTable[SalesAmount])  

VAR SalesLastYear =
    CALCULATE ( SUM ( SalesTable[SalesAmount] ), SAMEPERIODLASTYEAR ( 'Calendar'[Date] ) )

    return if(Sales, DIVIDE(Sales – SalesLastYear, Sales))  

Egy változó használatával ugyanazt az eredményt érheti el, de olvashatóbb módon. Mivel a kifejezés eredménye a változóban van tárolva, a mérték teljesítménye jelentősen javítható, mert nem kell minden alkalommal újraszámolni, amikor használják.

Változók használata a DAX-képletek javításához
DAX-lekérdezések