كل الرموز في Power Query (M Language)
1️⃣ ? — nullable type
دي معناها إن النوع ممكن يقبل قيمة فارغة (null).
✅ مثال:
2️⃣ @ — recursive function reference
بتستخدم جوه دالة بتنده على نفسها (recursion). عشان تشير لنفس الدالة.
بدون الـ
@، الكود هيموت في سطر نفسه 😵
3️⃣ # — literal keywords / escaped names
بتستخدم لما تكون بتكتب:
-
اسم جدول أو قيمة فيها مسافات أو رموز
-
أو اسم نوع بيانات
✅ أمثلة:
4️⃣ each — anonymous function
دي بتعمل دالة بدون ما تسميها، وغالبًا تستخدم جوه List.Transform, Table.AddColumn, إلخ.
eachمعناها: "لكل عنصر في القائمة، اعمل كذا"
5️⃣ _ — the current item / parameter
ده اختصار لـ "العنصر الحالي" جوا each.
أحيانًا تقدر تستبدله بـ اسم متغير لو عايز توضيح أكتر، بس
_هو الأشهر.
6️⃣ => — تعريف دالة
سهم بيعرف دالة:
7️⃣ .. — range operator
يولد قائمة من رقم إلى رقم.
8️⃣ in — تحديد النتيجة النهائية في let
بعد ما تكتب كل خطواتك بـ let, بتقول في الآخر إيه اللي يرجع.
9️⃣ let — تحديد خطوات/قيم مساعدة
زي ما شفت فوق، بتستخدم let لتعريف أكثر من خطوة أو متغير.
🔟 as — تحديد نوع البيانات
بتقول للمتغير نوعه إيه.
1️⃣1️⃣ and, or, not — عمليات منطقية
نفس اللي في أي لغة تانية:
1️⃣2️⃣ <> — لا يساوي (not equal)
زي != في لغات تانية.
1️⃣3️⃣ null, true, false — قيم منطقية/خاصة
-
null: لا قيمة -
true/false: منطقية
1️⃣4️⃣ error — تعريف خطأ مخصص
1️⃣5️⃣ try ... otherwise — التعامل مع الأخطاء
1️⃣6️⃣ type — تعريف أو مقارنة نوع
✅ جدول تلخيصي سريع:
| الرمز | معناه |
|---|---|
? | نوع يقبل null |
@ | استدعاء دالة نفسها (recursion) |
# | قيم حرفية/أسماء فيها رموز |
each | دالة مجهولة / لكل عنصر |
_ | العنصر الحالي |
=> | تعريف دالة |
.. | توليد قائمة من رقم إلى رقم |
in | يحدد النتيجة الأخيرة في let |
as | تحديد نوع البيانات |
<> | لا يساوي |
try | محاولة تنفيذ |
error | توليد خطأ |
. ? (علامة الاستفهام)
Null-safe access → لما القيمة تكون
null، بيرجعnullبدل ما يعمل Error.
مثال:
2. [] (براكتس مربعة)
للوصول إلى الأعمدة (في جداول) أو الحقول (في Records).
مثال:
3. {} (براكتس معقوفة)
للوصول إلى صف معين (Row) في Table أو عنصر في List.
مثال:
4. => (السهم القاتل)
لتعريف دالة (Function) — زي Lambda Function.
مثال:
5. .. (نقطتين)
لإنشاء Range من الأرقام.
مثال:
6. @ (علامة الآت)
عشان تطلع القيمة من الـ context row داخل خطوة مخصصة في
Add Column.
مثال:
نادرًا ما تستخدم، وممكن تسبب Errors لو مش فاهم السياق.
7. ~ (تيلدا)
مش مستخدمة رسميًا في M، بس ساعات تظهر في أسماء الأعمدة أو في ملفات CSV كـ escape character.
8. # (هاش)
تستخدم لتعريف أشياء خاصة زي:
-
النصوص اللي فيها مسافات
-
أسماء الخطوات
-
الكلمات المفتاحية
مثال:
9. let ... in
بداية ونهاية أي سكريبت M — زي تعريف المتغيرات وتشغيلهم.
مثال:
10. as (تحديد النوع)
بيحدد نوع القيمة المرجعة.
مثال:
11. is و as (منطق النوع):
زي
instanceofوcasting.
مثال:
12. ?? (مش موجود في Power Query)
مش زي C# أو JS — لكن ممكن نعمل بديل بـ:
✨ بونص: أدوات متقدمة
| الرمز | المعنى |
|---|---|
meta | لإضافة metadata للعمود أو القيمة |
in | نهاية الـ let block |
each | عامل اختصار لكتابة دوال سريعة |
otherwise | البديل في if statement |
ليست هناك تعليقات:
إرسال تعليق