فرمول نویسی در Power Query با زبان m
![فرمول نویسی در پاور کوئری](https://www.nemoudar.com/wp-content/uploads/2020/02/writing-formula-in-power-query.png)
همانطور که قبلا در این مقاله اشاره کردیم، Power Query یکی از کامپوننتهای Power BI است که در این پست میخواهیم در رابطه با این کامپوننت صحبت کنیم. منتهی قبل از هر چیز نیاز است تا با زبان برنامهنویسی M آشنا شوید، تا بتوانید نهایت استفاده را ببرید.
M چیست؟
M نام غیررسمی زبان فرمول نویسی در پاور کوئری، و از نوع functional میباشد. همچنین مانند هر زبان دیگری، ساختار خاص خودش را دارد. ما در ادامه توضیح مختصری این مورد خواهیم داد.
ساختار زبان M
این زبان از ساختار ساده ای برخوردار است. به این صورت که همیشه ۲بلاک کد مانند زیر وجود دارد.
let x=1 in x
*همچنین باید بدانید کلمات let و in رزرو شده هستند.
نکته مهم در رابطه با M این است که، این زبان بصورت Case Sensitive می باشد. یعنی بین A و a تفاوت قائل میشود.
اما اگر بخواهیم شبه کد بالا را توضیح بدهیم باید گفت که در بخش let تمامی متغیرها تعریف شده و در in خروجی را مشخص میکنیم.
مثال زیر را در نظر بگیرید:
![بلاک کدها در پاور کوئری](https://www.nemoudar.com/demo1402/wp-content/uploads/2020/02/power-query-01.png)
برای اجرای این کد باید ابتدا پاور بی آی را باز کرده و روی Get Data کلیک کنید تا پنجرهای به این شکل باز شود. سپس گزینه Blank Query را انتخاب کنید.
![کلیک روی get data در پاور بی آی](https://www.nemoudar.com/demo1402/wp-content/uploads/2020/02/power-query-02.png)
حال به تب View رفته و روی Advanced Editor کلیک کنید.
![کلیک روی advanced editor در power query](https://www.nemoudar.com/demo1402/wp-content/uploads/2020/02/power-query-03.png)
در صفحهای که باز میشود می توانید کدی مانند بالا را وارد کنید.
همچنین باید بدانید که زبان M پایان هر خط را با کاما (,) متوجه می شود. در نتیجه اگر از کاما استفاده نکنید، تمام کدی که داخل let درج کرده اید را ۱خط و ۱ دستور در نظر میگیرد.
![پایان دستورات با کاما در پاور کوئری](https://www.nemoudar.com/demo1402/wp-content/uploads/2020/02/power-query-04.png)
برای تعریف متغیر نیز مانند شکل زیر میتوانید عمل کنید.
![تعریف متغیر در power query](https://www.nemoudar.com/demo1402/wp-content/uploads/2020/02/power-query-05.png)
همچنین اگر بخواهید تاریخ یا موارد مشابه را در Power Query وارد کنید، باید از فرمت پایین پیروی شود.
![وارد کردن تاریخ در پاور کوئری](https://www.nemoudar.com/demo1402/wp-content/uploads/2020/02/power-query-06.png)
نهایتا در شکل زیر میتوانید نمونه ای از یک مثال واقعی را مشاهده کنید.
![یک مثال از کد زنی در پاور کوئری](https://www.nemoudar.com/demo1402/wp-content/uploads/2020/02/power-query-07.png)
نکتهای که نباید فراموش کرد این است که پاور کوئری به زبان M خلاصه نمیشود و بدون آن نیز از قدرت بالایی برخوردار است. فرضا براحتی می توانید تعریف کنید که سلولهای Null با چه چیزی جایگزین شوند.
در صورت تمایل می توانید کارهای متنوعی که تا بحال با Power Query انجام دادید را در بخش نظرات اعلام کنید.
بهترین چیزی که از پاور کوئری دیدم یکی قسمت گروپ بای بود و دیگری فیلتر کردن با استفاده از پارامتر