خانه / آموزش Power BI بابازاده / درس پنجاه و نهم – کاربرد زبان Dax در power bi

درس پنجاه و نهم – کاربرد زبان Dax در power bi

کاربرد زبان Dax در power bi

یکی از کاربردهای زبان dax استفاده در تعریف Measure میباشد. سنجه آماری درواقع یک تک مقدار برمیگرداند که می تواند عددی یا متنی باشد.

یکی دیگر از کاربردهای زبان dax برای ایجاد ستون محاسباتی می باشد که قبلتر چند مثال گفته ایم.

و کاربرد دیگر زبان dax ایجاد new table می باشد، در واقع ایجاد یک جدول محاسباتی از طریق کد dax میباشد.

در اینجا یک مثال جهت ایجاد ستون محاسباتی می زنیم تا بیشتر با این مبحث آشنا شوید. فرض کنید در جدول فروش می خواهیم یک ستون جدید ایجاد کنیم که جمع دو ستون SalesAmount و TaxAmount باشد.

برای اینکار در صفحه data model روی منوی  more option یا همان علامت سه نقطه کنار نام جدول فروش کلیک کرده و گزینه new column را بزنید. و فرمول را به شکل زیر بنویسید. همانطور که قبلا گفتیم ابتدا نام جدول و سپس نام ستون را داخل براکت بنویسید.

dax

می خواهیم یک ستون محاسباتی در جدول فروش ایجاد کنیم که فروش را از لحاظ وزنی به ما نشان بدهد درواقع ستون OrderQuantity از جدول فروش باید ضرب شود در وزن کالا، دقت کنید که وزن کالا در این جدول نمی باشد و در جدول DimProduct می باشد. بنابراین چون می خواهیم اطلاعاتی از سمت one بخوانیم باید از تابع Related استفاده کنیم.

تابع Related از اتصال دو جدول موجود در دیتا مدل کمک میگیرد. در واقع به ازای هر محصول، وزن را از جدول محصولات پیدا کرده و در فرمول قرار میدهد.

dax

ویژگی های ستون محاسباتی

مقدار هر سلول در ستون محاسباتی به ازای مقادیر سایر سلولهای همان سطر محاسبه شده است. بنابراین در ایجاد ستون محاسباتی فقط از مقادیر همان ردیف میتوانید استفاده کنید. و از طرفی میتوانید از مقادیر موجود در جداول دیگر که مرتبط به همان ردیف می باشد استفاده کنید که توسط تابع Related از سمت one ارتباط خوانده می شود.

زمانی که دیتا مدل شما بروزرسانی می شود بعد از آن ستونهای محاسباتی شروع به انجام محاسبات مربوطه می کنند، یعنی وقتی به فرض رکوردها و دیتاهای جدید در جدول فروش اضافه شدند و جدول فروش رفرش شد سپس این ستونهای محاسباتی، محاسبات خود را انجام می دهند. بنابراین اگر ستونهای محاسباتی زیاد باشند و یا رکوردهای جدولمون زیاد باشند زمان رفرش ما افزایش می یابد. ترجیحا بهتر است که ستونهای محاسباتی در جداول dimension باشند که رکوردهای کمتری دارند و جداول fact مناسب نیستند. و در همچین مواردی از Measure استفاده کنید.

ترجیحا بهتر است ستون محاسباتی را در سمت منبع خود مانند اکسل یا sql ایجاد کنید و نتیجه را در پاور بی آی بخوانید زیرا سرعت دیتا سورس ها بیشتر است.

وقتی ستون محاسباتی ایجاد می کنید مقادیر جدیدی ایجاد می شود که در Ram فضا اشغال می کند و در بعضی مواقع باعث ایجاد اشکال می شود.

هنگام ایجاد ستون محاسباتی نیاز نیست حتما از توابع استفاده کنیم ولی در Measure خیلی وقتها باید از توابع استفاده کنیم.

تابع RelatedTable

این تابع برعکس تابع Related می باشد. در واقع رکوردهای متناظر در سمت many یک ارتباط را برمیگرداند.

درباره‌ی حمیدرضا بابازاده

تحلیلگر ارشد و متخصص هوش تجاری در اتریش هستم و تجربه کار بعنوان مشاور و مدرس BI در شرکتهای مختلف رو دارم . بیش از 1300 ساعت سابقه تدریس دوره های Python , Power BI و Microsoft BI را در آموزشگاه سماتک و مجتمع فنی تهران دارم .

همچنین ببینید

درس هفتاد و پنجم – دوره ای بر Filter Context

در جلسات قبل آموختیم که : ستون محاسباتی بعد از تولید شدن داخل Data Model …

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

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

معادله امنیتی (فقط عدد بنویسید) *