Pengiraan Mingguan DAX – Isu Perisikan Masa LuckyTemplates

Pengiraan Mingguan DAX – Isu Perisikan Masa LuckyTemplates

Dalam tutorial hari ini, saya akan memberikan beberapa teknik dan petua tentang cara menangani masalah biasa yang disebabkan oleh butiran mingguan DAX dalam pengiraan risikan masa. Anda boleh menonton video penuh tutorial ini di bahagian bawah blog ini.

Saya baru-baru ini membuat tutorial untuk mendapatkan Nilai Minggu Sebelumnya dalam LuckyTemplates. Sejak itu, saya mempunyai beberapa soalan yang berkaitan dengan kecerdasan masa dan khususnya berkaitan dengan nilai mingguan DAX. Itu tidak menghairankan kerana minggu benar-benar butiran yang paling berkelakuan buruk dalam sfera risikan masa.

Dalam kes bulan, anda sentiasa mendapat 12 bulan dalam setahun. Dalam kes suku, anda sentiasa mendapat empat suku. Minggu berbeza kerana terdapat tujuh hari dalam seminggu dan 52 minggu dalam setahun – iaitu 364 hari. Jadi, anda mempunyai hari tambahan untuk melepak di sana. Dalam tahun Lompat, anda mempunyai dua hari tambahan.

Jadi, itu sebenarnya berakhir dalam beberapa tahun, berdasarkan skema penomboran untuk nombor minggu ISO, kadang-kadang mempunyai 52 minggu, kadang-kadang 53 minggu. Minggu ke-53 adalah minggu yang akan menyebabkan paling banyak masalah.

Isi kandungan

Isu Kecerdasan Masa Pengiraan Mingguan DAX

Dalam contoh ini, saya menggunakan Jumlah Harga Tempat. Dengan jumlah, lebih mudah untuk digambarkan dan dibincangkan.

Pengiraan Mingguan DAX – Isu Perisikan Masa LuckyTemplates

Dalam kes ini, untuk setiap tahun, kami ingin menunjukkan baris untuk minggu 53, sama ada terdapat minggu 53 pada tahun itu atau tidak. Jadi, anda boleh lihat pada tahun 2018 dan 2019, tidak ada minggu ke-53, tetapi pada tahun 2020, ada. Kami mahu memastikannya konsisten supaya barisan ke-53 berada dalam setiap tahun. Tetapi kemudian, metrik akan kosong untuk tahun-tahun yang tidak ada tahun ke-53.

Salah satu cara biasa yang kami lakukan ialah pergi Tunjukkan item tanpa data dan pastikan ia dihidupkan. Dalam kes ini, ia dihidupkan, tetapi ia tidak akan membantu kerana ia berfungsi apabila anda mempunyai baris fizikal, tetapi hanya tiada data yang dikaitkan dengan baris itu. Dalam kes ini, kami tidak mempunyai barisan pun.

Pengiraan Mingguan DAX – Isu Perisikan Masa LuckyTemplates

Teknik seperti menggunakan atau Buang Penapis tidak akan berfungsi kerana tiada apa-apa untuk dialih keluar. Penapis pada baris itu tidak wujud. Jadi, persoalannya ialah bagaimana kita memasukkan baris itu ke dalam setiap tahun di mana ia tidak wujud? Dan kemudian, ini benar-benar menjadi masalah pemodelan data.

Salah satu perkara yang berpotensi kami lakukan ialah pergi ke skema kepingan salji di mana kami menapis jadual Tarikh dengan sesuatu yang akan memaksa minggu ke-53 itu ke dalam visual kami setiap tahun. Fungsi yang terlintas di fikiran untuk ini ialah .

Pengiraan Mingguan DAX – Isu Perisikan Masa LuckyTemplates

CROSSJOIN digunakan untuk memadankan dua medan bersama-sama yang mungkin mempunyai hubungan atau tidak. Mereka tidak perlu mempunyai hubungan tidak seperti kebanyakan atau , atau fungsi jadual lain.

Dalam kes ini, CROSSJOIN mengambil dua lajur dan mencipta setiap gabungan dua lajur tersebut, sama ada yang wujud dalam set data atau tidak. Itulah yang kita mahukan.

Kami mempunyai kami untuk membuat jadual daripada lajur. CROSSJOIN mengambil dua jadual dan kemudian NILAI pada nombor minggu ISO, dan kami hanya memadankannya bersama-sama. Itu akan memberi kita 53 minggu setiap tahun.

Dan kemudian, kami menambah lajur ketiga pada jadual. Kami boleh melakukan ini dalam Power Query, tetapi lebih mudah untuk menunjukkan kepada anda logik dalam DAX. Apa yang kami lakukan di sini ialah kami sebenarnya mengambil dan menggabungkan Tahun dengan tanda sempang, dan kemudian nombor minggu, supaya kami mempunyai medan utama untuk menyertainya ke jadual Tarikh.

