BI Report တွေဆွဲတဲ့ အချိန်မှာ Date က မရှိမဖြစ်လိုအပ်တဲ့ Dimension ဖြစ်ပြီး လုပ်ငန်းတစ်ခုနဲ့ တစ်ခုမှာ Fiscal Year ကို သတ်မှတ်ပုံခြင်း ကွာခြားတဲ့ အပေါ်မူတည်ပြီး date table ကို တည်ဆောက်ရပါတယ်။ ပုံမှန် Jan ကနေ Dec Fiscal Year သုံးတဲ့ လုပ်ငန်းတွေအတွက်ဆိုရင် တော့ အခက်အခဲမရှိပေမဲ့ Apr to Mar, Jul to Jun ဆိုတာမျိုး သွားတဲ့ လုပ်ငန်းတွေမှာတော့ calculated column ကို သုံးပြီး လိုအပ်တဲ့ attribute တွေကို ထည့်ရပါတယ်။ Fiscal Year April - March အတွက် date table ကို တစ်ဆင့်ချင်း တည်ဆောက်ကြည့်ပါမယ်။
(၁) Data Set view မှာ Table Tools ထဲက New Table ကိုယူပြီး Formula Bar မှာ DimDate=CalendarAuto(3) ကိုထည့်ပါတယ်။ Mar လက Fiscal Year အပိတ်ဖြစ်တဲ့ အတွက် Parameter မှာ 3 ကို ထည့်ရပါတယ်။ Formula ရိုက်ပြီးတဲ့ အချိန်မှာ Date Attribute တစ်ခုပါတဲ့ Table ကို ရပါတယ်။ Date dimension ဖြစ်တဲ့ အတွက် DimDate လို့ နာမည်ပေးပါတယ်။
Model ထဲမှာ ရှိတဲ့ Sales table မှာ 01-Jan-2019 ကနေ 31-Dec-2020 ထိ ရှိနေတဲ့ အတွက် Calendar function က 01-Jan-2019 ရဲ့ Fiscal အစရက်ဖြစ်တဲ့ 01-Apr-2018 က စပြီး 31-Dec-2020 ရဲ့ Fiscal အဆုံးရက် ဖြစ်တဲ့ 31-Mar-2021 အထိကို generate လုပ်ပေးပါတယ်။
Report ရဲ့ Slicer တွေမှာ Year, Quarter, Month တွေကို Filter သုံးမှာ ဖြစ်တဲ့ အတွက် ထည့်ထားတဲ့ date ပေါ်အခြေခံပြီး လိုအပ်တဲ့ attribute တွေကို ထပ်ထည့်ပါမယ်။
(၂) Month ကို ရဖို့အတွက် Date column မှ MonthName = Format([Date], "mmm") ကိုသုံးပြီး လိုအပ်တဲ့ Month Abbre ဖြတ်ထုတ်ပါတယ်။ Month Name အပြည့်လိုချင်ရင်တော့ Format([Date], “mmmm”) သုံးရပါတယ်။ Month Name ရပြီးချိန်မှာ Fiscal Year Order အတိုင်းမှန်နေဖို့ Sort by Column လုပ်ဖို့ အတွက် Month No Column တစ်ခု ထည့်ရပါတယ်။ ပုံမှန် Month Function က Calendar Month Sorting ကိုပဲ ထုတ်ပေးနိုင်တဲ့အတွက် အဲဒါကို သုံးမယ်ဆိုရင် Fiscal Month တွေရဲ့ အစီအစဉ်မမှန်နိုင်တဲ့ အတွက် Fiscal Month အစီအစဉ်ရဖို့အတွက် MonthNo = Month(EDATE([Date],-3)) ကို ရေးပါတယ်။ Date column မှာ ရှိနေတဲ့ တန်ဖိုးရဲ့ ပြီးခဲ့တဲ့ သုံးလမြောက်လရဲ့ နောက်ဆုံးရက်ကို EDate[Date] -3 နဲ့ ခေါ်လိုက်ရင် 01-Apr-2018 ဆိုရင် 01-Jan-2018 ရပါတယ်။ အဲဒီရက်ကို Month နဲ့ ပြန်ဖြတ်လိုက်ရင် 01-Apr-2018 က Calendar အရ 4 ဖြစ်ပေမဲ့ ခုချိန်မှာ 1 ဖြစ်သွားပါတယ်။ Fiscal Year End Month ကို သတ်မှတ်ထားတဲ့ လနဲ့ January လ ကွာခြားချက်ကို EDate မှာ ထည့်ရမှာပါ။ Month No ရလာတော့မှ သူ့ပေါ်မူတည်ပြီး Month Name ကို Sort By Column လုပ်လိုက်ရင် Report တွေမှာ Fiscal Month Order မှန်ပါမယ်။
(၃) Fiscal Year ကို ထည့်ဖို့အတွက် DimDate table မှာ Add Column နဲ့ Calculated column တစ်ခု ထည့်ပြီး Formula ထည့်ပါတယ်။ Logic ပုံစံ က 2019-Apr-01 နေ့ကို 2019-2020 ရဲ့ Fiscal Year အစလို့ သတ်မှတ်တယ်ဆိုရင် 2019-Jan-01 ကနေ 2019-Mar-01 ထိရက်တွေကို သူ့ထက်ငယ်တဲ့ ရက်အနေနဲ့ သတ်မှတ်ပြီး လက်ရှိနှစ်ကို တနှစ်လျော့ပြီး 2018-2019 ပုံစံနဲ့ ထည့်ပါတယ်။ 2019-Apr-01 ကနေ 2019-Dec-31 ထိ ရက်တွေကိုတော့ လက်ရှိ Fiscal ထဲလို့ သတ်မှတ်ပြီး 2019-2020 ပုံစံနဲ့ ထည့်ပါတယ်။ FY18/19 ပုံစံဖြစ်အောင်တော့ နှစ်တွေကို Right နှစ်လုံးဖြတ်ပြီး ရေးပါတယ်။
FYYear = "FY" & IF([Date] >= DATE(YEAR([Date]), 4,1), RIGHT(YEAR([Date]),2) & "/" & RIGHT(YEAR([Date]),2) +1, RIGHT(YEAR([Date]),2) -1 & "/" & RIGHT(YEAR([Date]),2) )
(၄) Quarter လိုချင်ရင်တော့ IF formula နဲ့ ပဲ ဖြစ်ဖြစ် Data Groups function ကို ပဲ ဖြစ်ဖြစ် သုံးပြီး ဆွဲထုတ်လို့ ရပါတယ်။ ဒီပုံမှာတော့ Data Groups ကို သုံးပြီး Quarter ကို ထုတ်ထားပါတယ်။
လိုအပ်တဲ့ Attribute အားလုံး ထည့်ပြီးတဲ့အချိန်မှာ ရှိနေတဲ့ FY Year, Quarter နဲ့ Date မှန်မမှန်ကို Table နဲ့ စစ်ကြည့်နိုင်ပါတယ်။