العناصر النائبة
يمكن للعديد من حقول الإدخال النصية استخدام ES2015 مثل القوالب النصية لاستبدال أجزاء من النص بقيم معينة بشكل ديناميكي. يمكن استخدام العناصر النائبة المحددة مسبقًا داخل تلك القوالب النصية.
على سبيل المثالHello ${params.world}
لاستخدام عنصر نائب داخل عنوان URL (على سبيل المثال، رابط href في أداة النص)، استخدم $$ لتحويل القيمة إلى عنوان URL (على سبيل المثال، $${property.customer_name}).
لا يلزم التهرب باستخدام $$ في حقول النص التي تحتوي عادةً على عنوان URL (على سبيل المثال HREF في عمود عنصر واجهة المستخدم للجدول). يتم التهرب تلقائيًا.
عالمي
تتوفر العناصر النائبة العالمية التالية:
${sessionId}${params.<urlParam>}
يقرأ هذا العنصر البديل عنوان URL في شريط عنوان المتصفح ويبحث عن معلمات URL، على سبيل المثال #/dashboards/details?closeOnBackgroundClick=true${now}
يطبع التاريخ والوقت الحاليين وفقًا للتنسيق المخصص
للغة المتصفح المحدد وفقًا لـ http://momentjs.com/docs/#/displaying/
على سبيل المثال${now.format('DD.MM.YYYY HH:mm')}${today}
يطبع اليوم الحالي وفقًا للتنسيق المخصص
للغة المتصفح وفقًا لـ http://momentjs.com/docs/#/displaying/
على سبيل المثال${today.format('DD.MM.YYYY')}${filterMatrix.<column>}/${filterMatrix.<propertyId>}
يطبع قائمة مفصولة بفواصل للقيم المحددة من مصفوفة التصفية.
على سبيل المثال${filterMatrix.department}-> Development,Management${filterMatrix[76]}-> Genf,Zürich
مع مسافة بعد الفاصلة:${filterMatrix.department.replaceAll(',', ', ')}-> Development, Management${params.widget12345filter}
يطبع قيمة التصفية الحالية للجدول الذي يحمل الرقم التعريفي 12345.${language}،${locale}،${languages}اللغة
المستخدمة حاليًا أو الإعدادات المحلية أو اللغات المتاحة.
الكائن/الصف الحالي
إذا كان كائن SKOOR متاحًا (على سبيل المثال في صف جدول)، فيمكن استخدام العناصر النائبة التالية:
${object.id}${object.deviceId}${object.name}${object.type}${object.subType}${object.state}/${object.state.lightbulb(<size>)}/${object.state.format()}
الحجم بالبكسل${object.properties[<propertyId>]}/${object.properties.<propertyKey>}يمكن طباعة
فهرس خاصية التعداد بدلاً من القيمة باستخدامenumIndex(على سبيل المثال${object.properties.foo.enumIndex})${object.parameters.<parameterKey>}${object.values.<valueKey>}يمكن العثور
على مفاتيح القيمة هنا
من الممكن أيضًا الوصول إلى أعمدة مصدر بيانات خارجي:
${columns[index]}
الفهرس يبدأ من 0${columns.<columnName>}/${columns ['<columnName>']}
معلمة الفاصل الزمني
يمكن تنسيق معلمات الفاصل الزمني باستخدام تنسيقات momentJS (http://momentjs.com/docs/#/displaying/).
${interval(params.<name>).begin.format(<format>)}${interval(params.<name>).end.format(<format>)}
أمثلة:
#/dashboards/123?interval=2018-11${interval(params.interval) → 01.11.2018 - 30.11.2018 (يعتمد الناتج على الإعدادات المحلية الحالية)
${interval(params.interval).begin}-> 01.11.2018 (يعتمد الناتج على الإعدادات المحلية الحالية)${interval(params.interval).end}-> 30.11.2018 (يعتمد الناتج على الإعدادات المحلية الحالية)${interval(params.interval).begin.format('DD.MM.YYYY')}-> 01.11.2018${interval(params.interval).end.format('DD.MM.YYYY')}-> 30.11.2018${interval(params.interval).begin.format('YYYY')}-> 2018
#/dashboards/123?interval=2018-W5${interval(params.interval).begin.format('DD.MM.YYYY')}-> 29.01.2018${interval(params.interval).end.format('DD.MM.YYYY')}-> 04.02.2018
المزيد عن الفترات الزمنية
${interval(params.interval).begin.weekday(0).format('')}-> يحصل على أول يوم من الأسبوع لبداية الفترة${interval(params.interval).begin.subtract(12, 'm').format('')}-> طرح 12 شهرًا من بداية الفترة
القيم الافتراضية
إذا لم يتم تحديد قيمة العنصر النائب (على سبيل المثال، عدم وجود معلمة URL مطلوبة)، يمكن تعيين قيمة افتراضية باستخدام عامل المنطق أو المشغل ||.
أمثلة:
${param.name || 'no name given'}-> لم يتم تحديد اسم${interval(params.interval || '2019-01')}-> 01.11.2018 - 30.11.2018 (يعتمد الناتج على الإعدادات المحلية الحالية)${params.interval || 'BETWEEN(2021,2025)'}→ 2021 - 2025 (إذا كان النطاق مسموحًا به في أداة اختيار التاريخ)$(time(params.time || moment())}-> 22.01.2020 13:31
التعبيرات
في أدوات المخطط والجدول، يمكن حساب القيم باستخدام التعبيرات.
أمثلة:
Table widget: Subtract 25 from a SKOOR object value as ${utils.formatNumber(object.values.Temperature - 25)}Chart widget: Divide two values using their column names as ${utils.formatNumber(columns["Incidents"] / columns["Transactions"], 3)}
-> تقريب النتيجة إلى 3 أرقام بعد العلامة العشرية
تصميم خلايا الجدول حسب المحتوى
يمكن استخدام العناصر النائبة لتعيين سمة الفئة بناءً على قيمة الخلية.
يؤدي هذا إلى تعيين اسم فئة CSS إلى سالب أو موجب اعتمادًا على قيمة الخلية. يمكن بعد ذلك استخدام هذا في نموذج لوحة المعلومات لتنسيق القيمة وفقًا لذلك:


