Properti Bidang yang Diperluas untuk Database Analysis Services (SSRS)
Ekstensi pemrosesan data SQL Server Analysis Services mendukung properti bidang yang diperluas. Properti bidang yang diperluas adalah properti selain properti bidang Nilai dan IsMissing yang tersedia di sumber data dan didukung oleh ekstensi pemrosesan data. Properti yang diperluas tidak muncul di panel Data Laporan sebagai bagian dari kumpulan bidang untuk himpunan data laporan. Anda dapat menyertakan nilai properti bidang yang diperluas dalam laporan Anda dengan menulis ekspresi yang menentukannya berdasarkan nama menggunakan kumpulan Bidang bawaan.
Properti yang diperluas mencakup properti yang telah ditentukan sebelumnya dan properti kustom. Properti yang telah ditentukan sebelumnya adalah properti umum untuk beberapa sumber data yang dipetakan ke nama properti bidang tertentu dan dapat diakses melalui kumpulan Bidang bawaan berdasarkan nama. Properti kustom khusus untuk setiap penyedia data dan dapat diakses melalui koleksi Bidang bawaan hanya melalui sintaks menggunakan nama properti yang diperluas sebagai string.
Saat Anda menggunakan perancang kueri Analysis Services MDX dalam mode grafis untuk menentukan kueri Anda, sekumpulan properti sel dan properti dimensi yang telah ditentukan sebelumnya secara otomatis ditambahkan ke kueri MDX. Anda hanya bisa menggunakan properti yang diperluas yang secara khusus tercantum dalam kueri MDX dalam laporan Anda. Bergantung pada laporan, Anda mungkin ingin mengubah teks perintah MDX default untuk menyertakan dimensi atau properti kustom lain yang ditentukan dalam kubus. Untuk informasi selengkapnya tentang bidang yang diperluas yang tersedia di sumber data Analysis Services, lihat Membuat dan Menggunakan Nilai Properti (MDX).
Bekerja dengan Properti Bidang dalam Laporan
Properti bidang yang diperluas mencakup properti yang telah ditentukan sebelumnya dan properti khusus penyedia data. Properti bidang tidak muncul dengan daftar bidang di panel Data Laporan, meskipun berada di kueri yang dibuat untuk himpunan data; oleh karena itu, Anda tidak dapat menyeret properti bidang ke permukaan desain laporan Anda. Sebagai gantinya, Anda harus menyeret bidang ke laporan lalu mengubah properti Nilai bidang menjadi properti yang ingin Anda gunakan. Misalnya, jika data sel dari kubus telah diformat, Anda dapat menggunakan properti bidang FormattedValue dengan menggunakan ekspresi berikut: =Fields!FieldName.FormattedValue
.
Untuk merujuk ke properti yang diperluas yang tidak ditentukan sebelumnya, gunakan sintaks berikut dalam ekspresi:
- Bidang! FieldName("PropertyName")
Properti Bidang yang Telah Ditentukan Sebelumnya
Dalam kebanyakan kasus, properti bidang yang telah ditentukan berlaku untuk pengukuran, tingkat, atau dimensi. Properti bidang yang telah ditentukan sebelumnya harus memiliki nilai yang sesuai yang disimpan di sumber data Analysis Services. Jika nilai tidak ada, atau jika Anda menentukan properti bidang khusus ukuran pada tingkat (misalnya), properti mengembalikan nilai null.
Anda dapat menggunakan salah satu sintaks berikut untuk merujuk ke properti yang telah ditentukan sebelumnya dari ekspresi:
Bidang! FieldName.PropertyName
Bidang! FieldName("PropertyName")
Tabel berikut ini menyediakan daftar properti bidang yang telah ditentukan sebelumnya yang bisa Anda gunakan.
Properti | Jenis | Deskripsi atau nilai yang diharapkan |
---|---|---|
Nilai | Objek | Menentukan nilai data bidang. |
Mengasingkan | Boolean | Menunjukkan apakah bidang ditemukan dalam himpunan data yang dihasilkan. |
UniqueName | String | Mengembalikan nama tingkat yang sepenuhnya memenuhi syarat. Misalnya, nilai UniqueName untuk karyawan mungkin [Karyawan].[ Departemen Karyawan]. [Departemen].&[Sales].&[Amerika Utara n Sales Manager].&[272]. |
Warna Latar Belakang | String | Mengembalikan warna latar belakang yang ditentukan dalam database untuk bidang . |
Warna | String | Mengembalikan warna latar depan yang ditentukan dalam database untuk item. |
FontFamily | String | Mengembalikan nama font yang ditentukan dalam database untuk item. |
Ukuran Font | String | Mengembalikan ukuran titik font yang ditentukan dalam database untuk item. |
FontWeight | String | Mengembalikan bobot font yang ditentukan dalam database untuk item. |
FontStyle | String | Mengembalikan gaya font yang ditentukan dalam database untuk item. |
TextDecoration | String | Mengembalikan pemformatan teks khusus yang ditentukan dalam database untuk item. |
FormattedValue | String | Mengembalikan nilai yang diformat untuk ukuran atau gambar kunci. Misalnya, properti FormattedValue untuk Kuota Jumlah Penjualan mengembalikan format mata uang seperti $1.124.400,00. |
Kunci | Objek | Mengembalikan kunci untuk tingkat. |
LevelNumber | Bilangan bulat | Untuk hierarki induk-anak, mengembalikan tingkat atau angka dimensi. |
ParentUniqueName | String | Untuk hierarki induk-anak, mengembalikan nama tingkat induk yang sepenuhnya memenuhi syarat. |
Catatan
Nilai ada untuk properti bidang yang diperluas ini hanya jika sumber data (misalnya, kubus Analysis Services) menyediakan nilai-nilai ini saat laporan Anda berjalan dan mengambil data untuk himpunan datanya. Anda kemudian dapat merujuk ke nilai properti bidang tersebut dari ekspresi apa pun menggunakan sintaks yang dijelaskan di bagian berikut. Namun, karena bidang ini khusus untuk penyedia data ini, perubahan yang Anda buat pada nilai-nilai ini tidak disimpan dengan definisi laporan.
Contoh Properti yang Diperluas
Untuk mengilustrasikan properti yang diperluas, kueri MDX dan tataan hasil berikut menyertakan beberapa properti anggota yang tersedia dari atribut dimensi yang ditentukan untuk kubus. Properti anggota yang disertakan adalah MEMBER_CAPTION, UNIQUENAME, Properties("Day Name"), MEMBER_VALUE, PARENT_UNIQUE_NAME, dan MEMBER_KEY.
Kueri MDX ini berjalan terhadap kubus AdventureWorks2022 dalam database DW AdventureWorks2022, disertakan dengan database sampel AdventureWorks2022.
WITH MEMBER [Measures].[DateCaption]
AS '[Date].[Date].CURRENTMEMBER.MEMBER_CAPTION'
MEMBER [Measures].[DateUniqueName]
AS '[Date].[Date].CURRENTMEMBER.UNIQUENAME'
MEMBER [Measures].[DateDayName]
AS '[Date].[Date].Properties("Day Name")'
MEMBER [Measures].[DateValueinOriginalDatatype]
AS '[Date].[Date].CURRENTMEMBER.MEMBER_VALUE'
MEMBER [Measures].[DateParentUniqueName]
AS '[Date].[Date].CURRENTMEMBER.PARENT_UNIQUE_NAME'
MEMBER [Measures].[DateMemberKeyinOriginalDatatype]
AS '[Date].[Date].CURRENTMEMBER.MEMBER_KEY'
SELECT {
[Measures].[DateCaption],
[Measures].[DateUniqueName],
[Measures].[DateDayName],
[Measures].[DateValueinOriginalDatatype],
[Measures].[DateParentUniqueName],
[Measures].[DateMemberKeyinOriginalDatatype]
} ON COLUMNS , [Date].[Date].ALLMEMBERS ON ROWS
FROM [Adventure Works]
Saat Anda menjalankan kueri ini di panel kueri MDX, Anda mendapatkan tataan hasil dengan 1158 baris. Empat baris pertama diperlihatkan dalam tabel berikut.
DateCaption | DateUniqueName | DateDayName | DateValueinOriginalDatatype | DateParentUniqueName | DateMemberKeyinOriginalDatatype |
---|---|---|---|---|---|
Semua Periode | [Tanggal]. [Tanggal]. [Semua Periode] | (null) | (null) | (null) | 0 |
1-Jul-01 | [Tanggal]. [Tanggal].&[1] | Hari Minggu | 7/1/2001 | [Tanggal]. [Tanggal]. [Semua Periode] | 1 |
2-Jul-01 | [Tanggal]. [Tanggal].&[2] | Senin | 7/2/2001 | [Tanggal]. [Tanggal]. [Semua Periode] | 2 |
3-Jul-01 | [Tanggal]. [Tanggal].&[3] | Selasa | 7/3/2001 | [Tanggal]. [Tanggal]. [Semua Periode] | 3 |
Kueri MDX default yang dibuat menggunakan MDX Query Designer dalam mode grafis hanya menyertakan MEMBER_CAPTION dan UNIQUENAME untuk properti dimensi. Secara default, nilai-nilai ini selalu merupakan String jenis data.
Jika Anda memerlukan properti anggota dalam jenis data aslinya, Anda dapat menyertakan properti tambahan MEMBER_VALUE dengan memodifikasi pernyataan MDX default di perancang kueri berbasis teks. Dalam pernyataan MDX sederhana berikut, MEMBER_VALUE telah ditambahkan ke daftar properti dimensi untuk diambil.
SELECT NON EMPTY {[Measures].[Order Count]} ON COLUMNS,
NON EMPTY { ([Date].[Month of Year].[Month of Year] ) }
DIMENSION PROPERTIES
MEMBER_CAPTION, MEMBER_UNIQUE_NAME, MEMBER_VALUE ON ROWS
FROM [Adventure Works]
CELL PROPERTIES
VALUE, BACK_COLOR, FORE_COLOR,
FORMATTED_VALUE, FORMAT_STRING,
FONT_NAME, FONT_SIZE, FONT_FLAGS
Empat baris pertama hasil di panel Hasil MDX muncul dalam tabel berikut.
Bulan Dalam Setahun | Jumlah Pesanan |
---|---|
Januari | 2,481 |
Februari | 2,684 |
Maret | 2,749 |
April | 2,739 |
Meskipun properti adalah bagian dari pernyataan pemilihan MDX, properti tersebut tidak muncul di kolom kumpulan hasil. Namun demikian, data tersedia untuk laporan dengan menggunakan fitur properti yang diperluas. Di panel hasil kueri MDX di SQL Server Management Studio, Anda bisa mengklik dua kali pada sel dan melihat nilai properti sel jika diatur dalam kubus. Jika Anda mengklik dua kali pada sel Jumlah Pesanan pertama yang berisi 1.379, Anda akan melihat jendela pop-up dengan properti sel berikut:
Properti | Nilai |
---|---|
CellOrdinal | 0 |
VALUE | 2481 |
BACK_COLOR | (null) |
FORE_COLOR | (null) |
FORMATTED_VALUE | 2,481 |
FORMAT_STRING | #, # |
FONT_NAME | (null) |
FONT_SIZE | (null) |
FONT_FLAGS | (null) |
Jika Anda membuat himpunan data laporan dengan kueri ini dan mengikat himpunan data ke tabel, Anda bisa melihat properti VALUE default untuk bidang, misalnya, =Fields!Month_of_Year!Value
. Jika Anda mengatur ekspresi ini sebagai ekspresi pengurutan untuk tabel, hasil Anda akan mengurutkan tabel menurut abjad berdasarkan bulan karena bidang Nilai menggunakan tipe data String . Untuk mengurutkan tabel sehingga bulan berada dalam urutan yang terjadi pada tahun dengan Januari pertama dan Desember terakhir, gunakan ekspresi berikut:
=Fields!Month_of_Year("MEMBER_VALUE")
Ini mengurutkan nilai bidang dalam tipe data bilangan bulat aslinya dari sumber data.