التعرف على السيناريوهات

السيناريوهات عبارة عن مناطق عمل خاصة يستطيع المستخدمون فيها وضع نماذج لمختلف الافتراضات في بيانات Essbase ورؤية تأثير ذلك على النتائج المجمعة، بدون التأثير على البيانات الموجودة.

وكل سيناريو هو شريحة ظاهرية لمكعب يستطيع فيها مستخدم أو أكثر نمذجة البيانات ثم تثبيت التغييرات أو تجاهلها.

تشتمل المكعبات التي تدعم السيناريوهات على بُعد خاص يُسمّى صندوق الحماية. بُعد صندوق الحماية غير منسق، ويشتمل على عضو واحد بالاسم Base وما يصل إلى 1000 من الأعضاء الآخرين، ويشار إليهم عادة بأعضاء صندوق الحماية. كل الأعضاء في بُعد صندوق الحماية هي من المستوى 0. يُطلق على أعضاء صندوق الحماية أسماء sb0 وsb1 وما يليها على النمط نفسه. وكل صندوق حماية هو بمثابة مساحة عمل منفصلة، فيما يشتمل العضو Base على البيانات المضمنة حاليًا في المكعب. كل سيناريو يرتبط بعضو مربع حماية واحد فقط.

Sandbox
        Base
        sb0
        sb1
        sb2

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

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

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

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

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

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

يسري التأمين والمرشحات على بُعد صندوق الحماية.

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

عرض بيانات السيناريو والتعامل معها

هناك نقطتان للاطلاع على بيانات السيناريو والتعامل معها في Smart View.

يمكنك استخدام واجهة Essbase على الويب لتشغيل سيناريو في Smart View، أو يمكنك استخدام اتصال خاص في Smart View والتعامل مع بيانات السيناريو على هذا النحو.

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

عرض بيانات السيناريو والتعامل معها من خلال واجهة Essbase على الويب

يمكنك تشغيل Smart View من خلال سيناريو في واجهة الويب.

عند فعل ذلك، ونظرًا لدخولك من خلال السيناريو، فلا يمكنك العمل سوى عبر Smart View في عضو صندوق حماية المقترن بالسيناريو الذي دخلت منه. وعضو صندوق الحماية ضمني، ولن تراه في شبكة Smart View.

  1. في Essbase انقر على السيناريوهات.

  2. انقر على أيقونة Excel صورة لأيقونة Excel. بجوار السيناريو الذي تريد الاطلاع عليه.

  3. حدد فتح الملف .

  4. يؤدي ذلك إلى تشغيل Excel مع اتصال Smart View بالسيناريو.

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

يمكنك تشغيل سيناريو في Smart View من خلال واجهة الويب فقط بنظام Windows باستخدام متصفح Firefox أو Internet Explorer أو Chrome.

عرض بيانات السيناريو والتعامل معها من خلال اتصال Smart View خاص

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

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

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

  1. افتح Excel.

  2. أنشئ اتصالاً خاصًا بالمكعب الممكّن به السيناريو.

  3. أجرِ تحليلاً خاصًا.

  4. تنقل في بُعد صندوق الحماية لعرض أعضاء صندوق الحماية.

أمثلة

هذه شبكة Smart View تشتمل على عضو الأساس Base وعضو صندوق حماية. لم يتم تحديث قيم صندوق الحماية، لذا فهي تعرض القيم الأساسية Base. وهذه القيمة مخزنة في العضو الأساسي Base فقط، وليس في أعضاء صندوق الحماية:


صورة شبكة Smart View تُظهر عضوًا أساسيًا وعضو صندوق حماية واحدًا.

تُخزَّن قيمة صندوق الحماية التي تم تغييرها أدناه، 500، في عضو صندوق حماية. بينما تُخزَّن قيمة صندوق الحماية المتبقية غير المُحدّثة، 271، في العضو الأساسي Base:


صورة شبكة Smart View تُظهر عضوًا أساسيًا وعضو صندوق حماية مع تغيير القيمة في عضو صندوق الحماية.

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


صورة لشبكة Smart View تشتمل على عدة أعضاء صندوق حماية.

حول العمليات الحسابية للسيناريوهات

