‬‏‫‬‏‫بداية سريعة: التعرف على أساسيات DAX في 30 دقيقة‬‏‫

هام: تمت ترجمة هذه المقالة ترجمة آلية، راجع إقرار إخلاء المسؤولية. يرجى الاطلاع على النسخة الإنجليزية من هذه المقالة. هنا للرجوع إليها.

إن هذه البداية السريعة مخصصة لمستخدمي Power Pivot الجدد في Excel أو مشروعات النماذج الجدولية التي يتم تأليفها في SQL Server Data Tools. إنها تهدف إلى منحك مقدمة سريعة وسهلة حول كيفية استخدام تعبيرات تحليل البيانات (DAX) لحل عدد من مشكلات بناء نماذج البيانات الأساسية والمشكلات التحليلية. ويتضمن هذا الموضوع معلومات مفاهيمية، وسلسلة من المهام التي يمكنك إكمالها، وبعض الاختبارات لاختبار ما تعلمته. وبعد إكمال هذا الموضوع، يجب أن تكون قد فهمت جيداً معظم المفاهيم الأساسية في DAX.

ما المقصود بـ DAX؟

تمثل DAX مجموعة من الدالات وعوامل التشغيل والثوابت التي يمكن استخدامها في صيغة أو تعبير لإجراء عملية حسابية وإرجاع قيمة أو أكثر. وببساطة أكثر، تساعد DAX في إنشاء معلومات جديدة من البيانات الموجودة بالفعل في النموذج الخاص بك.

لماذا تُعد DAX مهمة جدًا؟

من السهل إنشاء مصنف واستيراد بعض البيانات إليه. بل ويمكنك إنشاء PivotTables أو PivotCharts تعرض معلومات مهمة دون استخدام أي صيغ DAX. ولكن، ماذا لو احتجت إلى تحليل بيانات مبيعات مهمة عبر فئات منتجات متعددة ولنطاقات تاريخ مختلفة؟ أو إذا كنت تحتاج إلى تجميع بيانات مخزون مهمة من جداول متعددة في مصادر بيانات مختلفة؟ توفر صيغ DAX هذه الإمكانية وكذلك كثير من الإمكانيات الأخرى المهمة. وسيساعدك تعلم كيفية إنشاء صيغ DAX فعالة في الحصول على أقصى استفادة من بياناتك. عندما تحصل على المعلومات التي تحتاج إليها، يمكنك البدء لحل مشكلات العمل الحقيقية التي تؤثر على الخط الاحتياطي. وهذا هو ذكاء الأعمال، وستساعدك DAX على فهم هذا.

المتطلبات الأساسية

قد تكون بالفعل معتادًا على إنشاء الصيغ في Microsoft Excel. ستكون هذه المعرفة مفيدة في فهم DAX، ولكن حتى إن لم تكن لديك خبرة مع صيغ Excel، فإن المفاهيم الموضحة هنا ستساعدك على البدء في إنشاء صيغ DAX وحل مشاكل المعلومات المهنية الواقعية.

سنقوم ب# التركيز علي فهم DAX الصيغ المستخدمه في عمليات حسابيه وجه التحديد. ف# يجب ان تكون علي درايه ب# المفاهيم الاساسيه ل# كل من الاعمده المحسوبه و# المقاييس (المعروفه ايضا ب# الحقول المحسوبه)، كل واحده منها موضحه في Power Pivot التعليمات. يجب ان تكون علي درايه Power Pivot في تاليف البيئه و# ادوات Excel.

نموذج مصنف

إن أفضل طريقة لتعلم DAX هي إنشاء بعض الصيغ الأساسية، واستخدامها مع بعض البيانات الفعلية، ورؤية النتائج بنفسك. تستخدم الأمثلة والمهام هنا المصنف Contoso Sample DAX Formulas.xlsx. ويمكنك تنزيل المصنف من الموقع http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x409. وبعد تنزيل المصنف إلى الكمبيوتر، افتحه ثم افتح نافذة Power Pivot.

فلنبدأ العمل!

سنقسم DAX إلى ثلاثة مفاهيم بالغة الأهمية، هي: بناء الجملة، والدالات، والسياق. توجد بالطبع مفاهيم أخرى هامة في DAX، ولكن فهم هذه المفاهيم الثلاثة سيوفر لك الأساس الأفضل الذي ستبنى عليه مهارات DAX لديك.

بناء الجملة

قبل إنشاء الصيغ الخاصة بك، لنلقِ نظرة على بناء جملة صيغة DAX. يتضمن بناء الجملة عناصر متعددة تكوِّن الصيغة، أو ببساطة أكثر، كيفية كتابة الصيغة. على سبيل المثال، لننظر إلى صيغة DAX بسيطة مستخدمة لإنشاء بيانات (قيم) جديدة لكل صف في عمود محسوب، والمسمى بالهامش، في جدول FactSales: (ألوان نص الصيغة للأغراض التوضيحية فقط)

صيغة عمود محسوب

