Bagikan melalui


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.