Pengiraan Mingguan DAX – Isu Perisikan Masa LuckyTemplates

Walau bagaimanapun, kita perlu melakukan sedikit lagi kerja di sini kerana cara medan utama berfungsi dalam jadual Tarikh ialah ia adalah tanda sempang Tahun empat digit dan kemudian minggu dua digit. Jadi, dalam kes di mana nombor minggu ISO ialah dua digit, kita hanya boleh melakukan penggabungan mudah. Dalam kes di mana ia adalah satu digit, kita perlu mengambil nombor tahun dan kemudian menggabungkannya dengan tanda sempang, kemudian sifar pendahuluan, dan kemudian nombor minggu.

Setelah kami mendapatnya, kami boleh mengambil jadual itu dalam model data dan mencari lajur Minggu & Tahun kami. Kemudian, kami menyertai mereka dalam hubungan satu-ke-banyak. Saya sentiasa suka menghidupkan pilihan ini pada medan berkaitan Pin ke bahagian atas kad supaya apabila kami menyemaknya, kami dapat melihatnya serta-merta.

Pengiraan Mingguan DAX – Isu Perisikan Masa LuckyTemplates

Jika kita kembali kepada visual, kita perlu menukar baris. Daripada nombor Tahun & Minggu, kami mahu menggunakan nombor Tahun & Minggu dari jadual CROSSJOIN. Dan sekarang, kami mempunyai minggu ke-53 pada 2018 dengan kosong, dan minggu ke-53 pada 2019 dengan kosong. Pada tahun 2020, kami mempunyai nombor sebenar kerana ia mempunyai minggu ke-53.

Pengiraan Mingguan DAX – Isu Perisikan Masa LuckyTemplates

Kita boleh berhenti di sini, kecuali fakta bahawa kita kini telah keluar daripada model Skema Bintang. Pada bila-bila masa anda beralih daripada Skema Bintang dalam LuckyTemplates, anda bergerak di luar bidang yang biasanya dianggap sebagai amalan terbaik.

Oleh itu, untuk Skema Snowflake, ia bukanlah satu pelanggaran yang besar. Terdapat kes di mana anda pasti mahu menggunakannya, tetapi jika anda boleh mengelakkannya, cuba. Ia mengurangkan pertindihan, tetapi tidak semestinya saiz. Ia membolehkan anda menggunakan langkah kiraan lurus, tetapi terdapat isu prestasi dan potensi isu kebolehgunaan, dan pastinya peningkatan dalam kerumitan DAX. Ia menghalang anda daripada membina hierarki merentas jadual, dan mungkin yang paling bermasalah ialah ia benar-benar boleh mengacaukan keupayaan anda untuk menyegerakkan penghiris merentas medan yang berbeza.

Jadi, sementara ini menyelesaikan masalah, ia melakukannya dengan cara yang tidak bagus. Mari lihat sama ada kita boleh melakukan lebih baik daripada ini. Mari beralih ke model data yang lain. Dalam model ini, saya telah mengambil data yang sama, tarikh dan harga spot, tetapi kali ini saya telah mengalih keluar jadual CROSSJOIN. Ia masih wujud, tetapi ia tidak bersambung.

Pengiraan Mingguan DAX – Isu Perisikan Masa LuckyTemplates

Tetapi jika kita melihat DAX, kita akan melihat bahawa ia adalah DAX yang sama yang mencipta jadual itu dalam laporan lain. Jadi, daripada menyambungkannya dalam hubungan fizikal, dan kemudian melanggar Skema Bintang, dan menukarnya menjadi Skema Kepingan Salji, kami boleh mengekalkan Skema Bintang dan hanya menggunakan hubungan maya.

Pengiraan Mingguan DAX – Isu Perisikan Masa LuckyTemplates

Untuk melakukan itu, kami akan menggunakan fungsi yang dipanggil . Ia mewujudkan hubungan itu antara jadual tetapi melakukannya secara maya. Kami melakukannya menggunakan kerana kami akan mengubah konteks. Dalam kes ini, konteksnya adalah berkenaan dengan perhubungan. Jadi, kami telah mendapat Jumlah Harga Tempat kami, dan kemudian kami mempunyai TREATAS. Kami mempunyai untuk menukar lajur itu menjadi jadual.

Dan kemudian, kami mempunyai medan Tahun & Minggu, yang merupakan kunci yang kami buat. Kami telah menyertainya secara maya ke Minggu & Tahun dalam jadual Tarikh. Jadi sekarang kami mempunyai jadual Crossjoint yang menapis jadual Tarikh dengan cara yang sama seperti yang dilakukan semasa kami mempunyai hubungan fizikal, tetapi tanpa melanggar Skema Bintang.

Pengiraan Mingguan DAX – Isu Perisikan Masa LuckyTemplates

