Power Pivot & DAX #23 – Təqvim Cədvəlinin genişləndirilməsi

Təqvim Cədvəlinin genişləndirilməsi
Power Analytics

DAX haqqındakı bir öncəki yazıda (Power Pivot & DAX #22), Təqvim Cədvəlinin nə olduğu və 4 fərqli yolla hazırlanma üsullarından bəhs etmişdik. Bundan əlavə, təqvim cədvəlinin başlanğıcda, arxa-arxaya sıralanmış günlər olan tək bir sütun olduğunu da vurğulamışdıq. Lakin, bəsit tarixlərlə Power BI-da hər hansı analiz aparmaq çətin və anlamsızdır. Bu səbəblə, əldə etdiyimiz tək sütunlu bu cədvələ yeni sütunlar əlavə edərək, həmin tarixlərə aid olan ili, ayı, həftəni, maliyyə ilini, ayın adını və s. kimi vacit komponentlərin hesablanmasını öyrənəcəyik. Təqvim cədvəlimizi 01.01.2018 – 31.12.2019 periodu üçün yaradaq. DAX formulumuz aşağıdakı kimi olacaqdır:

Power BI-dakı cədvəlimiz hazır olaraq qarşımıza çıxacaqdır.

Bundan sonrası isə, bizə lazım olacağını düşündüyümüz yeni sütunların, bu cədvələ əlavə edilməsi məqsədini daşıyacaqdır.


1. Tarixə aid ilin əlavə edilməsi – YEAR funksiyası

Hər hansı bir cədvələ yeni sütun əlavə etmək üçün (Calculated Column), menyudan Modeling >> New Column seçirik.

Daha sonra, DAX funksiyalarımızda YEAR ilə hər tarixə aid ili hesablayırıq.


2. Ay nömrəsinin hesablanması – MONTH funksiyası

Növbədə, hər tarixə aid ay nömrəsinin hesablanmasındadır. İrəliki addımlarda, aylar üzrə müqayisə aparmaq istəyəcəyimizdə, və ya ayları Slicer Filter daxilinə əlavə edəcəyimizdə faydası toxunacaqdır. Bu dəfə də menyudan Modeling >> New Column seçirik.


3. Ayın adının yazılması – FORMAT funksiyası

Ayın sıra nömrəsinin hesablanmasından savayı, biz tək bir formul ilə, həmin ayın adının yazılmasına da nail ola bilərik. Beləcə, həm filterlərdə, həm də diaqram və qrafiklərdə ayın sıra nömrəsi əvəzinə, hər zaman o ayın adı əks olunmuş olacaqdır.

Menyudan bir daha Modeling >> New Column seçdikdən sonra, FORMAT funksiyasından istifadə edirik.

FORMAT funksiyası, Excel-dəki TEXT funksiyasının ekvivalentidir. İlk komponent olaraq datanı daxil etdikdən sonra, ikinci komponentində onun formatını müəyyən edirik. Custom formatlarla bağlı daha ətraflı Microsoft-un materiallarından tanış ola bilərsiniz:


4. Həftə nömrəsinin hesablanması – WEEKNUM funksiyası

Həftə nömrəsini hesablamaq, Excel-dən də tanıdığımız WEEKNUM funksiyası vasitəsilə olacaqdır.

Burada əlavə olaraq CONCATENATE funksiyasından istifadə etməyimizin səbəbi, həftə nömrəsinin qarşısına W (week) hərfinin gətirilməsidir. Yəni, sadə həftə nömrələri əvəzinə (1, 2, 3, …, 52), qarşısında hərf olan həftə nömrələri (W1, W2, W3, …, W52) daha rahat anlaşılacaqdır.


5. Kvartalın hesablanması – FORMAT funksiyası

Kvartal nömrəsini hesablamaq üçün də, bir daha FORMAT funksiyasından istifadə edəcəyik. Lakin, bu dəfə, tarixlər olan sütun seçildikdən sonra, format hissəsində “Q” yazacağıq.

Bu formul bizə adı 1-dən 4-ə qədər rəqəmlər verəcəkdir, lakin bu rəqəmlərin qarşısına “Q” hərflərini əlavə etməmiz, onları daha anlaşılan edəcəkdir. Bu dəfə fə CONCATENATE funksiyasının yardımından istifadə edəcəyik.


6. Tarixin Həftə sonu / Həftə içi olduğunun müəyyən edilməsi – WEEKDAY funksiyası

WEEKDAY funksiyası ilə Excel-dən də tanışıq, istənilən tarixin həftə daxilindəki nömrəsini hesablamağa yarayır. Bazar ertəsi – 1, Çərşənbə axşamı – 2, Bazar – 7 və s. formatında.

Yazacağımız formul isə aşağıdakı kimi olmalıdır:

Müəyyən etdiyimiz alqoritm çox sadədir:

  1. Günləri bir-bir yoxlayıb, gün nömrələrinin 6 və ya 7 olub-olmadığını test edirik,
  2. 6 və ya 7 isə “no”, yəni həftəiçi olmadığını, deyilsə “yes”, yəni həftəiçi bir gün olduğunu qeyd etməsini istəyirik.

Bu “Yes” və “No”-ları daha sonra həm filterlərdə, həm də həftəiçi / həftəsonu satışlarının qruplaşdırılmasında istifadə edə biləcəyik.


7. Ayın gününün hesablanması – DAY funksiyası

Eynilə, il və ay nömrələrinin hesablanmasında olduğu kimi, DAY funksiyası da istənilən tarixə aid günün nömrəsini verir.

Ay daxilində günlər üzrə analiz aparmaq istəyənlər üçün çox faydalı olacaqdır.

Yekunda, çox vacib bir nyuansı da qeyd etmək lazımdır. Power BI və Power Pivot-da tarix xarakterli hər hansı bir məlumat istifadə etmək lazım olduqda, mütləq və mütləq sadəcə Təqvim Cədvəlindəki sütunlardan istifadə edilməlidir. Bu mövzuda heç bir istisnaya yol vermək olmaz!


Uğurlar!