KAPCSOLÓ

A következőre vonatkozik: Számított oszlopSzámított táblamértékvizualizációszámítása

Kiértékel egy kifejezést egy értéklistán, és több lehetséges eredménykifejezés egyikét adja vissza. Ezzel a függvénnyel elkerülhető, hogy több beágyazott HA utasítás legyen.

Syntax

SWITCH(<expression>, <value>, <result>[, <value>, <result>]…[, <else>])  

Paraméterek

Időszak Definíció
Kifejezés Bármely DAX-kifejezés, amely egyetlen skaláris értéket ad vissza, ahol a kifejezést többször kell kiértékelni (minden sorhoz/környezethez).
Érték A kifejezés eredményével egyeztetendő állandó érték.
eredmény Minden értékelendő skaláris kifejezés, ha a kifejezés eredménye megegyezik a megfelelő értékkel.
else Minden értékelendő skaláris kifejezés, ha a kifejezés eredménye nem egyezik az értékargumentumok egyikével sem.

Visszaadott érték

Ha egyezés van egy értékkel, a függvény a megfelelő eredmény skaláris értékét adja vissza. Ha nincs egyezés egy értékkel, a függvény egy másiktól származó értéket ad vissza. Ha egyik érték sem egyezik meg, és nincs megadva, akkor a BLANK értéket adja vissza.

Megjegyzések

  • A kiértékelendő kifejezés lehet állandó érték vagy kifejezés. A függvény gyakori használata az első paraméter IGAZ értékre állítása. Lásd az alábbi példákat.
  • Minden eredménykifejezésnek és az egyéb kifejezésnek azonos adattípusúnak kell lennie.
  • A feltételek sorrendje számít. Amint egy érték egyezik, a megfelelő eredmény lesz visszaadva, és a többi további érték nem lesz kiértékelve. Győződjön meg arról, hogy a kiértékelendő legkorlátozóbb értékek a kevésbé korlátozó értékek előtt vannak megadva. Lásd az alábbi példákat.

Példák

A SWITCH gyakori használata a kifejezés és az állandó értékek összehasonlítása. Az alábbi példa a hónapnevek számított oszlopát hozza létre:

= SWITCH (
         [Month Number Of Year],
         1, "January",
         2, "February",
         3, "March",
         4, "April",
         5, "May",
         6, "June",
         7, "July",
         8, "August",
         9, "September",
         10, "October",
         11, "November",
         12, "December",
         "Unknown month number"
        )

A SWITCH másik gyakori használata több beágyazott HA utasítás lecserélése. Ez úgy érhető el, hogy igaz értékre állítja a kifejezést, amint az az alábbi példában látható, amely összehasonlítja a termékekre vonatkozó Átrendezéspont és Széf ty Stock Level értékét a készlet elfogyásának lehetséges kockázatainak azonosítása érdekében:

= SWITCH (
        TRUE,
        [Reorder Point] > [Safety Stock Level], "Good: Safety stock level exceeded",
        [Reorder Point] = [Safety Stock Level], "Minimal: Safety stock level met",
        [Reorder Point] < [Safety Stock Level], "At risk: Safety stock level not met",
        ISBLANK ( [Reorder Point] ), "Incomplete: Reorder point not set",
        ISBLANK ( [Safety Stock Level] ), "Incomplete: Safety stock level not set",
        "Unknown"
        )


Az értékek sorrendje számít. Az alábbi példában a második eredmény soha nem lesz visszaadva, mert az első érték kevésbé korlátozó, mint a második. A példában szereplő eredmény mindig "A" vagy "C", de soha nem "B".

= SWITCH (
         TRUE,
         Product[Standard Cost] < 100, "A",
         Product[Standard Cost] < 10, "B",
         "C"
         )

Az alábbi utasítás hibát ad vissza, mert az eredményargumentumok adattípusai eltérőek. Ne feledje, hogy az adattípusoknak minden eredményben és más argumentumban azonosnak kell lenniük.

= SWITCH (
        [Class],
        "L", "Large",
        "H", 0.1
        )