يتضمن بناء جملة الصيغة العناصر التالية:

  1. يشير عامل تشغيل علامة يساوي (=) إلى بداية الصيغة، وعندما يتم حساب هذه الصيغة فإنها ستُرجع نتيجة أو قيمة. ستبدأ كل الصيغ التي تحسب قيمة بعلامة يساوي.

  2. يحتوي العمود المشار إليه [SalesAmount] على القيم التي نريد طرحها منه. يُحاط مرجع العمود في صيغة دائمًا بأقواس []. على العكس من صيغ Excel التي تشير إلى خلية، فإن صيغة DAX تشير دائمًا إلى عمود.

  3. عامل التشغيل الحسابي للطرح (-)

  4. يحتوي العمود المشار إليه [TotalCost] على القيم التي نريد طرحها من قيم في العمود [SalesAmount].

عند محاولة فهم كيفية قراءة صيغة DAX، من المفيد تقسيم كل عنصر إلى لغة تفكر وتتحدث بها كل يوم. على سبيل المثال، يمكنك قراءة هذه الصيغة كما يلي:

في FactSales الجدول، ل# كل صف في عمود الهامش المحسوب، ب# حساب (=) قيمه ب# طرح (-) قيم في [ TotalCost ] عمود من قيم في [ SalesAmount ] العمود.

دعنا نلق نظره علي نوع اخر من الصيغ، يستخدم في مقياس:

صيغة عمود محسوب

تتضمن هذه الصيغة عناصر بناء الجملة التالية:

  1. اسم قياس "مجموع حجم المبيعات". يمكنك تضمين الصيغ ل# المقاييس اسم القياس، متبوعا ب# علامه نقطتين، متبوعه ب# صيغه الحساب.

  2. يشير عامل تشغيل علامة يساوي (=) إلى بداية صيغة العملية الحسابية. عندما يتم حسابها، ستؤدي إلى إرجاع نتيجة.

  3. تجمع الدالة SUM جميع الأرقام في العمود [SalesAmount]. ستتعرف على المزيد حول الدالات لاحقًا.

  4. تحيط الأقواس () بإحدى الوسيطات أو أكثر. تتطلب الدالات وسيطة واحدة أو أكثر. تمرر الوسيطة قيمة إلى دالة.

  5. الجدول المشار إليه هو FactSales.

  6. العمود المشار إليه [SalesAmount] موجود في جدول FactSales. وباستخدام هذه الوسيطة تعرف الدالة SUM الأعمدة التي سيتم فيها تجميع SUM.

يمكنك قراءة هذه الصيغة كما يلي:

ل# مقياس المسمي "مجموع حجم المبيعات"، ب# حساب (=) مجموع القيم في [ SalesAmount ] عمود في FactSales الجدول.

عند وضع في منطقه في قائمه حقول PivotTable افلات القيم، حساب هذا الاجراء و# ارجاع القيم المعرفه من كل خليه في PivotTable، علي سبيل المثال، الهواتف الخلويه في الولايات المتحده.

لاحظ وجود أوجه اختلاف قليلة حول هذه الصيغة مقارنة بالصيغة التي استخدمناها لعمود الهامش المحسوب. وبخاصة، لأننا قمنا بتقديم دالة، SUM. الدالات هي صيغ مكتوبة مسبقًا تسهل من إجراء عمليات حسابية وعمليات معالجة معقدة باستخدام الأرقام، والتواريخ، والوقت، والنص، والمزيد. ستتعرف على المزيد حول الدالات لاحقًا.

ب# خلاف عمود الهامش المحسوب مسبقا، يمكنك رؤيه العمود [SalesAmount] تم مسبوقه ب# FactSales الجدول التي تنتمي اليها العمود. يعرف هذا اسم عمود مؤهل ب# الكامل في ذلك يتضمن اسم العمود مسبوقه ب# اسم الجدول. لا تتطلب الاعمده المشار اليها في نفس الجدول اسم الجدول تضمينها في الصيغه. قد يؤدي طويله الصيغ التي تشير الي العديد من الاعمده اقصر و# سهله القراءه. و# مع ذلك، ف# من الافضل دائما ما يتضمن اسم الجدول في الصيغ القياس، حتي عندما في نفس الجدول.

ملاحظة: وإذا كان اسم العمود يحتوي على مسافات أو كلمات أساسية محجوزة أو أحرف غير مسموح بها، فيجب عليك إحاطة اسم الجدول بعلامات اقتباس مفردة. كما يجب عليك أيضًا إحاطة أسماء الجداول بعلامات اقتباس إذا كان الاسم يحتوي على أي أحرف خارج نطاق الأحرف الأبجدية الرقمية لـ ANSI، بغض النظر عما إذا كانت لغتك تعتمد مجموعة الأحرف أم لا.

من المهم جداً أن يكون بناء جملة الصيغ صحيحاً. وفي معظم الحالات، إذا لم يكن بناء الجملة صحيحاً، فسيتم إرجاع خطأ في بناء الجملة. وفي حالات أخرى، قد يكون بناء الجملة صحيحاً، ولكن القيم التي تم إرجاعها قد لا تكون هي القيم التي تتوقعها. تتضمّن الوظيفة الإضافية Power Pivot (وSQL Server Data Tools) الميزة IntelliSense؛ وهي ميزة تُستخدم لإنشاء صيغ صحيحة من حيث بناء الجملة عن طريق مساعدتك على تحديد العناصر الصحيحة.

