Aracılığıyla paylaş


EARLIER İşlevi

Belirtilen sütunun, söz konusu sütunun daha dıştaki bir değerlendirme geçişindeki geçerli değerini döndürür.

EARLIER, giriş olarak belirli bir değer kullanmak ve bu girişe dayanan hesaplamalar oluşturmak istediğiniz iç içe yerleştirilen 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 hesaplamayı bütün tablonun verilerini kullanarak yapabilirsiniz.

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

Sözdizimi

EARLIER(<column>, <number>)

Parametreler

Terim

Tanım

column

Bir sütun olarak çözümlenen sütun veya ifade.

num

(İsteğe bağlı) Daha dıştaki değerlendirme geçişini gösteren pozitif bir sayı.

Bir düzey dışarıdaki değerlendirme 1 ile, iki düzey dışarıdaki değerlendirme 2 ile gösterilir ve benzeri şekilde sürer.

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

Özellik Değeri/Dönüş Değeri

Sayı düzeyindeki dış değerlendirme geçişinde, sütundaki satırın geçerli değeri.

Kural dışı durumlar

Hataların açıklaması

Açıklamalar

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

EARLIER işlevinin, gerçekleştirmesi gereken işlem sayısı yaklaşık olarak toplam satır sayısı (sütundaki) ile aynı sayının (ifadenin sözdizimine bağlı olarak) çarpımına eşit olabileceğinden, 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, yaklaşık 10.000 işlem gerçekleştiriliyor olabilir.

[!NOT]

Uygulamada xVelocity bellek içi analitiği altyapısı (VertiPaq), gerçek hesaplama sayısını azaltmak için iyileştirmeler yapar, ancak özyineleme içeren formüller oluştururken dikkatli olmanız gerekir.

Örnek

EARLIER işlevinin kullanımını göstermek için bir sıra değeri hesaplayan ve sonra bu sıra değerini diğer hesaplamalarda kullanan bir senaryo oluşturmanız gerekir.

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

Sıralama sütununu da içeren son tablo burada gösterilir.

ProductSubcategoryKey

EnglishProductSubcategoryName

TotalSubcategorySales

SubcategoryRanking

18

Bisiklet Şortu

$156,167.88

18

26

Bisiklet Askısı

$220,720.70

14

27

Bisiklet Standı

$35,628.69

30

28

Şişe ve Şişe Askısı

$59,342.43

24

5

Bilyeli Alt Yatak

$48,643.47

27

6

Fren

$62,113.16

23

19

Başlık

$47,934.54

28

7

Zincir

$8,847.08

35

29

Temizleme Malzemesi

$16,882.62

32

8

Krank Seti

$191,522.09

15

9

Derayör

$64,965.33

22

30

Çamurluk

$41,974.10

29

10

Çatal

$74,727.66

21

20

Eldiven

$228,353.58

12

4

Gidon

$163,257.06

17

11

Gidon Bağlantı Parçası

$57,659.99

25

31

Kask

$451,192.31

9

32

Hidrasyon Paketi

$96,893.78

20

21

Süveter

$699,429.78

7

33

Işık

 

36

34

Kilit

$15,059.47

33

1

Dağ Bisikleti

$34,305,864.29

2

12

Dağ Bisikleti Kadrosu

$4,511,170.68

4

35

Sepet

 

36

13

Pedal

$140,422.20

19

36

Pompa

$12,695.18

34

2

Yol Bisikleti

$40,551,696.34

1

14

Yol Bisikleti Kadrosu

$3,636,398.71

5

15

Sele

$52,526.47

26

22

Şort

$385,707.80

10

23

Çorap

$28,337.85

31

24

Tayt

$189,179.37

16

37

Lastik ve İç Lastik

$224,832.81

13

3

Tur Bisikleti

$13,334,864.18

3

16

Tur Bisikleti Kadrosu

$1,545,344.02

6

25

Yelek

$240,990.04

11

17

Tekerlek

$648,240.04

8

Sıra Değeri Oluşturma

Satırda verilen değer için bir sıra değeri elde etme yöntemlerinden biri, aynı tabloda, karşılaştırılmakta olandan daha büyük (veya daha küçük) değere sahip olan satırların sayısını saymaktır. Bu teknik tablodaki en büyük değer için boşluk veya sıfır değeri döndürür, oysa ki eşit değerler aynı sıra değerine, sonraki değer ise (eşit değerlerden sonraki) ardışık olmayan bir sıra değerine sahip olacaktır. Aşağıdaki örneğe bakın.

Aşağıdaki formül kullanılarak, yeni bir hesaplanmış SubCategorySalesRanking sütunu oluşturulur.

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

Aşağıdaki adımlar hesaplama yöntemini daha ayrıntılı olarak açıklar.

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

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

  3. FILTER işlevi şimdi tüm satırlarının TotalSubcategorySales değeri 156.167,88$'dan büyük olan bir tablo döndürür (bu, EARLIER için geçerli değerdir).

  4. COUNTROWS işlevi filtre uygulanan tablonun satırlarını sayar ve bu değeri, geçerli satırın sırasına 1 ekleyerek bulduğu satırdaki yeni hesaplanmış sütuna atar. En üst sıradaki değerin Boşluk haline gelmesini engellemek için 1 eklenmesi gerekir.

  5. Hesaplanmış sütun formülü sonraki satıra taşınır ve 1 ile 4 arasındaki adımlar yinelenir. Bu adımlar, tablonun sonuna erişilinceye kadar yinelenir.

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

Ayrıca bkz.

Başvuru

EARLIEST İşlevi

Diğer Kaynaklar

Filtre işlevleri (DAX)