منوی دسته بندی

ساخت جدول (دایمنشن) تاریخ در Power BI

استفاده از دایمنشن یا جدول تاریخ در Power BI عموما به دلیل عدم پشتیبانی Power BI از تاریخ شمسی و محاسبات تاریخ شمسی در زبان دکس (DAX) است. به عنوان مثال برای محاسبه مقدار فروش از ابتدای سال جاری میلادی می توان از تابع TOTALYTD در زبان دکس استفاده کرد. اما برای تاریخ شمسی تابع معادلی برای این کار وجود ندارد. و برای این کار نیاز به ساخت فرمول با زبان دکس (DAX) است. بنابراین نیاز به جدولی داریم که برای به ازای هر روز میلادی، معادل روز، سال، ماه، سال ماه و … شمسی آن در جدول موجود باشد. این جدول را جدول تاریخ یا دایمنشن تاریخ می نامیم. وجود این جدول در مدل داده در Power BI امری ضروری است.

آموزش رایگان Power BI

جدول تاریخ (دایمنشن تاریخ) چیست

ساختار جدول تاریخ به این صورت است که هر ردیف این جدول یک روز را نشان می دهد. در هر روز ستونهای مختلفی مثال تاریخ روز میلادی، سال میلادی، ماه میلادی، سال ماه میلادی، تاریخ شمسی، سال شمسی، ماه شمسی، سال ماه شمسی و … وجود دارد. این جدول به نحوی تهیه می شود که نیاز به بروزرسانی نداشته باشد. یعنی به عنوان مثال از تاریخ اول فروردین سال 1300 تا آخر اسفند ۱۴۹۹ را به صورت کامل در بر دارد. بنابراین تا مدتها نیاز به بروزرسانی ندارد. در تصویر زیر یک جدول دایمنشن تاریخ را مشاهده می کنید. همچنین میتواند دایمنشن تاریخ را دانلود کنید.

Dim Date Power BI

آموزش ساخت دایمنشن تاریخ در Power BI

برای ساخت جدول تاریخ در Power BI می توان از دو طریق اقدام کرد. روش اول ساخت دایمنشن تاریخ در Power Query و با استفاده از توابع زبان M است. در این روش از توابع M  مثل List.Dates استفاده Date.ToText استفاده کرد. و در ادامه نیز از ابزارهای خود Power Query برای ساخت سایر ستونها استفاده کرد. در این روش هم می توانیم ستونهای مربوط به تاریخ میلادی و هم تاریخ شمسی را ایجاد کنیم. راه دیگر ساخت دایمنشن تاریخ  با استفاده از زبان دکس (DAX) است. در این روش نیز می توان از توابع دکس مثل CalendarAuto، Calendar، و توابع دیگری مثل Year, Month, Week, Format استفاده کرد. متاسفانه در روش دوم نمی توانیم ستونهای مرتبط با تاریخ شمسی را ایجاد کنیم. در ویدیو آموزشی زیر، ساخت دایمنشن تاریخ با هر دو روش Power Query و استفاده از زبان دکس (DAX)،  به صورت کامل بررسی شده است. 

پایان

آیا این نوشته برایتان مفید بود؟

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *