Hangi veri alanında işlem yapmak için hedefleri kullanma

Power BI düzenleme modunda, Alanlar bölmesi modeldeki tüm tabloları tüm veri alanlarıyla birlikte gösterir. Verilerin raporlarda, sayfalarda veya görsellerde nasıl göründüğünü etkilemek için veri alanlarındaki verileri sıralayabilir, filtreleyebilir veya dilimleyebilirsiniz.

Power BI tümleşik analiz filtresi, dilimleyici veya sıralama, hangi veri alanında işlem yapılması gerektiğini belirten bir hedef nesne gerektirir. Aşağıdaki durumlarda hedef veri alanını sağlamak için ITarget kullanın:

Hedef türler

Veri alanı bir sütun, hiyerarşi düzeyi, toplanmış sütun veya hiyerarşi düzeyi ya dahesaplanan ölçüsü olabilir. ITarget arabirimi için hedef türler şunlardır:

  • IColumnTarget
  • IHierarchyLevelTarget
  • IMeasureTarget
  • IColumnAggrTarget
  • IHierarchyLevelAggrTarget

Sütun

Tabloda belirtilen sütunu hedeflemek için IColumnTarget kullanın:

target: {
    $schema: "http://powerbi.com/product/schema#column",
    table: "<table name>",
    column: "<column name>"
}

Hiyerarşi düzeyi

Tablodaki bir hiyerarşi içinde belirtilen hiyerarşi düzeyini hedeflemek için IHierarchyLevelTarget kullanın:

target: {
    $schema: "http://powerbi.com/product/schema#hierarchyLevel",
    table: "<table name>",
    hierarchy: "<hierarchy name>",
    hierarchyLevel: "<hierarchy level name>"
}

Ölçmek

Bir tabloda belirtilen ölçüyü hedeflemek için IMeasureTarget kullanın. Hedef bir görsele bağlıysa ve değerleri genel toplamın yüzdesi olarak gösteriliyorsa percentOfGrandTotal değeri true olarak ayarlanır.

target: {
    $schema: "http://powerbi.com/product/schema#measure",
    table: "<table name>",
    measure: "<measure name>",
    percentOfGrandTotal?: boolean
}

Toplama işlevleri

Sütun ve hiyerarşi düzeyi hedefleri için toplama işlevleri belirtebilirsiniz. aggregationFunction değişkeni isteğe bağlıdır ve bunu sağlamazsanız veri alanları varsayılan Sum toplama işlevini kullanır. aggregationFunction için desteklenen diğer değerler şunlardır:

  • Avg
  • DoNotSummarize
  • Count
  • CountNonNull
  • Max
  • Median
  • Min
  • StandardDeviation
  • Variance

Toplanmış sütun

Tablodaki belirtilen sütunda bir toplama işlevi belirtmek için IColumnAggrTarget kullanın. Hedef bir görsele bağlıysa ve değerleri genel toplamın yüzdesi olarak gösteriliyorsa 'percentOfGrandTotal' değeri true olarak ayarlanır.

target: {
    $schema: "http://powerbi.com/product/schema#columnAggr",
    table: "<table name>",
    column: "<column name>",
    aggregationFunction: "<aggregation function>", // Optional, default is Sum.
    percentOfGrandTotal?: boolean
}

Toplanan hiyerarşi düzeyi

IHierarchyLevelAggrTarget kullanarak tablodaki bir hiyerarşide belirtilen hiyerarşi düzeyinde bir toplama işlevi belirtin. Hedef bir görsele bağlıysa ve değerleri genel toplamın yüzdesi olarak gösteriliyorsa 'percentOfGrandTotal' değeri true olarak ayarlanır.

target: {
    $schema: "http://powerbi.com/product/schema#hierarchyLevelAggr",
    table: "<table name>",
    hierarchy: "<hierarchy name>",
    hierarchyLevel: "<hierarchy level name>",
    aggregationFunction: "<aggregation function>", // Optional, default is Sum.
    percentOfGrandTotal?: boolean
}

Örnekler

Aşağıdaki kod örnekleri, filtrenin üzerinde işlem yapması gereken veri alanını belirtmek için target nesnesini kullanır.

Sütun hedef örneği

Aşağıdaki kod örneği, rapora sütun hedefi olan temel filtre uygular. Kod, Geo tablosunun Region sütununa göre hareket eder; böylece raporda yalnızca batı bölgedeki veriler gösterilir.

let filter = {
    $schema: "http://powerbi.com/product/schema#basic",
    target: {
        $schema: "http://powerbi.com/product/schema#column",
        table: "Geo",
        column: "Region"
    },
    operator: "In",
    values: ["West"]
};

Hiyerarşi düzeyi hedef örneği

Aşağıdaki kod örneği, bir rapora hiyerarşi düzeyi hedefi olan temel bir filtre uygular. Kod, Sales tablosunun OrderDate hiyerarşisinin Ay düzeyinde hareket eder; böylece yalnızca batı bölgesindeki veriler raporda bu hiyerarşi düzeyinin altında gösterilir.

let filter = {
    $schema: "http://powerbi.com/product/schema#basic",
    target: {
        $schema: "http://powerbi.com/product/schema#hierarchyLevel",
        table: "Sales",
        hierarchy: "OrderDate",
        hierarchyLevel: "Month"
    },
    operator: "In",
    values: ["West"]
};

Ölçüm hedefi örneği

Aşağıdaki kod örneği, bir görsele ölçü hedefi olan gelişmiş filtre uygular. Kod, SalesFact tablosundaki Toplam Kategori Hacmi ölçüsüne göre hareket eder, böylece yalnızca değer boş olmadığında görünür.

let filter = {
    $schema: "http://powerbi.com/product/schema#advanced",
    target: {
        $schema: "http://powerbi.com/product/schema#measure",
        table: "SalesFact",
        measure: "Total Category Volume"
    },
    filterType: models.FilterType.AdvancedFilter,
    logicalOperator: "And",
    conditions: [{
        operator: "IsNotBlank"
    }]
}

Toplanmış sütun hedef örneği

Aşağıdaki kod, Sales tablosunun Store sütunundaki değerlerin toplamı olan bir sütun toplama hedefi tanımlar:

let columnAggregation = {
    $schema: "http://powerbi.com/product/schema#columnAggr",
    table: "Store",
    column: "Sales",
    aggregationFunction: "Sum"
};