ÖNCEKİ

Şunun için geçerlidir: Hesaplanan sütunHesaplanan tabloÖlçüGörseli hesaplaması

Belirtilen sütunun geçerli değerini belirtilen sütunun dış değerlendirme geçişinde döndürür.

EARLIER, giriş olarak belirli bir değeri kullanmak ve bu girişe dayalı hesaplamalar oluşturmak istediğiniz iç içe hesaplamalar için kullanışlıdır. Microsoft Excel'de bu tür hesaplamaları yalnızca geçerli satır bağlamında yapabilirsiniz; ancak DAX'ta girişin değerini depolayabilir ve ardından tablonun tamamından verileri kullanarak hesaplama yapabilirsiniz.

EARLIER çoğunlukla hesaplanmış sütunlar bağlamında kullanılır.

Sözdizimi

EARLIER(<column>, <number>)  

Parametreler

Süre Tanım
sütun Bir sütuna çözümleyen bir sütun veya ifade.
Num (İsteğe bağlı) Dış değerlendirme geçişi için pozitif bir sayı.

Bir sonraki değerlendirme düzeyi 1 ile gösterilir; iki düzey dışında 2 ile temsil edilir ve bu şekilde devam edilir.

Atlandığında varsayılan değer 1'dir.

Dönüş değeri

Dış değerlendirme geçiş sayısındaki sütundaki geçerli satır değeri.

Özel durumlar

Hataların açıklaması

Açıklamalar

  • EARLIER , tablo taramasının başlangıcından önce bir satır bağlamı varsa başarılı olur. Aksi takdirde bir hata döndürür.

  • Teorik olarak, toplam satır sayısına (sütundaki) aynı sayıda (ifadenin söz dizimine bağlı olarak) yakın olan bir dizi işlem gerçekleştirmesi gerektiğinden EARLIER'nin performansı yavaş olabilir. Örneğin, sütunda 10 satırınız varsa, yaklaşık 100 işlem gerekebilir; 100 satırınız varsa 10.000'e yakın işlem gerçekleştirilebilir.

  • Bu işlev, hesaplanan sütunlarda veya satır düzeyi güvenlik (RLS) kurallarında kullanıldığında DirectQuery modunda kullanılmak üzere desteklenmez.

Not

Uygulamada VertiPaq bellek içi analiz altyapısı gerçek hesaplama sayısını azaltmak için iyileştirmeler gerçekleştirir, ancak özyineleme içeren formüller oluştururken dikkatli olmanız gerekir.

Örnek

EARLIER kullanımını göstermek için, bir derecelendirme değeri hesaplayan ve ardından bu derecelendirme değerini diğer hesaplamalarda kullanan bir senaryo oluşturmak gerekir.

Aşağıdaki örnek, her ProductSubcategory için toplam satışları gösteren bu basit ProductSubcategory tablosunu temel alır.

Derecelendirme sütunu da dahil olmak üzere son tablo burada gösterilmiştir.

ProductSubcategoryKey EnglishProductSubcategoryName TotalSubcategorySales Alt KategoriRanking
18 Bib-Şort $156,167,88 18
26 Bisiklet Rafları $220,720,70 14
27 Bisiklet Standları 35.628,69 ABD doları 30
28 Şişeler ve Kafesler $59,342,43 24
5 Alt Braketler 48.643,47 ABD doları 27
6 Frenler 62.113,16 USD 23
19 Kasketler $47,934,54 28
7 Zincirler 8.847,08 ABD doları 35
29 Temizleyiciler 16.882,62 ABD doları 32
8 Aynakollar 191.522,09 USD 15
9 Vites Düzenekleri 64.965,33 USD 22
30 Çamurluk 41.974,10 ABD doları 29
10 Çatallar $74,727,66 21
20 Eldiven $228,353,58 12
4 Gidonlar $163,257,06 17
11 Kulaklık $57,659,99 25
31 Kasklar $451,192,31 9
32 Hidrasyon Paketleri 96.893,78 ABD doları 20
21 Formalar $699,429,78 7
33 Işıklar 36
34 Kilitler 15.059,47 ABD doları 33
1 Dağ Bisikletleri 34.305.864,29 ABD doları 2
12 Dağ Bisikleti Kadroları $4,511,170,68 4
35 Panniers 36
13 Pedal $140,422,20 19
36 Pompalar 12.695,18 ABD doları 34
2 Yol Bisikletleri $40,551,696,34 1
14 Yol Bisikleti Kadroları $3,636,398,71 5
15 Saddles $52,526,47 26
22 Şort $385,707,80 10
23 Çoraplar $28,337,85 31
24 Tayt $189,179,37 16
37 Lastikler ve Tüpler $224,832,81 13
3 Gezi Bisikletleri 13.334.864,18 ABD doları 3
16 Gezi Bisikleti Kadroları $1,545,344,02 6
25 Yelek 240.990,04 ABD doları 11
17 Tekerlekler 648.240,04 ABD doları 8

Derece Değeri Oluşturma

Bir satırdaki belirli bir değer için derece değeri almanın bir yolu, aynı tabloda bulunan ve karşılaştırılmakta olandan daha büyük (veya daha küçük) bir değere sahip olan satır sayısını saymaktır. Bu teknik, tablodaki en yüksek değer için boş veya sıfır değer döndürürken, eşit değerler aynı derece değerine sahip olur ve sonraki değer (eşit değerlerden sonra) ardışık olmayan bir derece değerine sahip olur. Aşağıdaki örneğe bakın.

Aşağıdaki formül kullanılarak yeni bir hesaplanmış sütun (SubCategorySalesRanking) oluşturulur.

= COUNTROWS(FILTER(ProductSubcategory, EARLIER(ProductSubcategory[TotalSubcategorySales])<ProductSubcategory[TotalSubcategorySales]))+1  

Aşağıdaki adımlarda hesaplama yöntemi daha ayrıntılı olarak açıklanmaktadır.

  1. EARLIER işlevi, tablodaki geçerli satır için TotalSubcategorySales değerini alır. Bu durumda, işlem başladığı için tablodaki ilk satırdır

  2. EARLIER([TotalSubcategorySales]), dış döngüdeki geçerli satır olan 156.167,88 ABD doları olarak değerlendirilir.

  3. FİlTRE işlevi artık tüm satırların TotalSubcategorySales değerinin 156.167,88 TL'den (EARLIER için geçerli değer) büyük olduğu bir tablo döndürür.

  4. COUNTROWS işlevi, filtrelenen tablonun satırlarını sayar ve bu değeri geçerli satırdaki yeni hesaplanmış sütuna artı 1 atar. En yüksek dereceli değerin Boş olmasını önlemek için 1 eklenmesi gerekir.

  5. Hesaplanmış sütun formülü bir sonraki satıra geçer ve 1 ile 4 arasındaki adımları yineler. Bu adımlar, tablonun sonuna ulaşılana kadar yinelenir.

EARLIER işlevi her zaman geçerli tablo işleminden önce sütunun değerini alır. Bundan önce döngüden bir değer almanız gerekiyorsa, ikinci bağımsız değişkeni 2 olarak ayarlayın.

EARLIEST işlevi
Filtre işlevleri