Esempio n. 1
0
 protected virtual void UpdatePieChart(controls_reports_PercentPieChart pieChart, DataTable dataTable, int columnIndex)
 {
     bool timeValues = false;
     decimal columTotal = GetColumnTotal(columnIndex);
     List<float> data = new List<float>();
     List<string> colors = new List<string>();
     List<string> names = new List<string>();
     for (int i = 0; i < dataTable.Rows.Count; i++)
     {
         if (dataTable.Rows[i][0].ToString().ToLower() != "total")
         {
             float itemPercent = EkFunctions.GetPercent(
                                     EkFunctions.ReadDecimalValue(dataTable.Rows[i][columnIndex])
                                     , columTotal
                                 );
             if (itemPercent > 1)
             {
                 timeValues = true;
                 break;
             }
             else
             {
                 data.Add(itemPercent);
                 colors.Add(GetReportItemColor(i));
                 names.Add(dataTable.Rows[i][0].ToString());
             }
         }
     }
     pieChart.BriefDescription = GetMessage("lbl contribution to total");
     pieChart.LoadData(data);
     pieChart.LoadColors(colors);
     pieChart.LoadNames(names);
 }
Esempio n. 2
0
    protected virtual void UpdatePieChart(controls_reports_PercentPieChart pieChart, AnalyticsReportData report)
    {
        List<float> data = new List<float>();
        List<string> colors = new List<string>();
        List<string> names = new List<string>();
        for (int i = 0; i < report.ReportItems.Count; i++)
        {
            float itemPercent = 0;
            switch (_reportDisplayData)
            {
                case ReportDisplayData.SiteData:
                case ReportDisplayData.SiteMetricData:
                case ReportDisplayData.VisitsData:
                    itemPercent = EkFunctions.GetPercent(report.ReportItems[i].Visits, report.TotalVisits);
                    break;
                case ReportDisplayData.PageData:
                case ReportDisplayData.SiteContentData:
                case ReportDisplayData.PageVisitorsData:
                    itemPercent = EkFunctions.GetPercent(report.ReportItems[i].PageViews, report.TotalPageViews);
                    break;
                case ReportDisplayData.LandingPageData:
                    itemPercent = EkFunctions.GetPercent(report.ReportItems[i].Entrances, report.TotalEntrances);
                    break;
                case ReportDisplayData.ExitPageData:
                    itemPercent = EkFunctions.GetPercent(report.ReportItems[i].Exits, report.TotalExits);
                    break;
                case ReportDisplayData.VisitorsData:
                case ReportDisplayData.InstancesData:
                case ReportDisplayData.MobileData:
                default:
                    if (this.htmReportSummary != null)
                    {
                        this.htmReportSummary.InnerText = "This report does not support the graph only type.";
                        break;
                    }
                    else
                    {
                        throw new ArgumentOutOfRangeException("_reportDisplayData", "Unknown ReportDisplayData: " + _reportDisplayData);
                    }
            }
            data.Add(itemPercent);
            colors.Add(GetReportItemColor(i));
            if (this.ProviderSegments != null && this.ProviderSegments.Count > 1)
            {
                names.Add(_segReport[i * (this.ProviderSegments.Count + 1)].Name);
            }
            else
            {
                names.Add(report.ReportItems[i].Name);
            }
        }

        pieChart.BriefDescription = GetMessage("lbl contribution to total");
        pieChart.LoadData(data);
        pieChart.LoadColors(colors);
        pieChart.LoadNames(names);
    }