بشكل افتراضي، يقوم Essbase بحساب كل الأعضاء في بُعد ما، ما لم يتم استخدام جملة تثبيت fix statement ليقتصر نطاق العملية الحسابية على عضو أو مجموعة بعينها من الأعضاء في البُعد.

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

عند تحديد أعضاء غير أساسيين من صندوق الحماية في جملة fix، يتم استبعاد العضو الأساسي من العملية الحسابية ما لم يكن مضافًا بشكل واضح في جملة fix.

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

  • عندما تركز العملية الحسابية على أعضاء صندوق حماية بعينه.

  • عند تنفيذ العملية الحسابية في ورقة تم تشغيلها من سيناريو في واجهة الويب (يُطلق عليها ورقة يتم تشغيلها من السيناريو). يرجى الاطلاع على عرض بيانات السيناريو والتعامل معها من خلال واجهة Essbase على الويب.

  • عند تحديد قيمة خلية في صندوق الحماية في ورقة تم فتحها عبر اتصال خاص في Smart View وتشغيل اسكربت عملية حسابية.

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

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

يمكنك حساب أعضاء صندوق الحماية باستخدام اسكربتات MaxL موجودة مسبقًا باستخدام اسم متغير وقت التشغيل المحجوز: ess_sandbox_mbr.

يمكن تنفيذ هذه الجملة (لصندوق الحماية) في أي اسكربت MaxL بدون تكوين أي متغير استبدال على الخادم أو التطبيق.

execute calculation appname.dbname.calcname with runtimesubvars ‘ess_sandbox_mbr=sb0;’;

حول عمليات تحميل البيانات إلى المكعبات التي تدعم السيناريوهات

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

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

حول عمليات تصدير البيانات من المكعبات التي تدعم السيناريوهات

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

تجب مراعاة الاعتبارات التالية عند تصدير البيانات من المكعبات التي تدعم السيناريو:

  • إذا كنت تستخدم صفحة الوظائف في واجهة الويب لتصدير البيانات من مكعب يدعم السيناريو، يشتمل ملف البيانات الناتج على كل الأعضاء الثلاثة من بُعد CellProperties وهي (EssValue وEssStatus وEssTID). ولا تحذف أيًّا من هذه الأعمدة.
  • يشتمل ملف البيانات من عملية التصدير على بيانات مخزنة فعليًا في المكعب، بناء على تحديدك: بيانات المستوى صفر أو كل البيانات أو بيانات المدخلات.
  • إذا تم تغيير القيم في صناديق الحماية، فستظهر قيم صناديق الحماية في عملية التصدير.
  • ومن أجل تحميل البيانات المصدرة إلى صناديق الحماية، يجب أن تكون قيم جميع أعضاء CellProperties الثلاثة (EssValue وEssStatus وEssTID) في ملف البيانات.

حول المقاطع الشفافة والمستنسخة في المكعبات التي تدعم السيناريوهات

تعمل المقاطع الشفافة والمستنسخة على ربط الشرائح من مكعبي Essbase معًا. ويحدث ذلك عندما يكون أحد المكعبين أو كلاهما لا يدعمان السيناريوهات.

تُستخدَم صناديق الحماية عند تكوين السيناريوهات. ولكن، لا يوجد ضمان بتخطيط السيناريوهات الموجودة بالمكعبات المقسَّمة إلى نفس عدد صناديق الحماية. فقد لا يكون المستخدم نفسه مشتركًا في صناديق الحماية في عدة مكعبات. ويؤدي استخدام السيناريوهات إلى فرض القيود التالية:

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

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

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

يرجى الاطلاع على استيعاب المقاطع الشفافة والمستنسخة.

حول الدالة XREF/XWRITE في المكعبات التي تدعم السيناريوهات

في المكعبات التي تدعم السيناريوهات، يمكنك استخدام الدالتين XREF وXWRITE في الإشارة إلى البيانات أو كتابتها في مكعب آخر.

تقوم الدالة XREF بالاستعلام عن مكعب بعيد من مكعب محلي (المكعب الذي يشتمل على جملة XREF). إذا كان المكعب البعيد يدعم السيناريوهات، لا تقوم الدالة XREF إلا بجمع البيانات الأساسية من المكعب البعيد.

