← يتطلب: DeepSee التحليلات متقدم ⏱ 5 ساعات الدورة 23

بناء لوحات المعلومات

Building Dashboards

🎯 أهداف التعلم

1تصميم Dashboards
2اختيار KPIs
3تصورات بيانية
4دمج DeepSee

01 تصميم Dashboards

لوحات المعلومات توفر نظرة شاملة على البيانات.

Class MyApp.KPI.SalesKPI Extends %DeepSee.KPI {
  XData KPI {
    
  }
}

02 KPIs المتقدمة

إنشاء مؤشرات أداء رئيسية (KPIs) مخصصة.

// KPI مخصص لمراقبة المبيعات
Class MyApp.KPI.SalesKPI Extends %DeepSee.KPI {
  Property CurrentMonth As %Numeric;
  Property LastMonth As %Numeric;
  
  Method OnLoadKPI() As %Status {
    &sql(SELECT SUM(Amount) INTO :current FROM Sales WHERE Month = MONTH(CURRENT_DATE))
    &sql(SELECT SUM(Amount) INTO :last FROM Sales WHERE Month = MONTH(CURRENT_DATE) - 1)
    
    Set ..CurrentMonth = current
    Set ..LastMonth = last
    
    // حساب نسبة النمو
    Set growth = ((current - last) / last) * 100
    Set ..%Data("Growth") = growth
    Set ..%Data("CurrentSales") = current
    Set ..%Data("Target") = 100000
    Set ..%Data("Achievement") = (current / 100000) * 100
    
    Return $$$OK
  }
}
03

بيانات Dashboard الديناميكية

تحديث بيانات Dashboard ديناميكياً باستخدام JavaScript.

// API لتوفير بيانات Dashboard
Class Hospital.Dashboard.API Extends %CSP.REST
{
    XData UrlMap
    {
        
            
            
        
    }
    
    ClassMethod GetMetrics() As %Status
    {
        Set %response.ContentType = "application/json"
        
        Set metrics = {}
        Set metrics.revenue = ..GetRevenue()
        Set metrics.patients = ..GetPatientCount()
        Set metrics.satisfaction = ..GetSatisfaction()
        Set metrics.occupancy = ..GetOccupancy()
        
        Write metrics.%ToJSON()
        Quit $$$OK
    }
    
    ClassMethod GetKPI(name As %String) As %Status
    {
        Set %response.ContentType = "application/json"
        
        Set kpi = {}
        If name = "revenue" {
            Set kpi.value = ..GetRevenue()
            Set kpi.target = 1000000
            Set kpi.unit = "ريال"
        } ElseIf name = "satisfaction" {
            Set kpi.value = ..GetSatisfaction()
            Set kpi.target = 4.5
            Set kpi.unit = "/5"
        }
        
        Write kpi.%ToJSON()
        Quit $$$OK
    }
}

📝 اختبار التحقق

1. ما هو الهدف من Dashboard؟

عرض معلومات شاملة لاتخاذ قرارات سريعة

ما هو KPI؟

KPI (Key Performance Indicator) هو مؤشر أداء رئيسي يقيس مدى تحقيق الأهداف

ما هو أفضل نظام ألوان للـ Dashboards؟
💡 الشرح

الألوان المتناسقة مع تباين كافٍ تضمن وضوح المعلومات وسهولة القراءة

💡 النقاط الرئيسية

  • تصميم Dashboard يتطلب فهماً لاحتياجات المستخدم
  • KPIs تقيس مدى نجاح العمليات
  • DeepSee يوفر أدوات بناء Dashboards مدمجة
  • اتبع مبدأ البساطة في التصميم
  • اجعل البيانات قابلة للتنفيذ (Actionable)