Bağlam, formülün sonuçlarının geçerli satır veya hücre seçimini ve ayrıca ilişkili verileri yansıtacak şekilde değiştirebildiği dinamik çözümleme gerçekleştirmenizi mümkün kılar. İçeriğin anlaşılması ve içeriğin kullanımı, yüksek performanslı formüller, dinamik çözümlemeler ve formüllerdeki sorunları gidermek için çok önemlidir.
Bu bölümde farklı bağlam türleri tanımlanır: satır bağlamı, sorgu bağlamı ve filtre bağlamı. Hesaplanmış sütunlarda ve PivotTable 'Larda formüllerin nasıl değerlendirildiğini açıklar.
Bu makalenin son bölümünde, formüllerin sonuçlarının içeriğe göre nasıl değiştirileceği gösterilmektedir.
Bağlam anlama
Power Pivot formüller, PivotTable 'da uygulanan filtrelerden, tablolar arasındaki ilişkilerden ve formüllerde kullanılan filtrelerle etkilenebilir. Bağlam, dinamik çözümleme yapmayı olanaklı kılan nedir. Bağlam anlaşılması, sorun giderme formülleri oluşturmak ve bunları yapılandırmak için önemlidir.
Farklı türde bağlam vardır: satır bağlamı, sorgu bağlamı ve filtre bağlamı.
Satır bağlamı "geçerli satır" olarak düşünülebilir. Hesaplanan bir sütun oluşturduysanız, satır bağlamı tek tek her satırdaki değerlerden ve geçerli satırla ilgili sütunlardaki değerleri içerir. Ayrıca, geçerli satırdan bir değer alan ( EARLIESTönceki veya önceki ) bazı işlevleri de vardır ve bu değer, tüm tablonun bir işlemini gerçekleştirirken bu değeri kullanır.
Sorgu bağlamı, satır ve sütun başlıklarına bağlı olarak, PivotTable 'daki her hücre için örtülü olarak oluşturulan verilerin alt kümesini ifade eder.
Filtre bağlamı, satıra uygulanmış olan veya formülde filtre ifadelerine göre tanımlanan filtre kısıtlamalarına dayalı olarak, her sütunda izin verilen değerler kümesidir.
Satır bağlamı
Hesaplanan sütunda formül oluşturursanız, bu formülün satır bağlamı geçerli satırdaki tüm sütunlardan değerleri içerir. Tablo başka bir tabloyla ilişkiliyse, içerik, o tablodaki geçerli satırla ilişkili tüm değerleri de içerir.
Örneğin, hesaplanan sütun oluşturduğunuzu, = [Nakliye] + [vergi],
iki sütunu aynı tablodan toplar. Bu formül, Excel tablosunda aynı satırdan değerlere otomatik olarak başvuruda bulunan formüller gibi davranır. Tabloların aralıklarından farklı olduğunu unutmayın: Aralık gösterimini kullanarak geçerli satırdan önceki satırdan bir değere başvuramaz ve bir tablo veya hücredeki herhangi bir rastgele tek değere başvuramaz. Her zaman tablolar ve sütunlarla çalışmanız gerekir.
Satır bağlamı, ilişkili tablolardaki hangi satırların geçerli satırla ilişkilendirildiğini belirlemek için tablolar arasındaki ilişkileri otomatik olarak izler.
Örneğin, aşağıdaki formül, siparişin sevk edildiği bölgeye göre ilgili bir tablodan vergi değeri getirmek için ILIŞKILI işlevi kullanır. Vergi değeri geçerli tablodaki bölge değeri kullanılarak belirlenir, ilişkili tablodaki bölgeyi arar ve ilgili tablodan bu bölge için vergi oranını alıyor.
= [Nakliye] + RELATED (' Region ' [Vergilenoran])
Bu formül, bölge tablosundan geçerli bölgenin vergi oranını alır. Tabloları bağlayan anahtarı bilmeniz ya da belirtmeniz gerekmez.
Birden çok satır bağlamı
Ayrıca DAX, bir tablo üzerinden hesaplamaları yinelemek için işlevler içerir. Bu işlevlerde birden çok geçerli satır ve geçerli satır bağlamı olabilir. Programlama koşullarında, iç ve dış döngü üzerinde bir dizi formül oluşturabilirsiniz.
Örneğin, çalışma kitabınızın bir Ürünler tablosu ve bir Satış tablosu içerdiğini varsayalım. Birden çok ürünle ilgili işlemlerin dolu olduğu ve her bir işlemde her ürün için sipariş edilen en büyük miktarı bulmak için, satış tablosunun tamamına gitmek isteyebilirsiniz.
Excel 'de bu hesaplama, veriler değiştirildiğinde yeniden oluşturulması gereken bir dizi ara Özet gerektirir. Excel 'in uzman kullanıcısıysanız, işi yapacak dizi formülleri oluşturabilirsiniz. Alternatif olarak, bir ilişkisel veritabanında iç içe alt seçim yapabilirsiniz.
Bununla birlikte, DAX ile doğru değeri döndüren tek bir formül oluşturabilirsiniz ve sonuçlar tablolara her veri eklediğinizde sonuçlar otomatik olarak güncelleştirilir.
= MAXX (FILTRE (satış, [ProdKey] = ÖNCEKI ([ProdKey])), satış [SiparişMiktarı])
Bu formülün ayrıntılı bir yolu için, öncekibölümüne bakın.
Kısaca, ÖNCEKI işlevi geçerli işlemin öncesindeki işlemden satır bağlamını depolar. İşlev, her zaman bellekte iki bağlam kümesi depolar: bir bağlam kümesi, formülün iç döngüsünün geçerli satırını gösterir ve başka bir bağlam kümesi de formülün dış döngüsünün geçerli satırını temsil eder. DAX, karmaşık toplamalar oluşturabilmeniz için iki döngü arasındaki değerleri otomatik olarak toplar.
Sorgu bağlamı
Sorgu bağlamı, formül için örtülü olarak alınan verilerin alt kümesini ifade eder. Bir ölçü veya başka bir değer alanını PivotTable 'daki bir hücreye bıraktığınızda, Power Pivot altyapısı, bağlamı belirlemek için satır ve sütun üst bilgilerini, Dilimleyicileri ve rapor filtrelerini inceler. Ardından Power Pivot PivotTable 'daki her hücreyi doldurmak için gerekli hesaplamaları yapar. Alınan veri kümesi, her hücrenin sorgu bağlamdır.
Bağlam, formülü yerleştirdiğiniz yere bağlı olarak değiştirebileceğinden, formülün sonuçları çok sayıda gruplandırma ve filtre içeren bir PivotTable 'da ya da filtre ve en az bağlam içermeyen bir hesaplanan sütunda da kullanılsın.
Örneğin, Satış tablosunun kar sütunundaki değerleri toplayan bu basit formülü OLUŞTURDUĞUNUZU varsayalım: = topla (' satış ' [kar]).
Bu formülü Satış tablosunda hesaplanan bir sütunda kullanırsanız, formülün sonuçları her zaman Satışlar tablosunun veri kümesinin tümü olduğundan, formülün sonuçları tüm tablo için aynı olacaktır. Sonuçlarınız tüm bölgeler, tüm ürünler, tüm yıllar vb. için kar alacak.
Bununla birlikte, genellikle aynı sonucu yüzlerce kez görmek istemiyor, bunun yerine belirli bir yıl için kar, belirli bir ülke veya bölge, belirli bir ürün veya bunların bir birleşimini almak istiyorsanız bir genel toplam alın.
PivotTable 'da, sütun ve satır başlıklarını ekleyerek veya kaldırarak ve Dilimleyiciler ekleyerek veya kaldırarak içeriği değiştirmek kolaydır. Yukarıdaki gibi bir formülü bir ölçü içinde oluşturabilir ve sonra bunu PivotTable 'a bırakabilirsiniz. PivotTable 'a sütun veya satır başlıkları eklediğinizde, ölçünün değerlendirildiği sorgu bağlamını değiştirirsiniz. Dilimleme ve filtre işlemleri de içeriği etkiler. Bu nedenle, PivotTable 'da kullanılan aynı formül her hücre için farklı bir sorgu bağlamında değerlendirilir.
Filtre bağlamı
Sütunda veya tabloda izin verilen değer kümesinde filtre kısıtlamaları belirttiğinizde filtre bağlamı eklenir ve formülde bağımsız değişkenler kullanılır. Filtre bağlamı, satır bağlamı veya sorgu bağlamı gibi diğer bağlamlarda uygulanır.
Örneğin, PivotTable, sorgu bağlamındaki önceki bölümde açıklandığı şekilde, her hücrenin değerlerini satır ve sütun başlıklarına göre hesaplar. Bununla birlikte, PivotTable 'a eklediğiniz ölçüler veya hesaplanan sütunlarda, formülün kullandığı değerleri denetlemek için filtre ifadeleri belirtebilirsiniz. Belirli sütunlardaki filtreleri seçerek temizleyebilirsiniz.
Formüllerde filtre oluşturma hakkında daha fazla bilgi için filtre işlevlerinebakın.
Genel toplamlar oluşturmak için filtrelerin nasıl temizlendiği hakkında örnek için, Tümünügörün.
Formüller arasında seçmeli olarak temizlenme ve uygulama örnekleri için ALLEXCEPT İşlevikonusuna bakın.
Bu nedenle, formüllerin sonuçlarını yorumlarken filtre bağlamını aklınızda bulundurmanız için PivotTable 'da kullanılan ölçümlerin veya Formüllerin tanımını gözden geçirmelisiniz.
Formüllerdeki Içeriği belirleme
Bir formül oluşturduğunuzda, Excel için Power Pivot ilk olarak genel söz dizimi denetlenir ve ardından geçerli bağlamdaki olası sütun ve tablolarla sağlanan sütun ve tabloların adlarını denetler. Power Pivot formülün belirttiği sütun ve tabloları bulamazsa hata alırsınız.
Bağlam, önceki bölümlerde açıklandığı şekilde belirlenir, çalışma kitabındaki kullanılabilir tablolar kullanılarak, tablolar arasındaki ilişkiler ve uygulanmış olan filtreler.
Örneğin, bazı verileri yeni bir tabloya henüz aktardıysanız ve herhangi bir filtre uygulamadıysanız, tablodaki tüm sütun kümesi geçerli bağlamın bir parçasıdır. İlişkilerle bağlantılı birden çok tablonuz varsa ve sütun başlıkları eklenerek ve Dilimleyiciler kullanılarak filtrelenmiş bir PivotTable 'da çalışıyorsanız, bağlam ilişkili tabloları ve verilerdeki filtreleri içerir.
Bağlam, formüllerde sorun gidermeyi zorlaştırır. İçeriğin nasıl çalıştığını görmek için basit formüller ve ilişkilerle başlayıp PivotTable 'Larda basit formüllerle deneme yapmaya başlayabilirsiniz. Aşağıdaki bölümde ayrıca formüllerin sonuçları dinamik olarak döndürmek için farklı tür bağlamı kullanma örnekleri sağlanır.
Formüllerde bağlam örnekleri
-
ILGILI işlev geçerli satırın bağlamını, ilişkili bir sütundaki değerleri içerecek şekilde genişletir. Bu, arama yapmanızı sağlar. Bu konudaki örnekte filtreleme ve satır bağlamının etkileşimi gösterilmektedir.
-
FILTRE işlevi, geçerli bağlamda içerilecek satırları belirtmenize olanak tanır. Bu konudaki örneklerde, toplamları gerçekleştiren diğer işlevlerin içine filtreleri eklemeyi de görebilirsiniz.
-
ALL işlevi, bir formülün içindeki bağlamı ayarlar. Sorgu bağlamının sonucu olarak uygulanan filtreleri geçersiz kılmak için kullanabilirsiniz.
-
ALLEXCEPT işlevi, belirtbelirtilmedikçe tüm filtreleri kaldırmanıza olanak tanır. Her iki konu de, formülleri oluşturma ve karmaşık içerikleri anlama konusunda size yol gösteren örnekler içerir.
-
ÖNCEKI ve en eskı işlevler, bir iç döngüden bir değere başvuru yaparken hesaplamalar yaparak tablolar arasında döngü yapmanızı sağlar. Özyineleme kavramı ve iç ve dış döngülerle ilgili bilgi sahibiyseniz, ÖNCEKI ve en eski işlevlerin sağladığı kuvveti beğeneceksiniz. Bu kavramlarla karşılaşırsanız, örnekte verilen adımları dikkatle izleyerek, dış ve dış bağlamlarının hesaplamalarda nasıl kullanıldığını görebilirsiniz.
Bilgi tutarlılığı
Bu bölümde, ilişkilerle bağlantılı Power Pivot tablolarındaki eksik değerlerle ilgili bazı gelişmiş kavramlar açıklanmaktadır. Bu bölüm, birden çok tablo ve karmaşık formüllerle çalışma kitaplarınız varsa ve sonuçları anlamayla ilgili yardım almak için yararlı olabilir.
İlişkisel veri kavramları ile ilgili olarak çalışıyorsanız, öncelikle Ilişkiler Özeti
Bilgi tutarlılığı ve Power Pivot Ilişkileri
Power Pivot, geçerli bir ilişki tanımlamak üzere iki tablo arasında bilgi tutarlılığı zorunlu kılmayacak. Bunun yerine, bir-çok ilişkisinin "bir" ucu üzerinde bir boş satır oluşturulur ve ilişkili tablodan tüm eşleşmeyen satırları işlemek için kullanılır. SQL dış birleşimi
PivotTable 'Larda, ilişkinin bir tarafına göre verileri gruplandırırsanız, ilişkinin birçok tarafındaki Eşleşmeyenleri içeren veriler bir arada gruplanır ve boş bir satır başlığı içeren toplamlara eklenir. Boş başlık kabaca "bilinmeyen üye" ile eşdeğerdir.
Bilinmeyen üyeyi anlama
Bilinmeyen üye kavramı, SQL Server Analysis Services gibi çok boyutlu veritabanı sistemleriyle çalışıyorsanız size tanıdık gelecektir. Terim size yeni ise, aşağıdaki örnekte bilinmeyen üyenin ne olduğu ve hesaplamaları nasıl etkilediği açıklanır.
Her mağaza için aylık satışları toplayan bir hesaplama oluşturduğunuzu, ancak Satış tablosundaki bir sütunda mağaza adı için bir değer eksik. Mağaza veSatışlar tabloları mağaza adıyla bağlandığı için, formülde ne olmasını beklemeniz gerekir mi? Var olan bir mağaza ile ilgili olmayan satış rakamlarını nasıl görüntülerim?
Bu sorun, veri ambarlarında yaygın olan, büyük boyutlu bilgi tablolarının, depolar, bölgeler ve gerçeklere ve gerçekleri hesaplarken kullanılan diğer özniteliklerle ilgili bilgileri içeren boyut tablolarıyla ilgili bilgileri içeren boyut tablolarıyla ilişkili olduğu yaygın bir sorundur. Sorunu çözmek için, var olan bir varlıkla ilgisiz olan tüm yeni bilgiler geçici olarak bilinmeyen üyeye atanır. Bu nedenle, ilişkisiz olgu, bir PivotTable 'da boş bir başlık altında gruplandırılmış olarak görünür.
Boş değerlerin karşılaştırması
Boş değerler, bilinmeyen üyeye uyması için eklenen boş satırlardan farklıdır. Boş değer, boşları, boş dizeleri ve diğer eksik değerleri göstermek için kullanılan özel bir değerdir. Boş değer ve diğer DAX veri türleri hakkında daha fazla bilgi için veri modellerinde veri türlerikonusuna bakın.
Not: Bu sayfanın çevirisi otomasyon aracılığıyla yapılmıştır ve bu nedenle hatalı veya yanlış dil bilgisi kullanımları içerebilir. Amacımız, bu içeriğin sizin için faydalı olabilmesini sağlamaktır. Bu bilgileri yararlı bulup bulmadığınızı bizimle paylaşır mısınız? Kolayca başvurabilmek için İngilizce makaleye buradan ulaşabilirsiniz.