Bagikan melalui


ValueMap dan Value Qualifiers

Peta nilai adalah array yang ditautkan ke properti dengan kualifikasi Nilai dan ValueMap .

Properti bertindak sebagai indeks ke dalam array, menyimpan nilai yang mewakili salah satu nilai dalam array. Dengan menggunakan kode MOF, Anda dapat memiliki jenis peta nilai berikut:

  • Pemetaan array ke bilangan bulat.

    Anda dapat menentukan array dengan kualifikasi Nilai dan menautkan array langsung ke properti bilangan bulat, seperti yang ditunjukkan dalam contoh berikut:

    [Values {"OK", "Error", "Degraded", "Unknown"}, Read]
    sint32 Status;
    

    Dalam contoh ini, nilai properti Status adalah indeks ke dalam array string yang ditentukan oleh Nilai. Properti hanya dapat mengambil nilai yang sesuai dengan posisi ordinal dalam array Nilai dikurangi 1. Misalnya, mengatur Status ke "1" memetakan ke nilai "Kesalahan". Properti indeks hanya dapat mengambil nilai yang sesuai dengan posisi dalam array Nilai . Misalnya, jika array memiliki 10 entri, properti indeks dapat bercerita 0 hingga 9, bukan 30 atau 177.

  • Pemetaan array ke pemetaan array lain ke bilangan bulat.

    Jika Anda ingin membuat indeks yang tidak menggunakan sistem penghitungan ordinal, gunakan kualifikasi ValueMap . Kualifikasi ValueMap menyiapkan array lain yang menyimpan sistem penomoran indeks arbitrer, seperti yang ditunjukkan dalam contoh berikut:

    [ValueMap {"1", "3", "99", "0"}, 
     Values {"OK", "Error", "Degraded", "Unknown"}, Read]
    sint32 Status;
    

    Meskipun Anda harus menempatkan nilai ValueMap dalam kutipan, WMI mempertimbangkan bilangan bulat nilai. Oleh karena itu, Dalam contoh ini Anda dapat mengatur properti Status ke bilangan bulat dalam set ValueMap : 1, 3, 99, atau 0. WMI memetakan setiap bilangan bulat dari posisi ordinal dalam array string ValueMap ke posisi yang sesuai dalam array Nilai . Misalnya, mengatur Status ke 0 peta ke "Tidak Diketahui".

  • Pemetaan array ke pemetaan array lain ke string.

    Jika Anda tidak ingin menggunakan bilangan bulat untuk mengindeks array, Anda dapat menggunakan string untuk menahan salah satu nilai yang mungkin dalam array Anda. Untuk melakukannya, Anda harus menentukan array Value dan ValueMap yang keduanya berisi string, seperti yang diperlihatkan dalam contoh berikut:

    [ValueMap {"OK", "Error", "Degraded", "Unknown"}, 
     Values {"OK", "Error", "Degraded", "Unknown"}, Read]
    string Status;
    

    Dengan properti string, nilai aktual yang diizinkan dari properti adalah entri dalam array ValueMap . Misalnya, Anda dapat mengatur Status ke "OK" atau "Unknown".

Terserah aplikasi untuk memanfaatkan pemetaan dengan cara yang berguna. Terserah penyedia untuk menegakkan rentang nilai hukum.

Keterangan

Dalam memutuskan apakah akan menggunakan kualifikasi Nilai ValueMap/ atau BitMap/BitValues, tentukan apakah salah satu nilai yang ditunjukkan dapat terjadi secara bersamaan. Jika ada beberapa nilai bersamaan, Anda harus menggunakanBitValuesBitMap/. Jika semua nilai saling eksklusif, Anda harus menggunakan kualifikasiNilaiValueMap/.

BitMap dan BitValues