اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

سيناقش هذا البرنامج التعليمي حول اختيار أو تصفية تاريخ معين في تقارير بيانات LuckyTemplates الخاصة بك . تأتي المواد المستخدمة في هذا البرنامج التعليمي من . ستتعلم كيفية حل المشكلة وفهم الأساليب المستخدمة. يمكنك مشاهدة الفيديو الكامل لهذا البرنامج التعليمي في أسفل هذه المدونة.

جدول المحتويات

فهم تقرير البيانات في LuckyTemplates

هذا هو نموذج تقرير البيانات الذي سيتم استخدامه. يتكون من جدول مرئي واحد واثنين من شرائح التقطيع.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

الهدف هو تحديد تاريخ عبر عمود التاريخ في أداة تقطيع الشرائح. هذا يعني أنه بمجرد تحديد تاريخ في أداة تقطيع الشرائح ، سيعرض تصور الجدول الأيام السابقة بفاصل 7 أيام. في هذا المثال ، البيانات المحددة في مقسم طريقة العرض هي 12 مايو 2007.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

يجب أن يعرض الجدول السابق مع اختلاف 7 أيام بين التواريخ.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

تحتاج أيضًا إلى إنشاء معلمة ماذا لو لإظهار عدد التواريخ بشكل ديناميكي بناءً على التحديد. إذا حددت 3 ، يجب أن يعرض الجدول المرئي 3 تواريخ فقط.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

إعادة تكوين الجدول والتصورات

الخطوة الأولى هي إنشاء معلمة ماذا لو . داخل سطح مكتب LuckyTemplates ، انتقل إلى علامة التبويب النمذجة وحدد معلمة جديدة .

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

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

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

بعد الضغط على "موافق" ، سيتم إنشاء أداة تقطيع الشرائح. قم بتحويل القطاعة إلى قائمة من خلال النقر على زر القائمة المنسدلة واختيار القائمة.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

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

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

بعد ذلك ، أعد تسمية DisDate المكرر وانقر فوق Close & Apply.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

تحميل جداول التاريخ والقطاعات في LuckyTemplates

بمجرد تحميل الجدول المكرر في نموذج LuckyTemplates ، أنشئ أداة تقطيع مع عمود التاريخ من جدول التاريخ غير المتصل. افتح جدول DisDate واسحب التاريخ إلى اللوحة القماشية.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

ثم قم بتحويل التخيل إلى قطاعة.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

بعد ذلك ، قم بتغيير تنسيق القطاعة إلى قائمة . سيبدو التصور بعد ذلك هكذا.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

بعد ذلك ، قم بتكرار أداة تقطيع الشرائح وتغيير حقل البيانات بعمود التاريخ من جدول التواريخ.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

سيؤدي تحديد تاريخ من مقسم التواريخ إلى تحديد عدد الصفوف المرئية في جدول المبيعات في المصفوفة. إذا حددت 14 مارس 2005 ، فستظهر المصفوفة هذا التاريخ فقط.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

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

إنشاء مقاييس لتقطيع التحديد

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

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

يحدث هذا لأن جدول DisDate ليس له علاقة بجدول التواريخ. هذا هو سبب أهمية الجدول غير المتصل.

احذف أداة تقطيع الشرائح باستخدام جدول التواريخ وأنشئ المقياس الأول. سيقوم المقياس باسترداد القيمة التي تم تحديدها من Dates To Show slicer. المتغير الأول الذي تحتاج إلى إنشائه هو ValuesToShow . بعد ذلك ، قم بمساواته بقيمة تواريخ العرض وإدخال RETURN لإرجاع القيم التي تم تحديدها.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

اسحب هذا المقياس إلى المصفوفة. إذا حددت 6 من Dates To Show slicer ، فسيؤدي عمود القياس في المصفوفة أيضًا إلى 6.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

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

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

بمجرد الانتهاء من ذلك ، سترى القيمة المحددة في أداة تقطيع البيانات DisDate الموضحة في عمود القياس.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

إنشاء جدول محسوب

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

يساعدك الجدول المحسوب في تصور كيفية إنشاء التواريخ داخل كود DAX. انتقل إلى طريقة عرض البيانات وانقر فوق جدول جديد.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

أدخل المتغير SelectedDate ومساواته بوظيفة DATE . ثم أدخل تاريخًا داخل الأقواس. بعد ذلك ، قم بإنشاء متغير آخر سيحدد عدد التواريخ التي تريد إظهارها في المصفوفة. أدخل DatesToShow ومساواته بعدد التواريخ.

بعد ذلك ، أنشئ متغيرًا آخر سينشئ قائمة بالتواريخ بفواصل زمنية مدتها 7 أيام. أدخل قائمة التواريخ واستخدم الدالة GENERATESERIES . هي وظيفة تنشئ قائمة من الأرقام عن طريق تمرير عدة وسيطات.

