Bagikan melalui


Gunakan target untuk memilih bidang data mana yang akan ditindak

Dalam mode edit Power BI, panel Bidang memperlihatkan semua tabel pada model dengan semua bidang datanya. Anda bisa mengurutkan, memfilter, atau menggoreng data di bidang data untuk memengaruhi bagaimana data ditampilkan dalam laporan, halaman, atau visual.

Filter analitik, pemotong, atau pengurutan yang disematkan Power BI memerlukan objek target yang menentukan bidang data mana yang akan ditindaklanjuti. Gunakan ITarget untuk menyediakan bidang data target saat Anda:

Jenis target

Bidang data bisa berupa kolom, tingkat hierarki, kolom agregat atau tingkat hierarki, atau pengukuran terhitung. Jenis target untuk antarmuka ITarget meliputi:

  • IColumnTarget
  • IHierarchyLevelTarget
  • IMeasureTarget
  • IColumnAggrTarget
  • IHierarchyLevelAggrTarget

Kolom

Gunakan IColumnTarget untuk menargetkan kolom yang ditentukan dalam tabel:

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

Tingkat hierarki

Gunakan IHierarchyLevelTarget untuk menargetkan tingkat hierarki yang ditentukan dalam hierarki dalam tabel:

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

Ukur

Gunakan IMeasureTarget untuk menargetkan ukuran yang ditentukan dalam tabel. Nilai percentOfGrandTotal diatur ke true jika target terikat ke visual dan nilainya ditampilkan sebagai persen dari total keseluruhan.

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

Fungsi agregasi

Anda dapat menentukan fungsi agregasi untuk target tingkat kolom dan hierarki. Variabel aggregationFunction bersifat opsional, dan jika Anda tidak menyediakannya, bidang data menggunakan fungsi agregasi Sum default. Nilai lain yang didukung untuk aggregationFunction adalah:

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

Kolom agregat

Gunakan IColumnAggrTarget untuk menentukan fungsi agregasi pada kolom yang ditentukan dalam tabel. Nilai 'percentOfGrandTotal' diatur ke true jika target terikat ke visual dan nilainya ditampilkan sebagai persen dari total keseluruhan.

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

Tingkat hierarki agregat

Gunakan IHierarchyLevelAggrTarget untuk menentukan fungsi agregasi pada tingkat hierarki yang ditentukan dalam hierarki dalam tabel. Nilai 'percentOfGrandTotal' diatur ke true jika target terikat ke visual dan nilainya ditampilkan sebagai persen dari total keseluruhan.

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
}

Contoh

Contoh kode berikut menggunakan objek target untuk menentukan bidang data yang harus ditindaklanjuti filter.

Contoh target kolom

Contoh kode berikut menerapkan filter dasar dengan target kolom ke laporan. Kode ini bertindak pada kolom Wilayah dari tabel Geo sehingga hanya data di wilayah Barat yang ditampilkan dalam laporan.

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"]
};

Contoh target tingkat hierarki

Contoh kode berikut menerapkan filter dasar dengan target tingkat hierarki ke laporan. Kode ini bertindak pada tingkat Bulan dari hierarki OrderDate dari tabel Penjualan sehingga hanya data di wilayah Barat yang ditampilkan di bawah tingkat hierarki tersebut dalam laporan.

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"]
};

Mengukur contoh target

Contoh kode berikut menerapkan filter tingkat lanjut dengan target pengukuran ke visual. Kode ini bertindak pada ukuran Volume Kategori Total dalam tabel SalesFact sehingga hanya muncul saat nilai tidak kosong.

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"
    }]
}

Contoh target kolom agregat

Kode berikut menentukan target agregasi kolom yang merupakan jumlah nilai di kolom Store dari tabel Penjualan :

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