فلنقم بإنشاء صيغة بسيطة. ستساعدك تلك المهمة على فهم أكبر لبناء جملة الصيغة، وكيف يمكن أن تساعدك ميزة IntelliSense في شريط الصيغة.

المهمة: إنشاء صيغة بسيطة لعمود محسوب

  1. اذا لم تكن مسبقا في نافذه Power Pivot، في Excel، علي Power Pivot الشريط، انقر فوق Power Pivot النافذه.

  2. في نافذة Power Pivot، انقر فوق الجدول FactSales (علامة التبويب).

  3. قم بالتمرير إلى العمود الموجود في أقصى اليسار، ثم في رأس العمود، انقر فوق إضافة عمود.

  4. انقر في شريط الصيغة أعلى نافذة مصمم النماذج.

    شريط صيغة Power Pivot

    يظهر المؤشر الآن في شريط الصيغة. شريط الصيغة هو المكان الذي تكتب فيه صيغة لعمود أو حقل محسوب.

    فلنستغرق دقيقة للنظر إلى ثلاثة أزرار على يمين شريط الصيغة.

    شريط الصيغة

    عندما يكون المؤشر نشطًا في شريط الصيغة، تصبح تلك الأزرار الثلاثة نشطة. الزر الموجود في أقصى اليمين، X، هو ببساطة زر إلغاء الأمر. تابع العمل وانقر فوقه. لم يعد المؤشر ظاهرًا في شريط الصيغة، ولم يعد زر إلغاء الأمر وزر علامة الاختيار ظاهرين. تابع العمل وانقر في شريط الصيغة مرة أخرى. يظهر زر إلغاء الأمر وزر علامة الاختيار مرة أخرى الآن. هذا يعني أنك جاهز لبدء إدخال صيغة.

    زر علامة الاختبار هو زر التحقق من الصيغة. ولن تُجري مطابقة حتى تنتهي من إدخال صيغة. سنعود إلى هذا في وقت قريب.

    انقر فوق الزر Fx . سوف تري ان يظهر مربع حوار جديد؛ مربع الحوار "ادراج داله". مربع الحوار "ادراج داله" هو اسهل طريقه ل# بدء ادخال صيغه DAX. يتم اضافه داله ل# صيغه عندما يمكننا انشاء مقياس بعض الشيء لاحقا، و# لكنك الان، لا تحتاج الي اضافه داله الي صيغه العمود المحسوب الخاص بك. قم ب# اغلاق مربع الحوار "ادراج داله".

  5. في شريط الصيغة، اكتب علامة يساوي =، ثم اكتب قوس فتح [. سترى نافذة صغيرة تظهر مع كافة الأعمدة في جدول FactSales. وتلك هي ميزة IntelliSense أثناء العمل.

    نظرًا لإنشاء الأعمدة المحسوبة دائمًا في الجدول النشط الذي تعمل فيه، فلا حاجة لأن تسبق اسم العمود باسم الجدول. تابع العمل وقم بالتمرير إلى الأسفل ثم انقر نقرًا مزدوجًا فوق [SalesQuantity]. كما يمكنك أيضًا التمرير إلى اسم العمود الذي تريد، ثم الضغط على Tab.

    المؤشر نشطا الان علي يمين [SalesQuantity].

  6. اكتب مسافة ثم اكتب عامل تشغيل الطرح - (علامة ناقص)، ثم اكتب مسافة أخرى.

  7. الان، اكتب قوس فتح اخر [. هذه المره، حدد [العمودReturnQuantity] ، و# من ثم اضغط علي Enter.

    إذا حدث خطأ، فتحقق جيدًا من بناء الجملة. قم بمقارنته، حسب الضرورة، بالصيغة المكتوبة في عمود الهامش المحسوب الموضح سابقًا.

    بعد الضغط على Enter لإكمال الصيغة، تظهر الكلمات يتم الآن الحساب في شريط المعلومات على طول الجهة السفلية لنافذة Power Pivot. يتم العمل بشكل سريع، حتى وإن حسبت قيماً جديدة لما يزيد عن ثلاثة ملايين صف.

  8. انقر بزر الماوس الأيمن فوق رأس العمود وقم بإعادة تسمية العمود باسم NetSales.

وبهذا تكون قد أنشأت صيغة DAX قوية جدًا وبسيطة. بالنسبة لكل صف في الجدول FactSales، تحسب الصيغة NetSales قيمة عن طريق طرح القيمة في العمود [ReturnQuantity] من القيمة في العمود [SalesQuantity]. لاحظ كيف ذكرنا "بالنسبة لكل صف”. هذه هي لمحة لمفهوم آخر هام جدًا في DAX؛ وهو سياق الصف. ستتعرف على المزيد حول سياق الصف لاحقًا.

تلميح: 

سيتم تقييم شرط ما ب# الفعل، من الضروري معرفه عند كتابه عامل تشغيل في صيغه DAX نوع البيانات في الوسيطات التي تستخدمها. علي سبيل المثال، اذا كنت تريد كتابه الصيغه التاليه، = = 1 & 2، ستكون القيمه التي تم ارجاعها قيمه "نصيه" من "12". هذا ل# ان عامل تشغيل علامه العطف (&) ل# سلسله نصيه. يفسر DAX هذه الصيغه ل# قراءه: حساب نتيجه من دون اتخاذ القيمه 1 ك# نص و# اضافه القيمه 2 ك# نص. الان، اذا كنت تريد كتابه = 1 + 2، DAX ب# قراءه هذه الصيغه ك: حساب نتيجه ب# القيمه الرقميه 1 ب# تنفيذه و# اضافه القيمه الرقميه 2. ب# طبيعه الحال هو النتيجه "3"، قيمه رقميه. تحسب DAX القيم الناتجه استنادا الي عامل التشغيل في الصيغه، لا يعتمد علي نوع البيانات ل# الاعمده المستخدمه في الوسيطه. انواع البيانات في DAX هاما، و# لكن خارج نطاق "التشغيل السريع" هذا. ل# مزيد من المعلومات حول انواع البيانات و# عوامل التشغيل في صيغ DAX، راجع مرجع DAX (http://go.microsoft.com/fwlink/?LinkId=239769 & clcid = 0x409) في "المراجع المباشره".

دعنا نجرب اخر. هذه المره، ستقوم ب# انشاء مقياس عن طريق كتابه الصيغه و# استخدام IntelliSense. لا تقلق اكثر من اللازم if لا الكامل فهم الصيغه. ما اهميه هنا ل# التعرف علي كيفيه انشاء صيغه ب# استخدام العديد من العناصر معا في بناء جمله صحيح.

المهمه: انشاء صيغه القياس

  1. في الجدول FactSales، انقر في أي خلية فارغة في منطقة الحساب. وهي منطقة الخلايا الفارغة التي تقع تماماً في أسفل الجدول في نافذة Power Pivot.

منطقة حساب PowerPivot

  1. في شريط الصيغة، اكتب الاسم "مبيعات ربع السنة السابق":.

  2. اكتب علامة يساوي = لبدء صيغة الحساب.

  3. اكتب الحروف القليلة الأولى CAL، ثم انقر نقرًا مزدوجًا فوق الدالة التي تريد استخدامها. في هذه الصيغة، أنت ترغب في استخدام الدالة CALCULATE.

  4. اكتب قوس فتح ( لبدء الوسيطات التي سيتم تمريرها إلى دالة CALCULATE.

    لاحظ أنه بعد كتابة أقواس الفتح، فإن IntelliSense تعرض الوسيطات المطلوبة للدالة CALCULATE. ستتعرف على الوسيطات بعد وقت قليل.

  5. اكتب الاحرف القليله الاولي ل# الجدول FactSales ، و# من ثم في القائمه المنسدله، انقر نقرا مزدوجا فوق FactSales[المبيعات].

  6. اكتب فاصلة (،) لتحديد عامل التصفية الأول، ثم اكتب PRE، ثم انقر نقرًا مزدوجًا فوق الدالة PREVIOUSQUARTER.

    بعد تحديد الدالة PREVIOUSQUARTER، يظهر قوس فتح آخر، يشير إلى وسيطة أخرى مطلوبة، للدالة PREVIOUSQUARTER هذه المرة.

  7. اكتب الاحرف القليله الاولي Dim، و# من ثم انقر نقرا مزدوجا فوق DimDate[DateKey].

  8. قم بإغلاق كل من الوسيطة التي تم تمريرها إلى الدالة PREVIOUSQUARTER ودالة CALCULATE عن طريق كتابة قوسي إغلاق)).

    يجب أن تظهر الصيغة الآن كما يلي:

    مبيعات ربع السنة السابق:‎=CALCULATE(FactSales[Sales], PREVIOUSQUARTER(DimDate[DateKey]))‎

  9. انقر فوق زر التحقق من الصيغة على شريط الصيغة للتحقق من الصيغة. إذا حدث خطأ، فتحقق من كل عنصر في بناء الجملة.

قمت ب# تنفيذ ذلك! مقياس استخدام DAX، و# ليس واحده سهله في الذي انشاته ل# التو. ما يقوم هذه الصيغه يتم حساب اجمالي المبيعات ل# ربع السنه السابق، استنادا الي عوامل التصفيه المطبقه في تقرير PivotTable او PivotChart.

لقد قمنا بالتقديم لأشكال هامة متعددة لصيغ DAX. أولاً: هذه الصيغة تضمنت دالتين. لاحظ أنه يتم إجراء تداخل للدالة كوسيطة تم تمريرها إلى الدالة CALCULATE. يمكن أن تحتوي صيغ DAX على ما يصل إلى 64 دالة متداخلة. وليس من المرجح أن تحتوي صيغة على المزيد من الدالات المتداخلة. في الواقع، ستكون هذه الصيغة صعبة في الإنشاء وتصحيح الأخطاء، ومن المحتمل ألا تكون سريعة جدًا أيضًا.

في هذه الصيغة، قمت باستخدام عوامل التصفية أيضًا. تقلص عوامل التصفية ما سيتم حسابه. وفي هذه الحالة، تكون قد حددت عامل تصفية واحدًا كوسيطة، وهو دالة أخرى بالفعل. ستتعرف على المزيد حول عوامل التصفية لاحقًا.

وفي النهاية، لقد استخدمت دالة CALCULATE. تُعد هذه دالة من أهم الدالات في DAX. عند تأليف نماذج البيانات وإنشاء صيغ أكثر تعقيدًا، من المرجح أنك ستستخدم هذه الدالة عدة مرات. تُعد مناقشة دالة CALCULATE خارج نطاق هذه البداية السريعة؛ ولكن مع زيادة معرفتك بـ DAX، اهتم بهذه الدالة اهتمامًا خاصًا.

ملاحظة: وبشكل مثالي، لكي تستخدم دالات معلومات الوقت في صيغ DAX، يجب عليك تحديد عمود تاريخ فريد باستخدام مربع حوار "وضع علامة كتاريخ جدول". في المصنف Contoso DAX Formula Samples.xlsx، يتم تحديد العمود DateKey في الجدول DimDate كعمود تاريخ فريد.

ائتمان أكثر

قد طرح: ' ما هو صيغه DAX ابسط انشاء ' حسنا، الذي يكون ' الصيغه لست ب# حاجه الي '. و# تماما ما يمكنك ف# عله ب# استخدام داله تجميع قياسيه في مقياس. يحتاج اي نموذج البيانات ل# تصفيه و# حساب البيانات المجمعه. علي سبيل المثال، يتم استخدام الداله SUM في المقياس "مجموع حجم المبيعات" شاهدت مسبقا ل# اضافه كافه الارقام في عمود معين. تتضمن DAX العديد من الدالات الاخري التي تجميع القيم ايضا. يمكنك انشاء الصيغ التي تستخدم التجميعات قياسي ب# استخدام الميزه "جمع تلقائي" تلقائيا.

مهمه ائتمان اكثر: انشاء صيغه مقياس ب# استخدام الميزه "جمع تلقائي"

  1. في الجدول FactSales، قم بالتمرير إلى العمود ReturnQuantity ثم انقر فوق رأس العمود لتحديد العمود بأكمله.

  2. علي علامه التبويب الصفحه الرئيسيه، علي الشريط، في المجموعه حسابات ، انقر فوق الزر جمع تلقائي.

جمع تلقائي في Power Pivot

  1. انقر فوق السهم ل# اسفل الي جانب جمع تلقائي، و# من ثم انقر فوق المتوسط (اشعار وظائفه التجميع القياسي الذي يمكنك استخدامه، جدا).
    مباشره، يتم انشاء مقياس جديد ب# استخدام اسم ReturnQuantity من متوسط: متبوعا ب# الصيغه = AVERAGE([ReturnQuantity]).

والآن ألم يكن ذلك سهلاً؟ بالطبع، لن تكون جميع الصيغ التي تقوم بإنشائها بسيطة جدًا. ولكن باستخدام الميزة AutoSum، يمكنك إنشاء صيغ سريعة وسهلة باستخدام عمليات حساب تجميعية قياسية.

ومن شأن ذلك أن يمنحك فهمًا جيدًا بشكل واضح لبناء الجملة المستخدم في صيغ DAX. كما قدمنا لك أيضًا بعض الميزات الجيدة فعلاً مثل IntelliSense وAutoSum لمساعدتك على إنشاء صيغ سريعة، وسهلة ودقيقة. بالطبع يوجد المزيد مما يمكنك تعلمه حول بناء الجملة. يُعد مرجع DAX أو SQL Books Online مكانًا جيدًا لتعلم المزيد.

اختبار سريع لبناء الجملة

  1. ما هي وظيفة هذا الزر على شريط الصيغة؟
    زر الدالة

  2. ما الذي يحيط دائمًا باسم العمود في صيغة DAX؟

  3. كيف هل تقوم ب# كتابه صيغه ل# ما يلي:
    في DimProduct الجدول، ل# كل صف في أونيتمارجين عمود محسوب، حساب قيمه ب# طرح القيم في UnitCost عمود من قيم في UnitPrice العمود؟

تم توفير الإجابات في نهاية هذا الموضوع.

الدالات

الدالات هي صيغ معرفة مسبقًا تجري عمليات حسابية باستخدام قيم معينة، تسمى وسيطات، بترتيب أو بنية محددة. قد تكون الوسيطات دالات أخرى، أو صيغة أخرى، أو مراجع أعمدة، أو أعدادًا، أو قيمًا منطقية مثل TRUE أو FALSE أو قيمًا ثابتة.

تتضمن DAX الفئات التالية للدالات: التاريخ والوقت، ومعلومات، ورياضية، وإحصائية، ونص، ودالات معلومات الوقت. إذا كنت معتادًا على الدالات في صيغ Excel، فإن العديد من الدالات في DAX ستظهر كشبيهة بها بالنسبة إليك، ومع ذلك، فإن دالات DAX تُعد فريدة من النواحي التالية:

  • تشير دالة DAX دائمًا إلى عمود أو جدول كامل. إذا أردت استخدام قيم معينة فقط من جدول أو عمود، فيمكنك إضافة عوامل تصفية إلى الصيغة.

  • إذا أردت تخصيص عمليات حسابية على أساس صف بصف، فإن DAX‬ يوفر دالات تتيح لك استخدام قيمة الصف الحالية أو قيمة مرتبطة كنوع من الوسيطة، لإجراء عمليات حسابية تختلف حسب السياق. ستتعرف على المزيد حول السياق لاحقًا.

  • يتضمن DAX العديد من الدالات التي تقوم بإرجاع جدول بدلاً من قيمة. لا يتم عرض الجدول، ولكنه يُستخدم لتوفير إدخال إلى دالات أخرى. على سبيل المثال، يمكنك استرداد جدول ثم حساب القيم المميزة فيه، أو حساب مجاميع ديناميكية عبر جداول أو أعمدة تمت تصفيتها.

  • تتضمن DAX مجموعة متنوعة من دالات معلومات الوقت. تتيح لك تلك الدالات تعريف أو تحديد نطاقات التاريخ، وإجراء عمليات حسابية ديناميكية وفقًا لها. على سبيل المثال، يمكنك مقارنة المجاميع خلال فترات متوازية.

في بعض الأحيان، قد تجد صعوبة في معرفة الدالات التي قد تحتاج إلى استخدامها في الصيغة. وتتضمّن الوظيفة الإضافية Power Pivot ومصمم النموذج الجدولي في SQL Server Data Tools الميزة "إدراج دالة"، وهي مربع حوار يساعدك على تحديد الدالات حسب الفئة ويوفر مواصفات مختصرة لكل دالة.

إدراج دالة

فلنقم بإنشاء صيغة جديدة تتضمن دالة ستقوم بتحديدها باستخدام الميزة "إدراج دالة".

المهمة: إضافة دالة إلى صيغة باستخدام "إدراج دالة"

  1. في العمود FactSales، قم بالتمرير إلى العمود الموجود في أقصى اليسار، ثم في رأس العمود، انقر فوق إضافة عمود.

  2. في شريط الصيغة، اكتب علامة يساوي، =.

  3. انقر فوق الزر "إدراج دالة". إدراج دالة يفتح هذا الخيار مربع الحوار "إدراج دالة".

  4. مربع حوار "إدراج دالة"، انقر فوق مربع قائمة تحديد فئة. بشكل افتراضي، يتم تحديد الكل ويتم سرد كل الدالات في الفئة الكل أدناه. توجد الكثير من الدالات، لذا فإنك سترغب في تصفية الدالات لتسهيل تحديد موقع نوع الدالة التي تبحث عنها.

  5. بالنسبة لهذه الصيغة، أنت ترغب في إرجاع بعض البيانات الموجودة بالفعل في جدول آخر. بالنسبة لهذا، ستستخدم دالة في فئة عامل التصفية. تابع العمل وانقر فوق فئة عامل التصفية، ثم في تحديد دالة، قم بالتمرير إلى الأسفل ثم انقر نقرًا مزدوجًا فوق الدالة RELATED. انقر فوق موافق لإغلاق مربع الحوار "إدراج دالة".

  6. استخدم IntelliSense لمساعدتك على تحديد العمود DimChannel‎[ChannelName]‎‎.

  7. قم بإغلاق الصيغة ثم اضغط على Enter.

  8. بعد الضغط على Enter لإكمال الصيغة، تظهر الكلمات يتم الآن الحساب في شريط المعلومات على طول الجهة السفلية لنافذة Power Pivot. سترى الآن أنك قد أنشأت للتو عموداً جديداً في الجدول FactSales باستخدام معلومات القناة من الجدول DimChannel.

  9. قم بإعادة تسمية القناة.

    يجب أن تبدو الصيغة هكذا: ‎=RELATED(DimChannel[ChannelName])‎

لقد تم تقديمك لتوك إلى دالة أخرى هامة للغاية في DAX، الدالة RELATED. تُرجع دالة RELATED قيمًا من جدول آخر. يمكنك استخدام الدالة RELATED المتوفرة هناك، وهي علاقة بين الجدول الذي تعمل فيه حاليًا والجدول الذي يحتوي على القيم التي تريد الحصول عليها. وبالطبع فإن الدالة RELATED تتميز بالكثير من الإمكانيات الهائلة. وفي هذه الحالة، يمكنك الآن تضمين قناة المبيعات لكل عملية بيع في الجدول FactSales. يمكنك الآن إخفاء الجدول DimChannel من قائمة حقول PivotTable، ما يسهل التنقل ورؤية المعلومات الأكثر أهمية التي تحتاج إليها فعليًا. وتمًاما مثل دالة CALCULATE الموضحة مسبقًا، فإن الدالة RELATED هامة جدًا، ومن المحتمل أنك ستستخدمها العديد من المرات.

كما ترى، يمكن أن تساعدك الدالات في DAX على إنشاء صيغ قوية جدًا. لقد ركزنا على أساسيات الدالات فقط بالفعل. ومع تحسن مهاراتك مع DAX، ستقوم بإنشاء دالات باستخدام دالات عديدة مختلفة. يُعد أحد أفضل الأماكن لمعرفة تفاصيل حول كافة دالات DAX هو الموقع مرجع تعبيرات تحليل البيانات (DAX).

اختبار سريع على الدالات

  1. ما الذي تشير إليه الدالات دائمًا؟

  2. هل يمكن أن تحتوي الصيغة على أكثر من دالة واحدة؟

  3. ما هي فئة الدالات التي قد تستخدمها لسَلسلة سلسلتي نص في سلسلة واحدة؟

تم توفير الإجابات في نهاية هذا الموضوع.

‏‏السياق

السياق هو أحد مفاهيم DAX الهامة التي يتم فهمها. يوجد نوعان من السياق في DAX؛ سياق الصف وسياق عامل التصفية. سننظر أولاً إلى سياق الصف.

سياق الصف

سياق الصف يعني ببساطة الصف الحالي. على سبيل المثال، تذكر عمود الهامش المحسوب الذي رأيته من قبل عن التعرف على بناء الجملة؟ تحسب الصيغة =‎[SalesAmount]‎ - ‎[TotalCost]‎ قيمة في عمود الهامش لكل صف في الجدول. يتم حساب القيم الخاصة بكل صف من القيم في العمودين الآخرين، [SalesAmount] و[TotalCost] في الصف نفسه. يمكن أن تحسب DAX قيم كل صف في عمود الهامش لأنه يحتوي على السياق: بالنسبة لكل صف، فإنها تأخذ القيم في عمود [TotalCost] وتطرحها من القيم في عمود [SalesAmount].

في الخلية المحددة أدناه، تم حساب القيمة $49.54 في الصف الحالي بطرح القيمة $51.54 في العمود [TotalCost] من القيمة $101.08 في العمود [SalesAmount].

مسابقة الصفوف Power Pivot

سياق الصف لا ينطبق فقط علي الاعمده المحسوبه. سياق الصف تنطبق ايضا كلما داله ل# تطبيق عوامل تصفيه ل# تحديد صف واحد في جدول يحتوي علي صيغه. سيتم تطبيق الداله اصلا سياق صف التصفيه ل# كل صف في الجدول التي. ينطبق هذا النوع من سياق الصف غالبا الي مقاييس.

سياق عامل التصفية

يُعد سياق عامل التصفية أقل صعوبة من سياق الصف. يمكنك اعتبار سياق عامل التصفية بسهولة كبيرة كما يلي: أحد أو مزيد من عوامل التصفية المطبقة في عملية حسابية تحدد نتيجة أو قيمة.

لا يوجد سياق عامل التصفية في مكان سياق الصف؛ وبدلاً من ذلك يتم تطبيقه على سياق الصف. على سبيل المثال، لتضييق القيم بشكل أكبر لكي يتم تضمينها في عملية حسابية، يمكنك تطبيق سياق عامل التصفية والذي لا يحدد سياق الصف فقط، بل يحدد قيمة معينة (عامل تصفية) في سياق الصف هذا أيضًا.

يمكن رؤية سياق عامل التصفية بسهولة في PivotTables. على سبيل المثال، عند إضافة TotalCost إلى منطقة القيم، ثم إضافة العام والمنطقة إلى الصف أو الأعمدة، فإنك تحدد سياق عامل تصفية يحدد مجموعة فرعية من البيانات استنادًا إلى عام ومنطقة معطاة.

لم يعد سياق عامل التصفيه مهمه جدا ل DAX؟ ل# ان، بينما يتم تطبيق سياق عامل التصفيه عليها ب# سهوله عن طريق اضافه عمود و# تسميات الصفوف و# مقسمات طرق العرض في PivotTable، سياق عامل التصفيه ايضا يمكن تطبيقها في صيغه DAX ب# تعريف عامل تصفيه ب# استخدام دالات مثل كافه، مرتبط، و# تصفيه، CALCULATE، ب# العلاقات، و# المقاييس و# الاعمده الاخري. علي سبيل المثال، فلنلق نظره علي الصيغه التاليه في مقياس المسمي StoreSales:

صيغة

تُعد هذه الصيغة أكثر تعقيدًا بشكل واضح عن بعض الصيغ الأخرى التي رأيتها من قبل. ومع ذلك، لفهم هذه الصيغة بشكل أكبر، يمكننا تقسيمها، تمامًا مثلما فعلنا مع الصيغ الأخرى.

تتضمن هذه الصيغة عناصر بناء الجملة التالية:

  1. اسم مقياس StoreSales، متبوعا ب# علامه نقطتين:.

  2. يشير عامل تشغيل علامة يساوي (=) إلى بداية الصيغة.

  3. تقوم الدالة CALCULATE بتقييم تعبير، كوسيطة في سياق تم تعديله بواسطة عوامل التصفية المحددة.

  4. تحيط الأقواس () بإحدى الوسيطات أو أكثر.

  5. مقياس [Sales] في الجدول نفسه ك# تعبير. المقياس المبيعات تحتوي علي الصيغه: = SUM(FactSales[SalesAmount]).

  6. تفصل فاصلة (،) كل عامل تصفية.

  7. العمود المشار إليه وقيمة معينة، DimChannel[ChannelName] =”Store”‎، كعامل تصفية.

يؤكد هذه الصيغه فقط المبيعات، المعرف ب# واسطه المقياس المبيعات، ك# عامل تصفيه، يتم حساب القيم فقط ل# الصفوف في العمود DimChannel [ChannelName] تحتوي علي قيمه "Store"، ك# عامل تصفيه.

كما يمكنك أن تتخيل، فإن القدرة على تحديد سياق عامل تصفية داخل صيغة لها إمكانية هائلة وقوية. تُعد القدرة على الإشارة إلى قيمة معينة فقط في جدول مرتبط مثالاً واحدًا على ذلك. لا تقلق كثيرًا إذا لم تكن تفهم السياق بشكل تام بعد. عندما تقوم بإنشاء الصيغ الخاصة بك، ستفهم السياق بشكل جيد وسبب أهميته الكبيرة في DAX.

اختبار سريع على السياق

  1. ما هما نوعا السياق؟

  2. ماذا يُقصد بسياق عامل التصفية؟

  3. ماذا يُقصد بسياق الصف؟

تم توفير الإجابات في نهاية هذا الموضوع.

ملخص

الان و# قد تم فهم اساسي ل# اهم المفاهيم في DAX، يمكنك البدء ب# انشاء صيغ DAX ل# الاعمده المحسوبه و# المقاييس ب# نفسك. يمكن ان DAX فعلا ان بعض المهاره قليلا ل# التعرف علي، و# لكن هناك العديد من الموارد المتوفره لك. بعد قراءه عده مرات من خلال هذا الموضوع، و# تجربه بعض صيغ خاصه بك، ف# يمكنك تعلم المزيد حول مفاهيم DAX اخري و# الصيغ التي يمكنها مساعدتك علي حل المشاكل المتعلقه ب# العمل الخاص بك. تتوفر موارد DAX العديد من الي انت في Power Pivot تعليمات SQL Server الكتب عبر الانترنت، و# مستندات تقنيه و# المدونات من Microsoft و# المحترفين BI بادئ. Wiki مركز موارد DAX (http://social.technet.microsoft.com/wiki/contents/articles/dax-resource-center.aspx) مكان المناسب ل# البدء. مرجع تعبيرات تحليل البيانات (DAX) موردا مفيدا ايضا. تاكد من حفظ في المفضله.

توفر DAX في المستند التقني للنموذج الجدولي للمعلومات المهنية، المتوفرة للتنزيل على (http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x409) نظرة أكثر تفصيلاً على المفاهيم التي تم تقديمها هنا بالإضافة إلى العديد من المفاهيم الأخرى والصيغ المتقدمة. كما يستخدم المستند التقني المصنف Contoso DAX Sample Formulas.xlsx نفسه الموجود لديك بالفعل.

إجابات الاختبار السريع

بناء الجملة:

  1. يؤدي إلى فتح الميزة "إدراج دالة".

  2. الأقواس [].

  3. ‎=[UnitPrice] - [UnitCost]‎

الدالات:

  1. جدول وعمود.

  2. نعم. يمكن أن تحتوي الصيغة على ما يصل إلى 64 دالة متداخلة.

  3. الدالات النصية.

‏‏السياق:

  1. سياق الصف وسياق عامل التصفية.

  2. أحد عوامل التصفية أو أكثر في عملية حسابية والذي يحدد قيمة مفردة.

  3. الصف الحالي.

ملاحظة: إقرار إخلاء المسؤولية للترجمة الآلية: تمت ترجمة هذه المقالة بواسطة نظام كمبيوتر دون تدخل العامل البشري. توفر Microsoft هذه الترجمات الآلية لمساعدة المستخدمين الذين لا يتحدثون الإنجليزية على استخدام منتجات Microsoft، وخدماتها، وتقنياتها والاستمتاع بها. قد تحتوي هذه المقالة على أخطاء في المفردات، أو بناء الجملة، أو القواعد نظرًا لترجمتها آليًا.

توسيع المهارات
استكشاف التدريب
الحصول على الميزات الجديدة أولاً
الانضمام إلى Office Insider

هل كانت المعلومات مفيدة؟

نشكرك على ملاحظاتك!

شكراً لك على الملاحظات! يبدو أنه من المفيد إيصالك بأحد وكلاء دعم Office لدينا.

×