Poznámka
Na prístup k tejto stránke sa vyžaduje oprávnenie. Môžete sa skúsiť prihlásiť alebo zmeniť adresáre.
Na prístup k tejto stránke sa vyžaduje oprávnenie. Môžete skúsiť zmeniť adresáre.
Vzťahuje sa na:
vypočítaný stĺpec
vypočítanej tabuľky![]()
vizuálového výpočtu
Vráti aktuálnu hodnotu zadaného stĺpca v prechode vonkajšieho vyhodnotenia spomínaného stĺpca.
EARLIER je užitočná pri vnorených výpočtoch, kde chcete použiť určitú hodnotu ako vstup a vyprodukovať výpočty na základe tohto vstupu. V Microsoft Exceli môžete tieto výpočty vykonávať iba v kontexte aktuálneho riadka. v DAX však môžete uložiť hodnotu vstupu a potom vykonať výpočet pomocou údajov z celej tabuľky.
EARLIER sa väčšinou používa v kontexte vypočítaných stĺpcov.
Syntax
EARLIER(<column>, <number>)
Parametre
| Termín | Definícia |
|---|---|
column |
Stĺpec alebo výraz, ktorý sa vyrieši do stĺpca. |
num |
(Voliteľné) Kladné číslo do prechodu vonkajšieho vyhodnotenia. Nasledujúca úroveň vyhodnotenia mimo je zastúpená číslom 1; dve úrovne mimo sú zastúpené číslom 2 a tak ďalej. Pri vynechaní je predvolená hodnota 1. |
Vrátená hodnota
Aktuálna hodnota riadka z columnna number prechodov vonkajšieho vyhodnotenia.
Výnimky
Popis chýb
Poznámky
EARLIERje úspešná, ak existuje kontext riadka pred začiatkom kontroly tabuľky. V opačnom prípade vráti chybu.Výkon
EARLIERmôže byť pomalý, pretože teoreticky môže byť potrebné vykonať niekoľko operácií, ktoré sa blížia k celkovému počtu riadkov (v stĺpci) vynásobeným rovnakým číslom (v závislosti od syntaxe výrazu). Ak máte napríklad v stĺpci 10 riadkov, môže sa vyžadovať približne 100 operácií. Ak máte 100 riadkov, môže sa vykonať takmer 10 000 operácií.-
Táto funkcia nie je podporovaná na použitie v režime DirectQuery, keď sa používa vo vypočítaných stĺpcoch alebo v pravidlách zabezpečenia na úrovni riadkov (RLS).
Nota
V praxi nástroj na analýzu v pamäti VertiPaq vykonáva optimalizáciu na zníženie skutočného počtu výpočtov, ale pri vytváraní vzorcov, ktoré zahŕňajú rekurzie, by ste mali postupovať opatrne.
Príklad
Na ilustráciu používania EARLIERje potrebné vytvoriť scenár, ktorý vypočíta hodnotu poradia a potom použije túto hodnotu poradia v iných výpočtoch.
Nasledujúci príklad vychádza z tejto jednoduchej tabuľky ProductSubcategory, ktorá zobrazuje celkový predaj pre každú podkategóriu ProductSubcategory.
Na tomto mieste sa zobrazí konečná tabuľka vrátane stĺpca poradia.
| ProductSubcategoryKey (KľúčPodkategórieproduktov) | EnglishProductSubcategoryName (AnglickýNázovPodkategórieProduktu) | CelkovýPredajPodkategórie | SubcategoryRanking (Podkategória)Ranking |
|---|---|---|---|
| 18 | Bib-Shorts | 156 167,88 $ | 18 |
| 26 | Bike Racks | 220 720,70 $ | 14 |
| 27 | Stojany na bicykle | 35 628,69 $ | 30 |
| 28 | Bottles and Cages | 59 342,43 $ | 24 |
| 5 | Bottom Brackets | 48 643,47 $ | 27 |
| 6 | Brzdy | 62 113,16 $ | 23 |
| 19 | Čiapky | 47 934,54 $ | 28 |
| 7 | Reťaze | 8 847,08 $ | 35 |
| 29 | Čističe | 16 882,62 $ | 32 |
| 8 | Množiny kačiek | 191 522,09 $ | 15 |
| 9 | Vykoľajiť | 64 965,33 $ | 22 |
| 30 | Blatníky | 41 974,10 $ | 29 |
| 10 | Vidličky | 74 727,66 $ | 21 |
| 20 | Rukavice | 228 353,58 $ | 12 |
| 4 | Riadidlá | 163 257,06 $ | 17 |
| 11 | Slúchadlá | 57 659,99 $ | 25 |
| 31 | Prilby | 451 192,31 $ | 9 |
| 32 | Hydratačné balíky | 96 893,78 $ | 20 |
| 21 | Dresy | 699 429,78 $ | 7 |
| 33 | Svetla | 36 | |
| 34 | Zámky | 15 059,47 $ | 33 |
| 1 | Horské bicykle | 34 305 864,29 $ | 2 |
| 12 | Mountain Frames | 4 511 170,68 USD | 4 |
| 35 | Panniers | 36 | |
| 13 | Pedále | 140 422,20 $ | 19 |
| 36 | Čerpadlá | 12 695,18 $ | 34 |
| 2 | Cestné bicykle | 40 551 696,34 USD | 1 |
| 14 | Road Frames | 3 636 398,71 USD | 5 |
| 15 | Sedla | 52 526,47 $ | 26 |
| 22 | Šortky | 385 707,80 $ | 10 |
| 23 | Ponožky | 28 337,85 $ | 31 |
| 24 | Pančucháče | 189 179,37 $ | 16 |
| 37 | Tires and Tubes | 224 832,81 $ | 13 |
| 3 | Turistické bicykle | 13 334 864,18 USD | 3 |
| 16 | Touring Frames | 1 545 344,02 $ | 6 |
| 25 | Vesty | $240,990.04 | 11 |
| 17 | Kolesá | 648 240,04 $ | 8 |
Vytvorenie hodnoty poradia
Jedným zo spôsobov získania hodnoty poradia pre danú hodnotu v riadku je spočítať počet riadkov v tej istej tabuľke, ktoré majú hodnotu väčšiu (alebo menšiu), než je porovnávaná hodnota. Táto technika vráti prázdnu alebo nulovú hodnotu pre najvyššiu hodnotu v tabuľke, zatiaľ čo rovnaké hodnoty budú mať rovnakú hodnotu poradia a nasledujúca hodnota (po týchto rovnakých hodnotách) bude mať hodnotu nekonzekutívnej poradia. Pozrite si ukážku nižšie.
Pomocou nasledujúceho vzorca sa vytvorí nový vypočítaný stĺpec
= COUNTROWS(FILTER(ProductSubcategory, EARLIER(ProductSubcategory[TotalSubcategorySales])<ProductSubcategory[TotalSubcategorySales]))+1
V nasledujúcich krokoch je metóda výpočtu popísaná podrobnejšie.
Funkcia
EARLIERzíska hodnotu TotalSubcategorySales pre aktuálny riadok v tabuľke. Keďže proces sa začína, v tomto prípade ide o prvý riadok v tabuľkeEARLIER([TotalSubcategorySales])sa vyhodnotí na 156 167,88 USD, aktuálny riadok vo vonkajšej slučke.Funkcia
FILTERteraz vráti tabuľku, v ktorej majú všetky riadky hodnotu CelkovýPredajPodkategórie väčšiu ako 156 167,88 USD (čo je aktuálna hodnota preEARLIER).Funkcia
COUNTROWSspočíta riadky filtrovanej tabuľky a priradí túto hodnotu k novému vypočítanému stĺpcu v aktuálnom riadku plus 1. Je potrebné pridať 1, aby ste zabránili tomu, že s najvyššou hodnotou bude prázdna hodnota.Vzorec vypočítaného stĺpca sa presunie do nasledujúceho riadka a zopakuje kroky 1 až 4. Tieto kroky sa opakujú až do konca tabuľky.
Funkcia EARLIER vždy získa hodnotu stĺpca pred aktuálnou operáciou tabuľky. Ak potrebujete získať hodnotu zo slučky predtým, nastavte druhý argument na hodnotu 2.