Kami kini boleh mengambil dan menurunkan Jumlah Harga Tempat TREATAS ke dalam matriks dan apa yang kami lihat adalah jumlah yang sama. Dengan cara ini, kami telah melakukannya tanpa mengganggu model data kami dan menanggung sebarang keburukan yang kami bincangkan berkaitan dengan Skema Kepingan Salji.

Pengiraan Mingguan DAX – Isu Perisikan Masa LuckyTemplates


Dapatkan Nilai LuckyTemplates Minggu Sebelum Menggunakan DAX & Power Query
Mengira Jualan Mingguan w/DAX Dalam LuckyTemplates
Time Intelligence Dalam DAX: Cara Memilih Tempoh Permulaan Secara Dinamik

Kesimpulan

Dalam tutorial ini, saya telah menunjukkan kepada anda beberapa cara untuk menangani isu pengiraan mingguan DAX dalam LuckyTemplates. Salah satunya adalah dengan menggunakan CROSSJOIN, tetapi ia mempunyai beberapa kelemahan. Cara kedua ialah dengan menggunakan TREATAS, mewujudkan hubungan maya, dan tidak melanggar pendekatan Skema Bintang.

Itu adalah salah satu teknik yang cukup berguna untuk menangani masalah minggu 53 itu. Saya harap anda mendapati ia berguna. Saya ingin tahu pendapat anda tentang perkara ini. Beritahu saya dalam komen di bawah.

Semua yang terbaik,


Apa Itu Diri Dalam Python: Contoh Dunia Sebenar

Apa Itu Diri Dalam Python: Contoh Dunia Sebenar

Apa Itu Diri Dalam Python: Contoh Dunia Sebenar

Cara Menyimpan & Memuatkan Fail RDS Dalam R

Cara Menyimpan & Memuatkan Fail RDS Dalam R

Anda akan belajar cara menyimpan dan memuatkan objek daripada fail .rds dalam R. Blog ini juga akan membincangkan cara mengimport objek dari R ke LuckyTemplates.

N Hari Perniagaan Pertama Dilawati Semula – Penyelesaian Bahasa Pengekodan DAX

N Hari Perniagaan Pertama Dilawati Semula – Penyelesaian Bahasa Pengekodan DAX

Dalam tutorial bahasa pengekodan DAX ini, pelajari cara menggunakan fungsi GENERATE dan cara menukar tajuk ukuran secara dinamik.

Pamerkan Cerapan Menggunakan Teknik Visual Dinamik Berbilang Thread Dalam LuckyTemplates

Pamerkan Cerapan Menggunakan Teknik Visual Dinamik Berbilang Thread Dalam LuckyTemplates

Tutorial ini akan merangkumi cara menggunakan teknik Visual Dinamik Berbilang Thread untuk mencipta cerapan daripada visualisasi data dinamik dalam laporan anda.

Pengenalan Untuk Menapis Konteks Dalam LuckyTemplates

Pengenalan Untuk Menapis Konteks Dalam LuckyTemplates

Dalam artikel ini, saya akan menjalankan konteks penapis. Konteks penapis ialah salah satu topik utama yang perlu dipelajari oleh mana-mana pengguna LuckyTemplates pada mulanya.

Petua Terbaik Menggunakan Aplikasi Dalam Perkhidmatan Dalam Talian LuckyTemplates

Petua Terbaik Menggunakan Aplikasi Dalam Perkhidmatan Dalam Talian LuckyTemplates

Saya ingin menunjukkan cara perkhidmatan dalam talian LuckyTemplates Apps boleh membantu dalam mengurus laporan dan cerapan berbeza yang dijana daripada pelbagai sumber.

Analisis Perubahan Margin Keuntungan Lebih Masa – Analitis Dengan LuckyTemplates Dan DAX

Analisis Perubahan Margin Keuntungan Lebih Masa – Analitis Dengan LuckyTemplates Dan DAX

Ketahui cara untuk menyelesaikan perubahan margin keuntungan anda menggunakan teknik seperti mengukur percabangan dan menggabungkan formula DAX dalam LuckyTemplates.

Idea Pewujudan Untuk Cache Data Dalam DAX Studio

Idea Pewujudan Untuk Cache Data Dalam DAX Studio

Tutorial ini akan membincangkan tentang idea pewujudan cache data dan cara ia mempengaruhi prestasi DAX dalam memberikan hasil.

Pelaporan Perniagaan Menggunakan LuckyTemplates

Pelaporan Perniagaan Menggunakan LuckyTemplates

Jika anda masih menggunakan Excel sehingga sekarang, maka inilah masa terbaik untuk mula menggunakan LuckyTemplates untuk keperluan pelaporan perniagaan anda.

Apakah LuckyTemplates Gateway? Semua yang Anda Perlu Tahu

Apakah LuckyTemplates Gateway? Semua yang Anda Perlu Tahu

Apakah LuckyTemplates Gateway? Semua yang Anda Perlu Tahu