بالنسبة إلى الوسيطة الأولى ، أدخل SelectedDate - (DatesToShow * 7)  كقيمة البداية. بعد ذلك ، أدخل SelectedDate كقيمة نهائية. بالنسبة إلى الوسيطة الأخيرة ، أدخل 7 لقيمة الزيادة أو الفاصل الزمني بين التواريخ. بمجرد الانتهاء من ذلك ، أغلق الوظيفة وأدخل RETURN و DateList .

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

يمكنك بعد ذلك رؤية جدول يحتوي على سبع قيم بدءًا من الخامس من مايو والعودة بزيادات سبعة.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

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

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

لإصلاح ذلك ، يمكنك إما تغيير قيمة المتغير DatesToShow إلى 5 أو طرح 1 من 6. في هذا المثال ، يتم طرح 1 من 6.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

بعد ذلك ، سترى أن القيم تنتهي في 31 مارس.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

حقن التواريخ في سياق التصفية

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

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

في المقياس ، قم بإضافة متغير جديد وإدخال DatesToShow . بعد ذلك ، قم بمساواة هذا المتغير مع صيغة GENERATESERIES . قم بتغيير المتغيرات داخل بناء الجملة من SelectedDate إلى DisSelectedDate ، و DatesToShow إلى ValuesToShow .

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

أخيرًا ، قم بإنشاء متغير للنتيجة. قم بمكافأته بوظيفة CALCULATE عبر إجمالي المبيعات و DatesToShow لإدخال جميع التواريخ المستلمة من بناء جملة GENERATESERIES في سياق عامل التصفية. بمجرد الانتهاء من ذلك ، أدخل النتيجة في وظيفة RETURN .

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

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

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

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

تحتاج إلى استخدام وظيفة لإنشاء علاقات افتراضية وتطبيق سياق عامل التصفية.

استخدام TREATAS لإصلاح التاريخ في LuckyTemplates Matrix

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

لذلك في متغير النتيجة ، أدخل TREATAS بعد جدول إجمالي المبيعات وقدم الوسيطات. بالنسبة للوسيطة الأولى ، قم بتوفير العمود أو الجدول الذي ليس له علاقة. في هذه الحالة ، يتم استخدام العمود DatesToShow .

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

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

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

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

تكمن المشكلة في طريقة كتابة الكود. يطبق TREATAS جميع القيم في سياق عامل التصفية ويتجاوز سياق عامل التصفية الحالي في التاريخ المحدد بجميع القيم التي تم استردادها من دالة GENERATESERIES .

استخدام وظيفة KEEPFILTERS على TREATAS

للتأكد من حقن المرشح في الفلتر دون تجاوز سياق المرشح الحالي ، تحتاج إلى استخدام وظيفة KEEPFILTERS . يغير دلالات تصفية CALCULATE .

أدخل عوامل تصفية KEEPFILTER قبل وظيفة TREATAS وقم بتأكيد الإجراء.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

ستلاحظ الآن أن القيم الموجودة داخل عمود القياس لا تتكرر.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

إذا قمت بتوسيع شهري مايو وأبريل ، فسترى أن القيم الموجودة في عمود القياس تساوي قيم عمود إجمالي المبيعات.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

قم بإزالة مقياس إجمالي المبيعات في المصفوفة وحدد رقمًا في Dates To Show Slicer. سترى بعد ذلك العدد المكافئ للتواريخ المعروضة في المصفوفة.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

إصلاح مشكلات التاريخ المفقودة في مصفوفة LuckyTemplates

مشكلة أخرى في هذا التقرير هي أنه عندما تحدد 8 في DatesToShow slicer ، فإن المصفوفة لا تتغير.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

إذا حددت 9 في تقطيع الشرائح ، فستظهر المصفوفة 8 تواريخ فقط. ستلاحظ أيضًا أن 17 مارس مفقود من قائمة التواريخ.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

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

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

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

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

استخدام DAX لحل التاريخ المفقود في LuckyTemplates

قم بإنشاء نسب البيانات عن طريق كتابة TREATAS فوق عمود DatesToShow و Date في جدول التواريخ . بعد ذلك ، تحقق مما إذا كانت جميع التواريخ التي تم إرجاعها بواسطة وظيفة TREATAS مدرجة في سياق عامل التصفية.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

من هناك ، قسّم التنفيذ بواسطة متغيرات متعددة. قم بتغيير اسم المتغير من Result إلى CreateDataLineage لإظهار أنه يخزن نتيجة TREATAS .

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

بعد ذلك ، قم بإنشاء متغير آخر يحتوي على جميع التواريخ المرئية في سياق المرشح القادم من المصفوفة. أدخل VisibleDate كاسم متغير واستخدم عبر عمود التاريخ .

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

الشيء التالي الذي يجب فعله هو إنشاء عمود فوق نتيجة دالة TREATAS التي قد تحتوي على مبلغ المبيعات. اكتب DatesWithSales كاسم متغير واستخدم فوق متغير CreateDataLineage .

داخل الوظيفة ، قم بإنشاء عمود جديد وقم بتسميته مبلغ المبيعات باستخدام مقياس إجمالي المبيعات في سياق الصف لبدء انتقال السياق.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

