Exemple #1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                Sesion Sesion = new Sesion();
                Sesion = (Sesion)Session["Sesion" + Session.SessionID];
                List <CobSaldosNiveles> Lista = new List <CobSaldosNiveles>();
                PieSeriesItem           si;
                CN_ClientesMayorAdeudo.RegresaCuentasPorPagadas(Sesion.Fecha_Cierre, Sesion.Dias_Revision, Sesion.Id_Cte, Sesion.Emp_Cnx, ref Lista);
                int   i = 1;
                float carteratotal = 0, varporcentaje = 0;

                DonutSeries ds = new DonutSeries();

                foreach (CobSaldosNiveles saldo in Lista)
                {
                    carteratotal = carteratotal + saldo.Restante;
                }

                foreach (CobSaldosNiveles saldo in Lista)
                {
                    datos         = saldo;
                    varporcentaje = (saldo.Restante * 100) / carteratotal;
                    si            = new PieSeriesItem(Math.Round((decimal)saldo.Restante, 3), Regresacolor(saldo.Cdi), (saldo.Cdi + " - " + saldo.Cd_Nombre) + ' ' + Math.Round(varporcentaje, 1).ToString() + " %");
                    ds.SeriesItems.Add(si);
                    i++;
                }

                Random randObj = new Random(DateTime.Now.Millisecond);
                HF_Cve.Value = randObj.Next().ToString();

                RcGrafica.ChartTitle.Text = Sesion.Cte_Nombre + " Pendiente por cobrar   " + carteratotal.ToString("C2");

                ds.LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.PieLabelsPosition.Column;

                ds.LabelsAppearance.DataFormatString   = "{0:N2}";
                ds.TooltipsAppearance.Visible          = true;
                ds.TooltipsAppearance.DataFormatString = "{0}";

                RcGrafica.PlotArea.Series.Add(ds);
                RcGrafica.DataBind();
            }

            catch (Exception ex)
            {
                throw ex;
            }
        }
