انعطاف پذیری و قدرت نمایش بصری داده ها در نرم افزار Power BI و با کد نویسی Dax غیرقابل انکار است. برای افراد خبره حوزه تحلیل داده که اغلب با مجموعههای بزرگی از دادهها سر و کار دارند، این پلتفرم راهحلهای بصری برای سادهسازی تحلیلهایشان ارائه میدهد.
یکی از این ویژگیها، امکان سفارشیسازی آسان مرتبسازی برای مقادیر جدولی است که از ستونها نشات میگیرند. با استفاده از جدول ترتیب مرتب سازی سفارشی و پیوند دادن آن به مدل داده خود، کاربران می توانند به سرعت داده های خود را به گونه ای مرتب کنند که به بهترین وجه مطابق با نیازهای آنها باشد.
با این حال، مانند هر ابزار قوی دیگری، پیچیدگی ها و سناریوهای منحصر به فردی وجود دارد که باید در نظر بگیرید. گاهی اوقات، تمرکز از مقادیر ستونها به measure ها تغییر میکند و مجموعهای از چالشها را ارائه میدهد. به جای مقادیر ستون های مرسوم، ممکن است مواردی وجود داشته باشد که نیاز به اعمال مکانیزم مرتب سازی سفارشی به طور خاص برای measure ها وجود داشته باشد.
سناریوی زیر را در نظر بگیرید: میخواهید ستون «وضعیت کلی» را متفاوت از ترتیب حروف الفبای استاندارد مرتب کنید. در حالت ایدهآل، دنبالهای میخواهید که وضعیتهای مختلف مانند «Amazing»، «Low»، و «Medium» را منعکس کند.
اندازه گرفتن اصلی DAX برای این سناریو در اینجا آمده است:
در جداول Power BI، نتایج measure بهطور پیشفرض فقط بر اساس حروف الفبا یا عددی قابل مرتبسازی هستند. برای دور زدن این موضوع، به تکنیکی نیاز داریم که ترتیب مرتب سازی مورد نظر را در عین رعایت محدودیت های الفبایی تسهیل کند. یکی از راهها، ادغام کاراکترهای نامرئی یونیکد است که در تصویر رندر شده پنهان میمانند.
یک راه حل "فضای عرض صفر" را ارائه می دهد. اگرچه این کاراکتر در جدول تجسم نامرئی است، DAX آن را معتبر می شناسد. هنگام مرتب سازی، فاصله ها قبل از حروف اولویت بندی می شوند. بنابراین، هر چه یک اصطلاح فضاهای بیشتری داشته باشد، زودتر ظاهر می شود. با جفت شدن با تابع ()REPT، میتوانیم چندین فاصله را به هر Result دستور switch اضافه کنیم تا ترتیب مرتب سازی مورد نظر خود را ایجاد کنیم.
در اینجا کد بهبود یافته DAX با استفاده از این روش آورده شده است:
اکنون، با مرتبسازی ستون «وضعیت کلی» در جدول ، نتیجه با دنباله مورد نظر ما هماهنگ میشود.
«بستیفای» ارائه فایلهای کاربردی در زمینه های مختلف کسب و کار است. در صورتی که نیاز به سفارشی سازی یا طراحی فایل اختصاصی جدید میباشید، میتوانید نسبت به ارائه درخواست با بستیفای در ارتباط باشید.