بعد ذلك ، قم بإنشاء متغير للتحقق مما إذا كانت جميع التواريخ المخزنة في متغير DatesWithSales مدرجة في سياق المرشح. أدخل IsDateInFilterContext كاسم متغير واستخدم دالة .

من هناك ، اكتب DatesWithSales كالوسيطة الأولى للدالة. بعد ذلك ، أدخل التواريخ [التاريخ] IN VisibleDate كالوسيطة الثانية للتحقق مما إذا كان التاريخ الموجود في الجدول DatesWithSales مضمنًا في متغير VisibleDate .

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

المتغير الأخير الذي تريد تكوينه هو النتيجة . استخدم الدالة عبر متغير IsDateInFilterContext . اكتب [@ حجم المبيعات] + 0 لتضمين الأيام التي لم يتم تضمينها من قبل.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

بعد كل ذلك ، سترى التاريخ المفقود ، 17 مارس ، في المصفوفة.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

باستخدام +0 في القياس الأصلي

أوضحت لك الخطوات السابقة كيفية إنشاء مقياس لتضمين جميع التواريخ التي لا تحتوي على معاملات في جدول الحقائق. الآن ، إذا كنت تستخدم + 0 في المقياس الأصلي الذي قمت بإنشائه ، فستكون جميع القيم في عمود القياس 0.

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

اختر تاريخًا محددًا في LuckyTemplates باستخدام حساب DAX

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

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

هذا هو سبب حاجتك إلى إعادة كتابة المقياس بطريقة تحتاج فيها فقط إلى إضافة 0 إلى التواريخ المرئية في سياق المرشح والمضمنة في متغير DatesToShow .


موصلات أتمتة الطاقة: الرقم والنص والتاريخ والوقت
جدول التاريخ الممتد استعلام الطاقة M الوظيفة
Power Query LuckyTemplates | إنشاء سجلات جديدة بناءً على حقول التاريخ

خاتمة

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


ما هي الذات في بايثون: أمثلة من العالم الحقيقي

ما هي الذات في بايثون: أمثلة من العالم الحقيقي

ما هي الذات في بايثون: أمثلة من العالم الحقيقي

كيفية حفظ وتحميل ملف RDS في R.

كيفية حفظ وتحميل ملف RDS في R.

ستتعلم كيفية حفظ وتحميل الكائنات من ملف .rds في R. ستغطي هذه المدونة أيضًا كيفية استيراد الكائنات من R إلى LuckyTemplates.

تمت إعادة النظر في أول N أيام عمل - حل لغة ترميز DAX

تمت إعادة النظر في أول N أيام عمل - حل لغة ترميز DAX

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

اعرض الرؤى باستخدام تقنية المرئيات الديناميكية المتعددة الخيوط في LuckyTemplates

اعرض الرؤى باستخدام تقنية المرئيات الديناميكية المتعددة الخيوط في LuckyTemplates

سيغطي هذا البرنامج التعليمي كيفية استخدام تقنية Multi Threaded Dynamic Visuals لإنشاء رؤى من تصورات البيانات الديناميكية في تقاريرك.

مقدمة لتصفية السياق في LuckyTemplates

مقدمة لتصفية السياق في LuckyTemplates

في هذه المقالة ، سأقوم بتشغيل سياق عامل التصفية. يعد سياق عامل التصفية أحد الموضوعات الرئيسية التي يجب على أي مستخدم LuckyTemplates التعرف عليها في البداية.

أفضل النصائح في استخدام التطبيقات في خدمة LuckyTemplates عبر الإنترنت

أفضل النصائح في استخدام التطبيقات في خدمة LuckyTemplates عبر الإنترنت

أريد أن أوضح كيف يمكن لخدمة تطبيقات LuckyTemplates عبر الإنترنت أن تساعد في إدارة التقارير والرؤى المختلفة التي تم إنشاؤها من مصادر مختلفة.

تحليل تغييرات هامش الربح بمرور الوقت - التحليلات باستخدام LuckyTemplates و DAX

تحليل تغييرات هامش الربح بمرور الوقت - التحليلات باستخدام LuckyTemplates و DAX

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

أفكار التجسيد لذاكرة التخزين المؤقت للبيانات في DAX Studio

أفكار التجسيد لذاكرة التخزين المؤقت للبيانات في DAX Studio

سيناقش هذا البرنامج التعليمي أفكار تجسيد مخازن البيانات وكيفية تأثيرها على أداء DAX ​​في توفير النتائج.

إعداد تقارير الأعمال باستخدام LuckyTemplates

إعداد تقارير الأعمال باستخدام LuckyTemplates

إذا كنت لا تزال تستخدم Excel حتى الآن ، فهذا هو أفضل وقت لبدء استخدام LuckyTemplates لاحتياجات إعداد تقارير الأعمال الخاصة بك.

ما هي بوابة LuckyTemplates؟ كل شيئ ترغب بمعرفته

ما هي بوابة LuckyTemplates؟ كل شيئ ترغب بمعرفته

ما هي بوابة LuckyTemplates؟ كل شيئ ترغب بمعرفته