Monday, 8 January 2018

Powerpivot الحركة من المتوسط - داكس


المتوسطات المتحركة، المبالغ، الخ. الخط الأزرق ينعم من تقلبات عشوائية، يروي أقل من الإفراط في رد الفعل الاتجاه أدركت مؤخرا أن هذا الموضوع لم يتم تغطيتها من قبل، في شكلها الأكثر مباشرة، على هذا الموقع في الواقع، كان موضوع وهو مشاركة ضيف من قبل ديفيد تشورشوارد المحترم. وأيضا من قبل كاسبر دي جونج المحترم على قدم المساواة. لكن أيا من هاتين الوظيفتين لم يستفد من الوظائف التي كانت متاحة لنا اليوم. لتوضيح ما يمكننا القيام به مع صيغ باور بيفوت للدولة من بين الفن، ويبدأ مع هذا النموذج البسيط: ومحور بسيط: أن وحدات يباع قياس هو الخط الأحمر خشنة في الرسم البياني في الجزء العلوي من وظيفة، و صيغته بسيطة جدا: وحدات مباعة سوم (ساليسكتيسولد) ونحن نريد نسخة من وحدات بيعها التي تمهيد على مدى فترة 3 أشهر. نقل مجموع يتيح بدء مع الصيغة التي هي مجموع آخر 3 أشهر (بما في ذلك الحالي واحد): 3 شهر نقل مجموع وحدات مباعة حساب (وحدات مباعة، داتيسينبيريود (كالندارديت، لاستديت (كالندارديت)، - 3، شهر)) وانظر ما يشبه: نقل مجموع 3 أشهر يعكس الشهر الحالي والشهرين الماضيين المتوسط ​​المتحرك أول محاولة موافق، ولكن هذا العدد هو أكبر من شهر واحد ولا يتطابق مع حجم أعمالنا في العالم الحقيقي، لذلك نحن لا نريد أن نرسم أن نريد نسخة متوسطة من ذلك. في المتوسط ​​المتحرك لمدة 3 أشهر، وذلك للحصول على المتوسط، يمكننا أن نقسم فقط بنسبة 3: 3 شهر متوسط ​​الفجوة 3 3 شهر وحدات مجموع تتحرك تباع 3 الذي يشبه: 3 شهر تتحرك المتوسط ​​عن طريق الانقسام بنسبة 3 لديه عيب تلك الأولى شهرين، لأنهم الشهران الأولان في تقويمنا، يلخصون مبيعات أقل من 3 أشهر، لكنهم لا يزالون ينقسمون إلى 3. المتوسط ​​المتحرك المصحح يمكننا حساب ذلك عن طريق تغيير مقاسمنا لاستخدام منطق مشابه إلى البسط: 3 أشهر نقل متوسط ​​تصحيح 3 أشهر وحدات نقل متحرك تم البيع كالكولات (ديستنكتكونت (التقويم التقويمي الشهر)، داتيسينبيريود (كالندارديت، لاستديت (كالندارديت)، - 3، شهر)) في اللغة الإنجليزية: اتخاذ قياس مبلغ 3 أشهر لدينا بالفعل وتقسيمها من قبل عدد من أشهر متميزة (فريدة من نوعها) لدينا على مدى نفس الفترة 3 أشهر. هذا احسب هو أكثر عادل لأشهر في بداية الاختلافات هناك عدد من الاختلافات على هذا النهج دايليويكليكارتيرلي الإصدارات، وتصحيح للتقاويم التي تتجاوز نطاق التواريخ حيث لديك المبيعات، وتكييفها مع التقاويم المخصصة عبر أكبر صيغة في العالمية . وما إلى ذلك ولكن سوف ننتظر ونرى ما يسأل الناس عن في التعليقات قبل حفر في أي من تلك. يعمل ولكن 8230 ... أنا أعمل مع أيام 8211 على وجه التحديد، ولست بحاجة للحصول على المتداول 28 يوم متوسط ​​واحد من التدابير بلدي. يعمل هذا بشكل جيد عندما أرى النتيجة مع سمة تاريخ بلدي. ومع ذلك، يحتوي مقال التقويم الخاص بي أيضا على سمة سرية غير مستمرة تسمى ديتمونث (التي تبدو مثل 1 يناير، 2-يناير الخ) كنت آمل أن هذا يسمح لي ثم لأخذ سمة بلدي العام ومقارنة معدل 28 يوم ل 1 يناير على مدى سنوات عديدة. لذلك هل يمكن أن يكون مخطط خطي حيث محور هو 1 يناير إلى 31 ديسمبر (مع عدم وجود إشارة إلى السنة) وفئة السلسلة هي حسب السنة، لذلك خط لكل سنة. نأمل أن يساعد شخص ما المعادلة الأخيرة المقدمة 8211 المتوسط ​​المتحرك تصحيح 8211 يسلم مقام بقيمة 12 (أي أنه يعتمد على عندما يبدأ بلدي التقويم الشهري الشهر، وذلك ليكون المتوسط ​​المتحرك الصحيح 12 شهرا، والبيانات الخاصة بي والتقويم تحتاج إلى تبدأ في نفس الوقت). أي اقتراحات أحسبت بها: ما فعلته بدأت عد الأشهر بلدي بدءا من تاريخ أول من مبيعاتي (أي 40663 هو آخر موعد قبل أن أبدأ في عد الأشهر حيث كانت مبيعاتي). نأمل أن هذا يمكن أن تساعد شخص ما في البحث هذا بلوق وظيفة ويليام، كنت منقذا للحياة. كنت أحاول معرفة السبب الذي جعل مقامتي 3 لأقدم شهر من البيانات كنت أعمل معه. أنا أقدر مثالك وشرحك الذي طبق بالضبط على وضعي. جون بولين يقول: لدي حل أفضل للتعليق النهائي هنا 8211 واحد الذي يحسب عدد الأشهر لتقسيم من قبل، إذا البيانات الخاصة بك والتقويم لا تبدأ في نفس الوقت. هذا هو كالك الأصلي: 3 أشهر نقل متوسط ​​تصحيح 3 أشهر وحدات مجموع متحرك تم البيع كالكولات (ديستنكتكونت (التقويم التقويمي الشهر)، داتيسينبيريود (كالندارديت، لاستديت (كالندارديت)، - 3، شهر)) وداخل المقسم أن التعديل مطلوب 8211 للعمل بشكل صحيح من حيث لتقسيم بنسبة 2 ثم 1 (لأول 3 أشهر في البيانات الخاصة بك). يعمل أدناه على علاج: 3 شهر متوسط ​​التحرك 8211 العمل 3 شهر نقل المجموع حساب (حساب (القيم (ديمداتكالندارمونث))، فاكتساليس)، داتيسينبيريود (ديماتداتيكي، لاستديت (ديمداتيداتيكي)، - 3، مونث)) حيث فاكتساليس هو الخاص بك الجدول أوبس الحقيقة. نأمل أن يساعد هذا شخص آخر من 8211 كما قادني جنون فيكاس غوتام يقول: لدي سؤال. ماذا لو احتجنا إلى متوسط ​​آخر 30 يوم عمل أو أيام عمل. بالطبع، سيكون لدينا عمود تاريخ يمثل أيام التداول. ومبلغ المبيعات المقابلة. 1 شهر متوسط ​​مع صيغة الخاص بك win8217t يكون نفس الشيء. كما هو مطلوب بالضبط 30 أيام 8217s المتوسط ​​هنا. هل يرجى اقتراح صيغة. والشيء الصعب هو يستند الحساب على التاريخ المالي غير تاريخ التقويم، كما أن كل الوقت الحالي تقريبا وظائف تاريخ ذكي لا يمكن استخدامها. أي صيغة حساب عينة على أساس التاريخ المالي حصلت على الكثير من المعلومات حول الحسابات استنادا إلى تواريخ العملاء من الرابط أعلاه 8220 غريتست الفورمولا في العالم 8221. It8217s مفيدة جدا 8230 .. هذا هو نشر كبيرة من قبل الجميع. أريد أن أعرف ما إذا كانت المبيعات في واحدة من الأشهر الثلاثة الماضية صفر أو أي مبيعات على الإطلاق، ثم كيف الصيغ المقترحة العمل. أريد أن أعرف عدد أشهر من الشهر الحالي إلى آخر ثلاثة أشهر وجود مبيعات. أقول أنا في مايو 2014 الأشهر الثلاثة الأخيرة سيكون بما مايو 2014. مارس 2014، أبريل 2014 وأيار 2014. ولكن أبريل 2014 ليس لديها مبيعات. لذا يجب أن يكون مجموع مبيعات مارس وأيار 2014 مقسوما على 2 وليس 3. نفترض أن لدينا مبيعات لشهر يونيو 2014 ويول 2014. بالنسبة لشهر يونيو 2014، يجب أن يكون متوسط ​​الأشهر الثلاثة الأخيرة (2014 يونيو 2014) 2. بالنسبة إلى يوليو 2014 ينبغي أن يكون متوسط ​​3 أشهر الماضية (مايو 2014 يونيو 2014 يوليو 2014) 3. أي مساعدة لتحقيق هذا سيكون موضع تقدير كبير. مهلا هناك، حل رائع. ولكن الآن I8217m تبحث عن نفس إضافة تشينوسينغ المذكورة. بعض سلسلة في البيانات بلدي don8217t ديك المبيعات في الفترة الماضية ولكن الآخرين لا. تشينوسينغ، هل وجدت الحل أن I8217d يكون ممتنا للغاية، وذلك بفضل. إم جديد مع جميع وظائف داكس وتكافح تماما مع حسابي المتوسط ​​المتحرك. أنا فقط بحاجة إلى المتوسط ​​المتحرك من 3 أشهر مرة أخرى لا بما في ذلك الشهر الحالي. حاولت استخدام 8220IF8221 ولكن لم يعمل بها. يمكن لبعض واحد مساعدتي مع إيتسكل خادم دينالي بويربيفوت ألبرتو فيراري كتب بالفعل عن حساب المتوسطات المتحركة في داكس باستخدام العمود المحسوب. I8217d ترغب في تقديم نهج مختلف هنا باستخدام مقياس محسوب. بالنسبة للمتوسط ​​المتحرك I8217m الذي يحسب متوسطا متحركا يوميا (خلال ال 30 يوما الأخيرة) هنا. على سبيل المثال، I8217m باستخدام المصنف بويربيفوت التي يمكن تحميلها كجزء من ساس الجدولية مشاريع نموذجية من عينات دينالي كتب 3. في هذا المنصب، I8217m تطوير الصيغة خطوة بخطوة. ومع ذلك، إذا كنت في عجلة من امرنا، قد ترغب مباشرة للانتقال إلى النتائج النهائية أدناه. مع السنة التقويمية 2003 على المرشح وتاريخ الأعمدة ومبلغ المبيعات (من مبيعات الإنترنت الجدول) في التفاصيل، تبدو البيانات عينة مثل هذا: في كل سياق صف 8217s، التعبير ديتديت يعطي السياق الحالي، أي تاريخ هذا الصف . ولكن من قياس محسوب لا يمكننا الرجوع إلى هذا التعبير (حيث لا يوجد صف الحالي لجدول التاريخ)، بدلا من ذلك يجب استخدام تعبير مثل لاستديت (داتديت). لذلك، من أجل الحصول على آخر ثلاثين يوما يمكننا استخدام هذا التعبير يمكننا الآن تلخيص مبيعات الإنترنت لدينا لكل من تلك الأيام باستخدام وظيفة تلخيص: تلخيص (160 ديتينديريود (ديتديت، لاستديت (داتديت)، - 30، يوم) 160، ديتديت 160. كوتساليسامونتسومكوت 160. مجموع (مبيعات الإنترنتمبيعات المبلغ)) وأخيرا، we8217re باستخدام الدالة داكس أفيراجكس لحساب متوسط ​​تلك القيم 30: مبلغ المبيعات (30d متوسط): أفيراجكس (160 تلخيص (160160160 ديتينبيريود (ديتديت، لاستديت (ديتديت)، - 30، داي) 160160160، ديتديت 160160160. كوتساليسامونتكومكوت 160160160. سوم (المبيعات عبر الإنترنت مبلغ المبيعات) 160) 160، ساليسامونتوم) هذا هو الحساب الذي نستخدمه في جدول مبيعات الإنترنت لدينا كما هو موضح في الصورة أدناه: عند إضافة هذه العملية الحسابية إلى الجدول المحوري من الأعلى، تبدو النتيجة كما يلي: عند النظر إلى النتيجة يبدو أننا دون 8217t لدينا أية بيانات قبل 1 يناير 2003: القيمة الأولى للمتوسط ​​المتحرك مطابقة لقيمة اليوم ( هناك أر e أي صفوف قبل ذلك التاريخ). القيمة الثانية للمتوسط ​​المتحرك هي في الواقع متوسط ​​اليومين الأولين وهكذا. هذا ليس صحيحا تماما ولكن I8217m العودة إلى هذه المشكلة في الثانية. تظهر لقطة الشاشة حساب المتوسط ​​المتحرك في 31 كانون الثاني / يناير كمتوسط ​​للقيم اليومية من 2 إلى 31 يناير / كانون الثاني. كما يعمل القياس المحسوب لدينا بشكل جيد عند تطبيق الفلاتر. في لقطة التالية استخدمت اثنين من فئات المنتجات لسلسلة البيانات: كيف يعمل قياسنا المحسوب على مستويات التجميع العالي من أجل معرفة، I8217m باستخدام التسلسل الهرمي التقويم على الصفوف (بدلا من التاريخ). للحصول على البساطة أزلت مستويات الفصل الدراسي والربع باستخدام خيارات الجدول المحوري Excel8217s (خيار حقول شويد). كما ترون، فإن الحساب لا يزال يعمل بشكل جيد. هنا، الإجمالي الشهري هو المتوسط ​​المتحرك لليوم الأخير من الشهر المحدد. يمكنك أن ترى هذا بوضوح لشهر يناير (تظهر قيمة 14،215.01 أيضا في لقطة أعلاه كقيمة 31 يناير). إذا كان هذا هو شرط العمل (الذي يبدو معقولا لمتوسط ​​يومي)، ثم التجميع يعمل بشكل جيد على مستوى شهري (وإلا سيكون لدينا لضبط حسابنا وهذا سيكون موضوعا آم القادم). ولكن على الرغم من أن التجميع منطقي على مستوى شهري، إذا قمنا بتوسيع هذا الرأي إلى مستوى اليوم you8217ll نرى أن قياسنا المحسوب ببساطة يعود مبلغ المبيعات لذلك اليوم، وليس متوسط ​​آخر 30 يوما بعد الآن: كيف يمكن أن يكون هذا. تنتج المشكلة من السياق الذي نقوم بحساب مجموعتنا، كما هو موضح في التعليمات البرمجية التالية: مبلغ المبيعات (30d متوسط): أفيراجكس (160 تلخيص (160160160 ديتينديبيريود (ديتديت، لاستديت (داتديت)، - 30، داي) 160160160، ديتديت 160160160. كوتساليسامونتكومكوت 160160160. سوم (مبيعات الإنترنتمبيعات المبلغ) 160) 160، ساليسامونتوم) منذ تقييم هذا التعبير خلال فترة التواريخ المحددة، السياق الوحيد الذي يتم الكتابة فوقه هنا، ديتديت. في التسلسل الهرمي لدينا we8217re باستخدام سمات مختلفة من بعدنا (السنة التقويم والشهر ويوم من الشهر). وبما أن هذا السياق لا يزال موجودا، يتم تصفية الحساب أيضا من قبل تلك السمات. وهذا ما يفسر لماذا نحن السياق الحالي day8217s لا تزال موجودة لكل سطر. للحصول على الأمور واضحة، طالما أننا نقيم هذا التعبير خارج سياق التاريخ، كل شيء على ما يرام كما يظهر الاستعلام داكس التالية عندما يتم تنفيذها من قبل إدارة ستوديو على منظور مبيعات الإنترنت من نموذجنا (باستخدام قاعدة بيانات جدولي مع نفس البيانات ): تقييم (160160160 تلخيص (160160160160160160160 ديستنبيريود (تاريخ، تاريخ (2003،1،1)، - 5، يوم) 160160160160160160160، تاريخ 160160160160160160160. كوتساليسامونتومكوت 160160160160160160160. مجموع (مبيعات الإنترنتمبيعات المبلغ) 160160160)) هنا، أنا خفضت الفترة الزمنية إلى 5 أيام وأيضا تعيين تاريخ محدد كما سيستديت (8230) سيؤدي إلى آخر تاريخ لجدول أبعاد التاريخ الذي لا توجد بيانات في نموذج البيانات. هنا هو نتيجة الاستعلام: ومع ذلك، بعد تعيين عامل تصفية إلى 2003، سيتم تضمين أي صفوف البيانات خارج 2003 في المجموع. وهذا ما يفسر الملاحظة أعلاه: بدا الأمر وكأننا لا نملك سوى بيانات تبدأ من 1 يناير / كانون الثاني 2003. والآن، نعرف السبب: كان عام 2003 على الفلتر (كما ترون في أول لقطة شاشة لهذا المنصب) و وبالتالي كان حاضرا عند حساب المبلغ. الآن، كل ما علينا القيام به هو التخلص من تلك المرشحات إضافية لأن we8217re بالفعل تصفية نتائجنا حسب التاريخ. أسهل طريقة للقيام بذلك، هي استخدام الدالة كالكت وتطبيق آل (8230) على كافة السمات التي نريد إزالة عامل التصفية. كما لدينا بعض هذه الصفات (السنة والشهر واليوم، أيام الأسبوع، 8230) ونحن نريد لإزالة عامل التصفية من كل منهم ولكن سمة التاريخ، الدالة الاختصار أليكسيبت مفيد جدا هنا. إذا كان لديك خلفية مدس سوف نتساءل لماذا نحن don8217t الحصول على مشكلة مماثلة عند استخدام ساس في وضع أولاب (بيسم متعددة الأبعاد). والسبب هو أن قاعدة البيانات أولاب لدينا علاقات السمة، وذلك بعد تعيين السمة (مفتاح) التاريخ، يتم تغيير سمات أخرى تلقائيا أيضا ونحن don8217t أن تأخذ الرعاية حول هذا (انظر مشاركتي هنا). ولكن في نموذج جدول نحن don8217t لها علاقات السمة (ولا حتى سمة المفتاح الحقيقي)، وبالتالي نحن بحاجة للقضاء على المرشحات غير المرغوب فيها من حساباتنا. حتى هنا نحن مع مبلغ المبيعات 8230 (30d متوسط): أفيراجكس (160 تلخيص (160160160 ديتيندبيريود (ديتديت، لاستديت (ديتديت)، - 30، داي) 160160160، ديتديت 160160160. كوتساليسامونتكومكوت 160160160. حساب (مجموع (المبيعات عبر الإنترنت مبلغ المبيعات) (التاريخ، التاريخ) 160)، ساليسامونتوم) وهذا هو الجدول المحوري النهائي لدينا في إكسيل: لتوضيح المتوسط ​​المتحرك، هنا هو نفس استخراج البيانات في عرض مخطط (إكسيل): على الرغم من أننا تصفية بياناتنا على 2003، فإن المتوسط ​​المتحرك للأيام ال 29 الأولى من عام 2003 يأخذ في الاعتبار بشكل صحيح الأيام المقابلة من عام 2002. سوف تعترف القيم 30 و 31 يناير من نهجنا الأول كما كانت هذه الأيام الأولى التي لدينا حساب الأول كان لديه كمية كافية من البيانات (كامل 30 يوما).Im محاولة لخلق المتوسط ​​المتحرك في نموذجي. تبحث عن بعض المساعدة. حاولت اتباع التفاصيل في ألبرتو فيراريس بلوق هنا. ولكن لم أستطع الحصول على العمل داينومبر العمل، وبناء الجملة لا يبدو صحيحا وأنا لا يمكن تصحيحه. يحتوي نموذجي على جدول حقائق يحتوي على قائمة من الحالات، والانضمام إلى جدول تاريخ عبر تاريخ الإنشاء. لدي علاقة ثانية (غير نشط) إلى جدول التاريخ على العمود كلوسديدات. لدي مقياس: حالة مغلق عدد: حساب (كونتروز (حالة)، وسيرلاتيونشيب (كاسكلوسداتيكي، داتداتيكي)). أود الحصول على مقياس الحصول على مجموع عدد مغلقة عدد الأيام الثلاثة الماضية من السياق الحالي. ثم أخطط لتقسيم هذا الرقم بنسبة 3 للحصول على المتوسط ​​المتحرك لمدة 3 أيام. قطعة واحدة أخرى من المنطق أود أن تنظر - إذا كان اليوم الأخير هو اليوم، ثم يتم استخدام الأيام الثلاثة السابقة - يتم تحديث البيانات كل 15 دقيقة، لذلك القيام بذلك في 09:00 في الصباح سوف الانحراف المتوسط، كما وليس يوم الانتهاء الكامل. أي مساعدة هو موضع تقدير. الأحد، 17 فبراير، 2013 5:25 م هيريس رابط إلى نهج باستخدام مجرد مقياس محسوب أن خافيير غيلين كتب في حين يعود. امل ان يساعد. برنت غرينوود، مس، مسيتب، كبيب يرجى وضع علامة على الإجابات الصحيحة والمشاركات المفيدة brentgreenwood. blogspot عدله برنت غرينوود إديتور الاثنين، 18 فبراير 2013 4:08 م اقتراح كجواب من قبل إد السعر - موظف مسفت ميكروسوفت، المالك الخميس، أغسطس 22، 2013 7:39 بيإم تم وضع علامة كجواب من قبل إد السعر - موظف مسفت ميكروسوفت، المالك الثلاثاء، 17 سبتمبر 2013 6:39 ص الاثنين، فبراير 18، 2013 4:08 م في منصبه، يستفيد ألبرتو من وظيفة إيرلير التي تعود قيمة من سياق صف سابق. يعمل هذا فقط في تعبير متكرر، عند تقييم هذا التعبير في سياق صف موجود (تعبير متكرر آخر، أو عمود محسوب.) هل يلبي المتطلبات التالية (لم يتم اختباره) الحالة مغلق عدد الأيام الأخيرة: كالكولات ( (داتدبيكي، 3، يوم).DATDDATKY)) يمكن إجراء آخر واحد باستخدام تعبير إف باستخدام الدالة توداي ()، وتكييف النمط أعلاه. عرض مقتضب سنوات خبرة إضافية غير مذكورة أعلاه: لا يوجد 0 سنوات، . امل ان يساعد. برنت غرينوود، مس، مسيتب، كبيب يرجى وضع علامة على الإجابات الصحيحة والمشاركات المفيدة brentgreenwood. blogspot عدله برنت غرينوود إديتور الاثنين، 18 فبراير 2013 4:08 م اقتراح كجواب من قبل إد السعر - موظف مسفت ميكروسوفت، مالك الخميس، أغسطس 22، 2013 7:39 م تم وضع علامة كجواب من قبل إد السعر - موظف مسفت ميكروسوفت، المالك الثلاثاء، 17 سبتمبر 2013 6:39 ص الاثنين، فبراير 18، 2013 4:08 خادم بسكل دينالي بويربيفوت ألبيرتو فيراري كتب بالفعل عن حساب المتوسطات المتحركة في داكس باستخدام عمود محسوب. إد ترغب في تقديم نهج مختلف هنا باستخدام مقياس محسوب. بالنسبة للمتوسط ​​المتحرك إم حساب المتوسط ​​المتحرك اليومي (خلال ال 30 يوما الماضية) هنا. على سبيل المثال، إم باستخدام المصنف بويربيفوت التي يمكن تحميلها كجزء من ساس الجدولية مشاريع نموذجية من عينات دينالي كتب 3. في هذا المنصب، إم تطوير الصيغة خطوة بخطوة. ومع ذلك، إذا كنت في عجلة من امرنا، قد ترغب مباشرة للانتقال إلى النتائج النهائية أدناه. مع السنة التقويمية 2003 على عامل التصفية وتاريخ الأعمدة ومبلغ المبيعات (من مبيعات الإنترنت الجدول) في التفاصيل، تبدو البيانات عينة مثل هذا: في كل سياق الصفوف التعبير 8216DateDate يعطي السياق الحالي، أي تاريخ هذا الصف . ولكن من قياس محسوب لا يمكننا الرجوع إلى هذا التعبير (حيث لا يوجد صف الحالي لجدول التاريخ)، بدلا من ذلك يجب استخدام تعبير مثل لاستديت (8216DateDate). لذلك، من أجل الحصول على آخر ثلاثين يوما يمكننا استخدام هذا التعبير يمكننا الآن تلخيص مبيعات الإنترنت لدينا لكل من تلك الأيام باستخدام وظيفة تلخيص: تلخيص (ديتينبيريود (8216DateDate، لاستديت (8216DateDate)، - 30، داي)، 8217 التاريخ 8220SalesAmountSum8221 سوم (8216Internet ساليس ساليس ساليس)) وأخيرا، تم استخدام داكسيكس داتايلكس لحساب متوسط ​​القيم الثلاثين: ساليس أمونت (30d أفغ): أفيراجكس (سوماريز (ديتينبيريود (8216DateDate، لاستديت (8216DateDate)، - 30، داي)، 8217DateDate 8220SalesAmountSum8221 سوم (8216Internet ساليس ساليس أمونت))، ساليسامونتوم) هذا هو الحساب الذي نستخدمه في جدول مبيعات الإنترنت كما هو موضح في لقطة الشاشة أدناه: عند إضافة هذا الحساب إلى الجدول المحوري من أعلاه، تبدو النتيجة كما يلي: عند النظر إلى النتيجة يبدو أننا لا نملك أي بيانات قبل 1 يناير 2003: القيمة الأولى للمتوسط ​​المتحرك مطابقة لقيمة اليوم (لا توجد صفوف قبل ذلك التاريخ). القيمة الثانية للمتوسط ​​المتحرك هي في الواقع متوسط ​​اليومين الأولين وهكذا. هذا ليس صحيحا تماما ولكن إم العودة إلى هذه المشكلة في الثانية. تظهر لقطة الشاشة حساب المتوسط ​​المتحرك في 31 كانون الثاني / يناير كمتوسط ​​للقيم اليومية من 2 إلى 31 يناير / كانون الثاني. كما يعمل القياس المحسوب لدينا بشكل جيد عند تطبيق الفلاتر. في لقطة التالية استخدمت اثنين من فئات المنتجات لسلسلة البيانات: كيف يعمل قياسنا المحسوب على مستويات التجميع العالي من أجل معرفة، إم باستخدام التسلسل الهرمي التقويم على الصفوف (بدلا من التاريخ). للحصول على البساطة أزلت مستويات الفصل الدراسي والربع باستخدام إكسيلز بيفوت تابل أوبتيونس (شويد فييلدز أوبتيون). كما ترون، فإن الحساب لا يزال يعمل بشكل جيد. هنا، الإجمالي الشهري هو المتوسط ​​المتحرك لليوم الأخير من الشهر المحدد. يمكنك أن ترى هذا بوضوح لشهر يناير (تظهر قيمة 14،215.01 أيضا في لقطة أعلاه كقيمة 31 يناير). إذا كان هذا هو شرط العمل (الذي يبدو معقولا لمتوسط ​​يومي)، ثم التجميع يعمل بشكل جيد على مستوى شهري (وإلا سيكون لدينا لضبط حسابنا وهذا سيكون موضوعا آم القادم). ولكن على الرغم من أن التجميع منطقي على مستوى شهري، إذا قمنا بتوسيع وجهة النظر هذه إلى مستوى اليوم سترى أن قياسنا المحسوب ببساطة يعود مبلغ المبيعات لذلك اليوم، وليس متوسط ​​آخر 30 يوما بعد الآن: كيف يمكن أن يكون هذا. وتنتج المشكلة من السياق الذي نقوم بحساب مجموعتنا، كما هو موضح في التعليمات البرمجية التالية: مبلغ المبيعات (30d متوسط): أفيراجكس (تلخيص (ديستنبيريود (8216DateDate، لاستديت (8216DateDate)، - 30، داي)، 8217 التاريخ 8220SalesAmountSum8221. سوم (8216Internet ساليسزاليس أمونت))، ساليسامونتوم) بما أننا نقيم هذا التعبير خلال فترة التواريخ المحددة، فإن السياق الوحيد الذي يتم الكتابة فوقه هنا هو 8216DateDate. في التسلسل الهرمي لدينا كانت تستخدم سمات مختلفة من بعدنا (السنة التقويم والشهر ويوم من الشهر). وبما أن هذا السياق لا يزال موجودا، يتم تصفية الحساب أيضا من قبل تلك السمات. وهذا ما يفسر لماذا نحن السياق الحالي الأيام لا تزال موجودة لكل سطر. للحصول على الأمور واضحة، طالما أننا نقيم هذا التعبير خارج سياق التاريخ، كل شيء على ما يرام كما يظهر الاستعلام داكس التالية عندما يتم تنفيذها من قبل إدارة ستوديو على منظور مبيعات الإنترنت من نموذجنا (باستخدام قاعدة بيانات جدولي مع نفس البيانات ): تقييم (تلخيص (تاريخ التمرين (8216 تاريخ، تاريخ (2003،1،1)، - 5، يوم)، 8217 تاريخ 8220SalesAmountSum8221 سوم (8216Internet ساليسزاليس أمونت))) هنا، خفضت الفترة الزمنية إلى 5 أيام، وأيضا تعيين سيؤدي تاريخ ثابت كالتاريخ الأخير () إلى آخر تاريخ لجدول أبعاد التاريخ الذي لا توجد به بيانات في نموذج البيانات. هنا هو نتيجة الاستعلام: ومع ذلك، بعد تعيين عامل تصفية إلى 2003، سيتم تضمين أي صفوف البيانات خارج 2003 في المجموع. وهذا ما يفسر الملاحظة أعلاه: بدا الأمر وكأننا لا نملك سوى بيانات تبدأ من 1 يناير / كانون الثاني 2003. والآن، نعرف السبب: كان عام 2003 على الفلتر (كما ترون في أول لقطة شاشة لهذا المنصب) و وبالتالي كان حاضرا عند حساب المبلغ. الآن، كل ما علينا فعله هو التخلص من تلك الفلاتر الإضافية لأننا سبق لنا تصفية نتائجنا حسب التاريخ. إن أسهل طريقة للقيام بذلك هي استخدام الدالة كالكت وتطبيق آل () لكل السمات التي نريد إزالة الفلتر لها. كما لدينا بعض من هذه الصفات (السنة والشهر واليوم، أيام الأسبوع،) ونحن نريد لإزالة عامل التصفية من كل منهم ولكن سمة التاريخ، الدالة الاختصار أليكسيبت مفيد جدا هنا. إذا كان لديك خلفية مدس سوف نتساءل لماذا نحن لا تحصل على مشكلة مماثلة عند استخدام ساس في وضع أولاب (بيسم متعددة الأبعاد). والسبب هو أن قاعدة البيانات أولاب لدينا علاقات السمة، وذلك بعد تعيين السمة (مفتاح) التاريخ، يتم تغيير سمات أخرى تلقائيا جدا ونحن لا نحتاج إلى الحرص على هذا (انظر مشاركتي هنا). ولكن في نموذج جدولي ليس لدينا علاقات السمة (ولا حتى سمة المفتاح الحقيقي)، وبالتالي نحن بحاجة للقضاء على المرشحات غير المرغوب فيها من حساباتنا. حتى هنا نحن مع مبلغ المبيعات (30d أفغ): أفيراجكس (تلخيص (ديستنبيريود (8216DateDate، لاستديت (8216DateDate)، - 30، داي)، 8217DateDate 8220SalesAmountSum8221. (سوم (8216Internet ساليسزاليس أمونت)، أليكسيبت (8216Date8217،8217DateDate ))، ساليسامونتوم) وهذا هو الجدول المحوري النهائي لدينا في إكسيل: لتوضيح المتوسط ​​المتحرك، هنا هو نفس مقتطف من البيانات في عرض مخطط (إكسيل): على الرغم من أننا تصفية بياناتنا على 2003 المتوسط ​​المتحرك لأول 29 يوما من عام 2003 يأخذ بشكل صحيح الأيام المقابلة من عام 2002 في الاعتبار. سوف تعترف القيم 30 و 31 يناير من نهجنا الأول كما كانت هذه الأيام الأولى التي لدينا حساب الأول كان لديه كمية كافية من البيانات (كامل 30 يوما).

No comments:

Post a Comment