Membuat urutan elemen acak dalam daftar dimensi dan ukuran tabel pivot Excel untuk model tabel kubus SSAS

Jika Anda harus berurusan dengan sebuah kubus di mana jumlah langkah dan pengukuran lebih dari 9000 dan tidak ada cukup tiga layar untuk memenuhi ini, maka Anda mungkin juga mendengar erangan pengguna tentang ketidaknyamanan bekerja dengan monster ini. Bagaimanapun, pengguna paling sering bekerja dengan pengukuran yang sama, tanpanya hampir tidak ada sampel yang bisa dilakukan. Namun, karena kekhasan excel, yang suka mengurutkan berdasarkan abjad semua elemen yang terletak di bidang tabel pivot , objek paling populer ini sering tersebar di seluruh daftar, diselingi dengan elemen (jarang digunakan) lainnya.


Anda harus menggulir ke atas dan ke bawah daftar sepuluh kali saat mencoba mengatur filter dalam tiga bidang (Tanggal, Produk, Klien). Bekerja dengan ini setiap hari tidak cukup menegangkan.

Solusinya dangkal dan bukan baru - di awal dimensi nama menambahkan karakter atau angka, sehingga mempengaruhi urutan.

Tetapi pengguna adalah satu sisi dari koin, mereka merasa nyaman dengan pendekatan ini. Tapi bagaimana dengan para pengembang?
Bagaimanapun, itu harus seperti ini: Anda mulai menulis nama dimensi dalam rumus, dan studio memberikan petunjuk, kan? Tetapi hanya dalam kasus karakter tambahan, semuanya terlihat dalam kode, katakanlah ... tidak juga. Di VS2017, pencarian sudah dilakukan untuk entri, tetapi pada yang sebelumnya tidak dan saya harus menulis Kalender bukan dengan huruf K , tetapi dengan nomor 5 , karena 5 adalah Kalender . Pertanyaan dalam program lain harus ditulis tanpa diminta dan untuk menyebutkan digit mana dari dimensi atau bidang yang merupakan pencarian lainnya.



Ketika Anda perlu mengubah urutan, maka, pada kenyataannya, Anda perlu mengganti nama tabel atau bidang, dan jika bidang ini digunakan dalam rumus, studio akan mengoreksi rumus juga. Ketika ada lusinan rumus (dan selalu ada lusinan), maka setengah dari model akan disorot di Git, karena studio benar-benar memperbaiki semua rumus, sementara saya hanya ingin bertukar bidang dalam urutan. Permintaan di sumber lain (di luar studio) akan gagal sama sekali. Sangat tidak nyaman!

Tapi ada cara.

Namun dalam model tabular, seperti pada model multidimensi, dimungkinkan untuk menambahkan terjemahan. Kami akan menggunakannya.

Penerjemahan dilakukan dengan menurunkan file .json dari model .bim dengan teks, mengeditnya dan kemudian mengunggahnya kembali ke model. Tetapi Visual Studio tidak mengizinkan mengunggah file untuk bahasa Rusia jika model tersebut asli Rusia (secara umum, terjemahan tidak dapat dibongkar untuk bahasa dasar model). Tetapi Anda dapat membongkar yang lain!



File yang diunggah harus diedit menggunakan editor teks apa pun yang mendukung Unicode, menggantikan en-US dengan ru-RU di dalamnya .

Kemudian, menggunakan program Translator SSAS Tabular khusus, Anda dapat mengedit nama (tetapi Anda dapat melakukannya di notebook, jika Anda suka,).



Impor file kami kembali ke proyek



Vuyalya



Terjemahan memiliki kelebihan signifikan lainnya:

Dari file .json, hanya baris yang dimodifikasi (diterjemahkan) yang dimuat ke dalam model, dan bukan keseluruhan file, dan hanya terjemahan yang disimpan. Oleh karena itu, bahkan jika dimensi atau ukuran baru muncul, dan Anda lupa untuk "menerjemahkannya", tidak ada yang akan rusak, itu hanya akan ditampilkan di Excel apa adanya.

Anda tentu saja tidak dapat melakukan semua manipulasi ini dengan substitusi en-US untuk ru-RU, tetapi kemudian pengguna harus mengkonfigurasi ulang koneksi ke sumber data dengan menambahkan opsi lokal bahasa Inggris.

Ada fitur

Setelah kami menambahkan terjemahan untuk bahasa dasar ke model, itu tidak dapat dihapus tanpa persiapan awal.



Kemungkinan besar, ini tidak mungkin diperlukan, tetapi, seperti yang Anda tahu, jika Anda tidak bisa, tetapi benar-benar ingin, maka Anda bisa.

Buka Solution Explorer , klik kanan pada file model .bim dan pilih item Go to code



Dalam kode, kita mencari baris ru-RU , tetapi bukan yang di awal file, tetapi yang lebih dekat ke akhir, dan memperbaikinya pada en-US





Kami memperbaiki, menyimpan, menemukan kembali model dalam mode desain dan memeriksa



Seperti yang Anda pahami, ini adalah fungsi tidak berdokumen dan Anda memutuskan untuk menggunakannya dengan risiko Anda sendiri.

Source: https://habr.com/ru/post/id427863/


All Articles