Exemple #2
0
    //protected void BarChartInit()
    //{
    //    barDivChart.Visible = true;
    //    List<ItemStorageVO> itemStorageList = dh.GetStorage();
    //    List<ItemVO> itemList = dh.GetItems();
    //    List<Object> dataSource = new List<object>();
    //    foreach (ItemVO item in itemList)
    //    {
    //        item.inventories = itemStorageList.FindAll(delegate(ItemStorageVO isvo) { return isvo.Item_ID.Equals(item.Item_ID) && isvo.Quantity < 0; }).Sum(delegate(ItemStorageVO isvo) { return isvo.Quantity; }) * -1;
    //        item.intos = itemStorageList.FindAll(delegate(ItemStorageVO isvo) { return isvo.Item_ID.Equals(item.Item_ID) && isvo.Quantity > 0; }).Sum(delegate(ItemStorageVO isvo) { return isvo.Quantity; });

    //        dataSource.Add(new { Value1 = item.intos, Value2 = item.inventories, Item = item.Item_Name });
    //    }

    //    BarChart.DataSource = dataSource;
    //    BarChart.DataBind();
    //}

    protected void InitPage()
    {
        pieChart.Visible = true;
        List <DepartmentVO> deptList  = dh.GetDepartmentStaffCount(account.Company_ID);
        PieSeries           pieSeries = (PieSeries)PieChart1.PlotArea.Series[0];

        int i = 0;

        foreach (DepartmentVO depart in deptList)
        {
            PieSeriesItem psItem = new PieSeriesItem();
            psItem.Name            = depart.Department_Name;
            psItem.Y               = depart.Staff_Count;
            psItem.BackgroundColor = GetColor(i);
            psItem.Exploded        = false;
            pieSeries.SeriesItems.Add(psItem);
            i++;
        }
    }
        protected void Page_Load(object sender, EventArgs e)
        {
            double PorPagar = 0, varPorPagar = 0, Pagado = 0, varPagado = 0;

            try
            {
                Sesion Sesion = new Sesion();
                Sesion            = (Sesion)Session["Sesion" + Session.SessionID];
                Sesion.Id_Cte     = int.Parse(Request.QueryString["Id_Cte"]);
                Sesion.Cte_Nombre = Request.QueryString["Cte_Nombre"];
                CN_ClientesMayorAdeudo.RegresaAdeudoCliente(Sesion.Fecha_Cierre, Sesion.Fecha_Corte, Sesion.Dias_Revision, Sesion.Id_Cte, Sesion.Emp_Cnx, ref PorPagar, ref Pagado);

                double total = PorPagar + Pagado;
                varPorPagar = (PorPagar * 100) / total;
                varPagado   = (Pagado * 100) / total;

                PieSeriesItem s1 = new PieSeriesItem(Math.Round((decimal)PorPagar, 3), System.Drawing.Color.Red, "Por Cobrar " + Math.Round(varPorPagar, 1).ToString() + "%", false);
                PieSeriesItem s2 = new PieSeriesItem(Math.Round((decimal)Pagado, 3), System.Drawing.Color.Green, "Cobrado " + Math.Round(varPagado, 1).ToString() + "%", true);

                DonutSeries ds = new DonutSeries();
                ds.SeriesItems.Add(s1);
                ds.SeriesItems.Add(s2);

                ds.LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.PieLabelsPosition.Circle;
                RcGrafica.ChartTitle.Text    = Sesion.Cte_Nombre + "    " + total.ToString("C2");

                ds.LabelsAppearance.DataFormatString   = "{0:N2}";
                ds.TooltipsAppearance.Visible          = true;
                ds.TooltipsAppearance.DataFormatString = "{0:N2}";

                RcGrafica.PlotArea.Series.Add(ds);
                RcGrafica.DataBind();
            }

            catch (Exception ex)
            {
                throw ex;
            }
        }
