إنشاء المقاييس البسيطة

مكتمل

يُمكنك كتابة صيغة DAX لإضافة مقياسٍ ما إلى أي جدول في نموذجك. يجب أن تُعيد صيغة المقياس دالة أو قيمة مفردة.

ملاحظة

في تصميم النماذج الجدولي، لا يوجد مفهوم مثل القياس المحسوب. تُستخدم كلمة محسوب لوصف الجداول المحسوبة والأعمدة المحسوبة. فهي تُميّزها عن الجداول والأعمدة التي تنشأ من Power Query والتي ليس لديها مفهوم المقياس الصريح.

لا تُخزِّن المقاييس القيم في النموذج. وبدلاً من ذلك، تُستخدم في وقت الاستعلام لإعادة تلخيصات بيانات النموذج. يتعذَّر على المقاييس كذلك الإشارة إلى جدول أو عمودٍ ما مباشرة، إذ يجب عليها إدخال الجدول أو العمود إلى وظيفة ما لإصدار التلخيص.

يُعدّ المقياس البسيط مسؤولاً عن تجميع قيم عمود واحد؛ ويؤدي وظيفة المقاييس الضمنية تلقائياً.

في المثال التالي، ستُضيف مقياساً ما إلى جدول Sales. حدد جزء Fields في جدول Sales. لإنشاء مقياسٍ ما، في الشريط السياقي "Table Tools"، ومن داخل مجموعة Calculations، حدد New measure.

صورة تُوضّح الشريط السياقي "Table Tools" لجدول "Sales". يتم تمييز أمر "New Measure".

في شريط الصيغة، أدخِل تعريف القياس التالي ومن ثمَّ اضغط على مفتاح Enter.

Revenue =
SUM(Sales[Sales Amount])

يُضيف تعريف القياس مقياس Revenue إلى جدول Sales. إذ يستخدم الدالة SUM DAX لجمع قيم عمود Sales Amount.

على الشريط السياقي Measure tools، وداخل مجموعة Formatting، عيِّن المنازل العشرية إلى 2.

صورة تُوضّح علامة تبويب شريط "Format" مع تمييز خاصية المنازل العشرية التي تم تعيينها إلى 2.

تلميح

بعد إنشائك لأحد المقاييس مباشرة، عيِّن خيارات التنسيق لضمان قيم مُتّسقة ومعروضة بصورة جيدة في جميع الوسائل البصرية للتقرير.

والآن، أضِف مقياس الإيرادات إلى وسائل المصفوفة البصرية. لاحظ أنه يُصدر النتيجة نفسها لدى مقياس Sales Amount الضمني.

في وسيلة المصفوفة البصرية، احذف "Sales Amount" و "Sum of Unit Price".

وبعد ذلك، ستقوم بإنشاء المزيد من المقاييس. قم بإنشاء مقياس "Cost" من خلال استخدام تعريف القياس التالي، ومن ثمّ عيِّن التنسيق الذي لديه اثنان من المنازل العشرية.

Cost =
SUM(Sales[Total Product Cost])

قم بإنشاء مقياس الربح، ومن ثمّ عيِّن التنسيق الذي لديه اثنان من المنازل العشرية.

Profit =
SUM(Sales[Profit Amount])

انتبه إلى أن عمود Profit Amount هو أحد الأعمدة المحسوبة. سيخضع هذا الموضوع للمناقشة في وقتٍ لاحق من هذه الوحدة النمطية.

بعد ذلك، قم بإنشاء مقياس "Quantity" ثم تنسيقه كعدد صحيح مع فاصل الآلاف.

Quantity =
SUM(Sales[Order Quantity])

قم بإنشاء ثلاثة مقاييس لسعر الوحدة ومن ثمّ عيِّن تنسيقاً لكلٍ منها باستخدام اثنين من المنازل العشرية. انتبه إلى دالات تجميع DAX المختلفة المُستخدمة: MIN و MAX و AVERAGE.

Minimum Price =
MIN(Sales[Unit Price])
Maximum Price =
MAX(Sales[Unit Price])
Average Price =
AVERAGE(Sales[Unit Price])

والآن، قم بإخفاء عمود Unit Price، والذي ينتج عنه فقدان مُعدّي التقرير لقدرتهم على تلخيص العمود إلا باستخدام مقاييسك.

تلميح

إن إضافة المقاييس وإخفاء الأعمدة هي الطريقة التي يُمكنك بها، بوصفك عارض البيانات تقييد خيارات التلخيص.

وبعد ذلك، قم بإنشاء المقياسين التاليين، واللذين يُستخدمان لحساب عدد الأوامر وسطور الأمر. قم بتنسيق كلا المقياسين دون أي منازل عشرية.

Order Line Count =
COUNT(Sales[SalesOrderLineKey])
Order Count =
DISTINCTCOUNT('Sales Order'[Sales Order])

تحسب الدالة COUNT DAX عدد القيم غير الفارغة في أحد الأعمدة بينما تحسب الدالة DISTINCTCOUNT DAX عدد القيم المميزة في أحد الأعمدة. نظراً لأن أحد الأوامر قد يكون لديه سطر أمر واحد أو أكثر، سيكون لدى عمود "Sales Order" قيم متكررة. سيحسب العدد المميز للقيم في هذا العمود عدد الأوامر بصورة صحيحة.

وبدلاً من ذلك، يُمكنك اختيار وسيلة أفضل لكتاب مقياس Order Line Count. بدلاً من حساب القيم في أحد الأعمدة، سيكون استخدام الدالة COUNTROWS DAX أكثر وضوحاً من الناحية الدلالية. وبخلاف وظائف التجميع المطروحة مسبقاً، والتي تجمع قيم الأعمدة، تحسب الدالة COUNTROWS عدد الصفوف لأحد الجداول.

عدِّل صيغة مقياس Order Line Count الذي أنشأته أعلاه إلى المعلمات التالية:

Order Line Count =
COUNTROWS(Sales)

أضِف كلاً من المقاييس إلى وسيلة المصفوفة القياسية.

تُعدّ جميع المقاييس التي أنشأتها مقاييس بسيطة نظراً لأنها تجمع عموداً واحداً أو جدولاً واحداً.