تقوم الدالة XWRITE بالاستعلام عن مكعب بعيد من مكعب محلي (المكعب الذي يشتمل على جملة XWRITE). وبما أن الدالة XWRITE تكتب البيانات في المكعب البعيد، فإن نطاق جملة XWRITE مهم.

بالنسبة إلى التوليفات المختلفة من المكعبات التي تدعم السيناريوهات والمكعبات التي لا تدعم السيناريوهات، تتصرف دالة XWRITE بالطرق التالية:

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

عندما يشير مكعب محلي لا يدعم السيناريوهات إلى مكعب بعيد يدعم السيناريوهات، تقوم دالة XWRITE دائمًا بتحديث العضو الأساسي للمكعب البعيد.

يرجى الاطلاع على استيعاب @XREF/@XWRITE.

حول مسار المراجعة في المكعبات التي تدعم السيناريوهات

تتبع مسارات مراجعة البيانات التحديثات التي تمت على البيانات في مكعب. للعمل باستخدام مسار المراجعة في المكعبات التي تدعم السيناريوهات، يجب فهم عوامل تعريف قيم البيانات "القديمة" و"الجديدة"، ونقطتي الإدخال المختلفتين للعمل مع بيانات صندوق الحماية في Smart View.

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

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

لا يحتوي صندوق الحماية الجديد أو غير المستخدم في مكعب يدعم السيناريو على قيم مخزنة. تعكس القيم الظاهرة للمستخدمين مثل القيم المعروضة في جدول بيانات القيم المخزنة في القاعدة.

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

عندما تقوم بتحديث القيم في صندوق حماية، يتم تخزين هذه القيم في صندوق الحماية (وليس في القاعدة). لأغراض مسار مراجعة البيانات، تعد هذه القيم "جديدة".

إذا قمت لاحقًا بتحديث هذه القيم "الجديدة"، فسيتتبع مسار المراجعة أحدث التغييرات. وسيتم التعامل مع القيم السابقة باعتبارها "قديمة" وتعد القيم المحدثة "جديدة".

بإيجاز،
  • القيم القديمة هي القيم الأساسية التي تنعكس في صندوق حماية جديد.
  • في البداية، تكون القيم الجديدة هي القيم المحدثة والمخزنة في صندوق الحماية.
  • وبالتالي، فإن القيم المحدثة هي القيم الجديدة، والقيم التي تم استبدالها هي القديمة.
هناك نقطتا إدخال محتملتان للتعامل مع البيانات في Smart View:
  • عند فتح Excel وإنشاء اتصال خاص بالمكعب دون أن تضطر إلى بدء العمل من واجهة Essbase على الويب.
  • عند تشغيل Smart View من خلال سيناريو في واجهة الويب.

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

عند تشغيل Smart View من سيناريو في واجهة Essbase على الويب، يعمل مسار المراجعة بشكل مختلف.
  • عند تصدير السجلات إلى ورقة عمل، لا تعرض ورقة العمل عضو صندوق الحماية الضمني.
  • عند تشغيل ورقة عمل جديدة باستخدام زر مخصص أسفل جزء مسار المراجعة، لا تعرض ورقة العمل الجديدة عضو صندوق الحماية الضمني وتؤثر أي تغييرات في ورقة العمل هذه على قيم البيانات لعضو صندوق الحماية هذا.

حول قيود السيناريوهات

تسري هذه القيود على أبعاد السيناريوهات وصناديق الحماية.

  • لا يتم دعم السيناريوهات في مكعبات التخزين التجميعي.

  • لا يتم دعم أمر العملية الحسابية DATAEXPORT في أعضاء صندوق الحماية. وهو مدعوم فقط في العضو الأساسي Base.

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

  • متغيرات الاستبدال في وقت التشغيل مع معلمة svLaunch غير مدعومة عند تشغيل السيناريو في Smart View من واجهة Essbase على الويب. يرجى الاطلاع على عرض بيانات السيناريو والتعامل معها من خلال واجهة Essbase على الويب.

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

يوجد عدد محدد من الدوال غير المدعومة في الوضع المختلط، وهي تُستخدَم مع المكعبات التي تدعم السيناريوهات. يرجى الاطلاع على الدوال المدعومة في الوضع المختلط.