Exemple #4
0
    public void CreateChart(Panel BasePanel, ChartType chartType, DataTable dt, string[] ColorName, int yMaxValue = 100, int gridSetps = 20, bool isGroup = false)
    {
        switch (chartType)
        {
        case ChartType.BarChartHorizontal:
            radChart.Skin   = "Bootstrap";
            radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default;
            radChart.PlotArea.YAxis.MaxValue = yMaxValue;
            //radChart.PlotArea.XAxis.Step = 30;
            radChart.PlotArea.YAxis.Step = 20;

            BarSeries[] CBS = new BarSeries[dt.Columns.Count - 1];
            for (int i = 0; i < dt.Columns.Count - 1; i++)
            {
                CBS[i]      = new BarSeries();
                CBS[i].Name = dt.Columns[i + 1].ColumnName;
                if (isGroup)
                {
                    CBS[i].GroupName = " ";
                }
                CBS[i].LabelsAppearance.Visible  = true;
                CBS[i].TooltipsAppearance.Color  = System.Drawing.Color.White;
                CBS[i].LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.BarColumnLabelsPosition.OutsideEnd;
            }

            foreach (DataRow row in dt.Rows)
            {
                for (int i = 0; i < dt.Columns.Count - 1; i++)
                {
                    CBS[i].SeriesItems.Add(new CategorySeriesItem((decimal)row[i + 1]));
                }
                radChart.PlotArea.XAxis.Items.Add(row[0].ToString());
            }

            foreach (BarSeries item in CBS)
            {
                radChart.PlotArea.Series.Add(item);
            }
            break;

        case ChartType.BarChartHorizontalDA:
            radChart.Skin   = "Bootstrap";
            radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default;

            BarSeries[] BS = new BarSeries[dt.Columns.Count - 1];
            for (int i = 0; i < dt.Columns.Count - 1; i++)
            {
                BS[i]      = new BarSeries();
                BS[i].Name = dt.Columns[i + 1].ColumnName;
                BS[i].LabelsAppearance.Visible  = true;
                BS[i].TooltipsAppearance.Color  = System.Drawing.Color.White;
                BS[i].LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.BarColumnLabelsPosition.OutsideEnd;
            }

            int j = 0;
            foreach (DataRow row in dt.Rows)
            {
                for (int i = 0; i < dt.Columns.Count - 1; i++)
                {
                    BS[i].SeriesItems.Add(new CategorySeriesItem((decimal)row[i + 1], Color.FromName(ColorName[j].ToString())));
                    radChart.PlotArea.XAxis.Items.Add(row[0].ToString());
                }
                j++;
            }

            foreach (BarSeries item in BS)
            {
                radChart.PlotArea.Series.Add(item);
            }
            break;

        case ChartType.BarChartVartical:
            radChart.Skin   = "Bootstrap";
            radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default;
            radChart.PlotArea.YAxis.MaxValue = yMaxValue;
            radChart.PlotArea.XAxis.Step     = gridSetps;
            radChart.PlotArea.YAxis.Step     = gridSetps;

            radChart.PlotArea.XAxis.LabelsAppearance.RotationAngle = 0;    //-45;

            ColumnSeries[] CCS = new ColumnSeries[dt.Columns.Count - 1];
            for (int i = 0; i < dt.Columns.Count - 1; i++)
            {
                CCS[i]      = new ColumnSeries();
                CCS[i].Name = dt.Columns[i + 1].ColumnName;
                if (isGroup)
                {
                    CCS[i].GroupName = " ";
                }
                CCS[i].LabelsAppearance.Visible  = true;
                CCS[i].TooltipsAppearance.Color  = System.Drawing.Color.White;
                CCS[i].LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.BarColumnLabelsPosition.OutsideEnd;
            }

            foreach (DataRow row in dt.Rows)
            {
                for (int i = 0; i < dt.Columns.Count - 1; i++)
                {
                    CCS[i].SeriesItems.Add(new CategorySeriesItem((decimal)row[i + 1]));
                }
                radChart.PlotArea.XAxis.Items.Add(row[0].ToString());
            }

            foreach (ColumnSeries item in CCS)
            {
                radChart.PlotArea.Series.Add(item);
            }

            break;

        case ChartType.PieChart:
            radChart.Skin   = "Silk";  //"Bootstrap";
            radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default;

            PieSeries PS = new PieSeries();
            PS.Name       = "PieSeries1";
            PS.StartAngle = 90;
            PS.LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.PieAndDonutLabelsPosition.Center;
            PS.LabelsAppearance.Visible  = true;
            PS.TooltipsAppearance.Color  = System.Drawing.Color.White;

            int  iX         = 0;
            bool IsExploded = true;
            foreach (DataRow row in dt.Rows)
            {
                PieSeriesItem psi = new PieSeriesItem();
                psi.Name            = row[0].ToString();
                psi.Y               = (decimal)row[1];
                psi.BackgroundColor = Color.FromName(ColorName[iX].ToString());
                if (IsExploded)
                {
                    psi.Exploded = IsExploded; IsExploded = false;
                }
                PS.SeriesItems.Add(psi);
                iX++;
            }

            radChart.PlotArea.Series.Add(PS);
            break;

        case ChartType.LineChart:
            radChart.Skin   = "Bootstrap";
            radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default;

            LineSeries[] CLS = new LineSeries[dt.Columns.Count - 1];
            for (int i = 0; i < dt.Columns.Count - 1; i++)
            {
                CLS[i]      = new LineSeries();
                CLS[i].Name = dt.Columns[i + 1].ColumnName;
                CLS[i].LabelsAppearance.Visible  = true;
                CLS[i].TooltipsAppearance.Color  = System.Drawing.Color.White;
                CLS[i].LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.LineAndScatterLabelsPosition.Above;
            }

            foreach (DataRow row in dt.Rows)
            {
                for (int i = 0; i < dt.Columns.Count - 1; i++)
                {
                    CLS[i].SeriesItems.Add(new CategorySeriesItem((decimal)row[i + 1]));
                }
                radChart.PlotArea.XAxis.Items.Add(row[0].ToString());
            }

            foreach (LineSeries item in CLS)
            {
                radChart.PlotArea.Series.Add(item);
            }
            break;

        case ChartType.AreaChart:
            radChart.Skin   = "Bootstrap";
            radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default;
            AreaSeries[] CAS = new AreaSeries[dt.Columns.Count - 1];
            for (int i = 0; i < dt.Columns.Count - 1; i++)
            {
                CAS[i]      = new AreaSeries();
                CAS[i].Name = dt.Columns[i + 1].ColumnName;
                CAS[i].LabelsAppearance.Visible             = false;
                CAS[i].TooltipsAppearance.Color             = System.Drawing.Color.White;
                CAS[i].Appearance.FillStyle.BackgroundColor = Color.FromName(ColorName[i]);
            }

            foreach (DataRow row in dt.Rows)
            {
                for (int i = 0; i < dt.Columns.Count - 1; i++)
                {
                    CAS[i].SeriesItems.Add(new CategorySeriesItem((decimal)row[i + 1]));
                }
                radChart.PlotArea.XAxis.Items.Add(row[0].ToString());
            }
            foreach (AreaSeries item in CAS)
            {
                radChart.PlotArea.Series.Add(item);
            }
            break;

        default:
            break;
        }
        BasePanel.Controls.Add(radChart);
    }
    public void CreateChart(Panel BasePanel, ChartType chartType, DataTable dt, string[] ColorName)
    {
        switch (chartType)
        {
            case ChartType.BarChartHorizontal:
                radChart.Skin = "Silk";
                radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default;

                BarSeries[] CBS = new BarSeries[dt.Columns.Count - 1];
                for (int i = 0; i < dt.Columns.Count - 1 ; i++)
                {
                    CBS[i] = new BarSeries();
                    CBS[i].Name = dt.Columns[i + 1].ColumnName;
                    CBS[i].LabelsAppearance.Visible = true;
                    CBS[i].TooltipsAppearance.Color = System.Drawing.Color.White;
                    CBS[i].LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.BarColumnLabelsPosition.OutsideEnd;

                }

                foreach (DataRow row in dt.Rows)
                {
                    for (int i = 0; i < dt.Columns.Count - 1; i++)
                    {
                        CBS[i].SeriesItems.Add(new CategorySeriesItem((Int64)row[i + 1]));
                        radChart.PlotArea.XAxis.Items.Add(row[0].ToString());

                    }
                }

                foreach (BarSeries item in CBS)
                {
                    radChart.PlotArea.Series.Add(item);
                }
                break;
            case ChartType.BarChartHorizontalDA:
                radChart.Skin = "Silk";
                radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default;

                BarSeries[] BS = new BarSeries[dt.Columns.Count - 1];
                for (int i = 0; i < dt.Columns.Count - 1; i++)
                {
                    BS[i] = new BarSeries();
                    BS[i].Name = dt.Columns[i + 1].ColumnName;
                    BS[i].LabelsAppearance.Visible = true;
                    BS[i].TooltipsAppearance.Color = System.Drawing.Color.White;
                    BS[i].LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.BarColumnLabelsPosition.OutsideEnd;

                }

                int j = 0;
                foreach (DataRow row in dt.Rows)
                {
                    for (int i = 0; i < dt.Columns.Count - 1; i++)
                    {
                        BS[i].SeriesItems.Add(new CategorySeriesItem((Int64)row[i + 1]));
                        //BS[i].Appearance.FillStyle.BackgroundColor = Color.FromName(ColorName[j]);
                        radChart.PlotArea.XAxis.Items.Add(row[0].ToString());

                    }
                    j++;

                }
                //for (int i = 0; i < ColorName.Length - 1; i++)
                //{
                //    BS[0].
                //    //BS[0].Appearance.FillStyle.BackgroundColor = Color.FromName(color);
                //}
                //for (int i = 0; i < ColorName.Length - 1; i++)
                //{
                //    CBS..Appearance.FillStyle.BackgroundColor = Color.FromName(ColorName[i].ToString());
                //}

                foreach (BarSeries item in BS)
                {
                    radChart.PlotArea.Series.Add(item);
                }
                break;
            case ChartType.BarChartVartical:
                radChart.Skin = "Silk";
                radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default;
                //radChart.PlotArea.XAxis.LabelsAppearance.RotationAngle = -90;

                ColumnSeries[] CCS = new ColumnSeries[dt.Columns.Count - 1];
                for (int i = 0; i < dt.Columns.Count - 1 ; i++)
                {
                    CCS[i] = new ColumnSeries();
                    CCS[i].Name = dt.Columns[i + 1].ColumnName;
                    CCS[i].LabelsAppearance.Visible = true;
                    CCS[i].TooltipsAppearance.Color = System.Drawing.Color.White;
                    CCS[i].LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.BarColumnLabelsPosition.OutsideEnd;
                }

                foreach (DataRow row in dt.Rows)
                {
                    for (int i = 0; i < dt.Columns.Count - 1; i++) CCS[i].SeriesItems.Add(new CategorySeriesItem((Int64)row[i + 1]));
                    radChart.PlotArea.XAxis.Items.Add(row[0].ToString());
                }

                foreach (ColumnSeries item in CCS)
                {
                    radChart.PlotArea.Series.Add(item);

                }

                    break;

            case ChartType.PieChart:
                radChart.Skin = "Silk";
                radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default;

                PieSeries PS = new PieSeries();
                PS.Name = "PieSeries1";
                PS.StartAngle = 90;
                PS.LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.PieAndDonutLabelsPosition.Center;
                PS.LabelsAppearance.Visible = true;
                PS.TooltipsAppearance.Color = System.Drawing.Color.White;

                bool IsExploded = true;
                foreach (DataRow row in dt.Rows)
                {
                    PieSeriesItem psi = new PieSeriesItem();
                    psi.Name = row[0].ToString();
                    psi.Y = (Int64)row[1];
                    if (IsExploded) { psi.Exploded = IsExploded; IsExploded = false; }
                    PS.SeriesItems.Add(psi);
                }

                radChart.PlotArea.Series.Add(PS);
                break;
            case ChartType.LineChart:
                radChart.Skin = "Silk";
                radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default;

                LineSeries[] CLS = new LineSeries[dt.Columns.Count - 1];
                for (int i = 0; i < dt.Columns.Count - 1 ; i++)
                {
                    CLS[i] = new LineSeries();
                    CLS[i].Name = dt.Columns[i + 1].ColumnName;
                    CLS[i].LabelsAppearance.Visible = true;
                    CLS[i].TooltipsAppearance.Color = System.Drawing.Color.White;
                    CLS[i].LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.LineAndScatterLabelsPosition.Above;
                }

                foreach (DataRow row in dt.Rows)
                {
                    for (int i = 0; i < dt.Columns.Count - 1; i++) CLS[i].SeriesItems.Add(new CategorySeriesItem((Int64)row[i + 1]));
                    radChart.PlotArea.XAxis.Items.Add(row[0].ToString());
                }

                foreach (LineSeries item in CLS) radChart.PlotArea.Series.Add(item);
                break;
            case ChartType.AreaChart:
                AreaSeries[] CAS = new AreaSeries[dt.Columns.Count - 1];
                for (int i = 0; i < dt.Columns.Count - 1 ; i++)
                {
                    CAS[i] = new AreaSeries();
                    CAS[i].Name = dt.Columns[i + 1].ColumnName;
                    CAS[i].LabelsAppearance.Visible = false;
                    CAS[i].TooltipsAppearance.Color = System.Drawing.Color.White;
                    CAS[i].Appearance.FillStyle.BackgroundColor = Color.FromName(ColorName[i]);
                }

                foreach (DataRow row in dt.Rows)
                {
                    for (int i = 0; i < dt.Columns.Count - 1; i++) CAS[i].SeriesItems.Add(new CategorySeriesItem((Int64)row[i + 1]));
                    radChart.PlotArea.XAxis.Items.Add(row[0].ToString());
                }
                foreach (AreaSeries item in CAS) radChart.PlotArea.Series.Add(item);
                break;
            default:
                break;
        }
        BasePanel.Controls.Add(radChart);
    }
        private void CrearPie(List <USP_SEL_LetrasSinCanjeV2Result> lstletras)
        {
            decimal Total     = (decimal)lstletras.Sum(x => x.Saldo);
            var     lstplazos = from p in lstletras
                                group p by new { p.TipoPlazo } into g
                    select new
            {
                TipoPlazo = g.Key.TipoPlazo,
                Cantidad  = g.Sum(x => x.Saldo)
            };

            RadHtmlChart scatterChart = new RadHtmlChart();

            scatterChart.ID     = "ScatterChart";
            scatterChart.Width  = Unit.Pixel(680);
            scatterChart.Height = Unit.Pixel(500);

            scatterChart.Legend.Appearance.Position = Telerik.Web.UI.HtmlChart.ChartLegendPosition.Bottom;

            scatterChart.PlotArea.XAxis.TitleAppearance.Text = "Plazos";
            scatterChart.PlotArea.YAxis.TitleAppearance.Text = "Plazos";

            //ScatterLineSeries theoreticalData = new ScatterLineSeries();
            //theoreticalData.Name = "Theoretical Data";
            //theoreticalData.LabelsAppearance.Visible = false;
            //theoreticalData.TooltipsAppearance.Color = System.Drawing.Color.White;
            //theoreticalData.TooltipsAppearance.DataFormatString = "{0} Volts, {1} mA";

            PieSeries serieY = new PieSeries();

            serieY.Name = "Plazo";
            serieY.LabelsAppearance.Visible            = true;
            serieY.LabelsAppearance.DataFormatString   = "{0}%";
            serieY.TooltipsAppearance.Color            = System.Drawing.Color.White;
            serieY.TooltipsAppearance.DataFormatString = "{0}%";

            //serieY.TooltipsAppearance.ClientTemplate =  "#=category#";


            PieSeriesItem psitem = new PieSeriesItem();

            foreach (var Eplazo in lstplazos)
            {
                psitem = new PieSeriesItem(Math.Round(((((decimal)Eplazo.Cantidad) / Total) * 100), 2));
                //psitem.Name = Eplazo.TipoPlazo;
                psitem.Name = string.Format("{0}: Saldo Total: ${1}, Cantidad Letras: " + lstletras.Where(x => x.TipoPlazo == Eplazo.TipoPlazo).Count(),
                                            Eplazo.TipoPlazo, Math.Round(((decimal)Eplazo.Cantidad), 2).ToString("#,##0.00"));

                if (Eplazo.TipoPlazo == "1 a " + txtCantidadDias.Text.Trim() + " Días")
                {
                    psitem.BackgroundColor = System.Drawing.Color.DarkOrange;
                }
                else if (Eplazo.TipoPlazo == "Mayor a " + txtCantidadDias.Text.Trim() + " Días")
                {
                    psitem.BackgroundColor = System.Drawing.Color.Red;
                }

                serieY.SeriesItems.Add(psitem);
            }

            scatterChart.PlotArea.Series.Add(serieY);

            paneltorta.Controls.Add(scatterChart);
        }