protected override void GetGraphCategoriesAndDatasets() { var datasets = new List <FusionChartsDataset>(); var data = new FusionChartsDataset { Name = YAxisLabel }; var categories = new List <string>(); foreach (var kilometer in ReportObjectsList) { categories.Add(kilometer.Interno); data.addValue(kilometer.Kilometers.ToString(CultureInfo.InvariantCulture)); } datasets.Add(data); GraphCategories = categories; GraphDataSet = datasets; }
protected override void GetGraphCategoriesAndDatasets() { var dataset = new FusionChartsDataset { Name = ddlMovil.SelectedItem.Text }; var categories = new List <string>(); foreach (var t in ReportObjectsList) { categories.Add(String.Format("{0:dd/MM}", t.Fecha)); dataset.addValue(t.Kilometers.ToString(CultureInfo.InvariantCulture)); } GraphCategories = categories; GraphDataSet = new List <FusionChartsDataset> { dataset }; }
protected override void GetGraphCategoriesAndDatasets() { var dataset = new FusionChartsDataset { Name = YAxisLabel }; var categories = new List <string>(); foreach (var t in ReportObjectsList) { categories.Add(t.Date.ToString("dd/MM")); dataset.addValue(t.Date.ToString("dd/MM")); } GraphCategories = categories; GraphDataSet = new List <FusionChartsDataset> { dataset }; }
protected override void GetGraphCategoriesAndDatasets() { var dataset = new FusionChartsDataset { Name = ddlEmpleado.SelectedItem.Text }; var categories = new List <string>(); foreach (var t in ReportObjectsList) { categories.Add(String.Format("{0:dd/MM}", t.Fecha)); dataset.addValue(t.ElapsedTime.ToString()); } GraphCategories = categories; GraphDataSet = new List <FusionChartsDataset> { dataset }; }
protected override void GetGraphCategoriesAndDatasets() { var dataset = new FusionChartsDataset { Name = YAxisLabel }; var categories = new List <string>(); foreach (var pair in _meses) { categories.Add(pair.Key); dataset.addValue(pair.Value.ToString()); } GraphCategories = categories; GraphDataSet = new List <FusionChartsDataset> { dataset }; }
/// <summary> /// Gets the graph XML file. /// </summary> /// <returns></returns> protected override string GetGraphXml() { var datasets = new List <FusionChartsDataset>(); using (var helper = new FusionChartsMultiSeriesHelper()) { SetGraphProperties(helper); var flag = true; var colores = new ColorGenerator(); foreach (var m in _horas.Keys) { var horas = new FusionChartsDataset(); var descripcion = DAOFactory.CaudalimetroDAO.FindById(m).Descripcion; horas.SetPropertyValue("seriesName", descripcion); horas.SetPropertyValue("color", HexColorUtil.ColorToHex(colores.GetNextColor())); var list = _horas[m]; if (list.Count.Equals(0)) { continue; } foreach (var h in list) { if (flag) { helper.AddCategory(h.Fecha.ToShortDateString()); } horas.addValue(h.HsEnMarcha.ToString(CultureInfo.InvariantCulture)); } flag = false; helper.AddDataSet(horas); datasets.Add(horas); } var categories = new List <string>(); categories.AddRange(helper.GetCategoriesList()); GraphCategories = categories; GraphDataSet = datasets; return(helper.BuildXml()); } }
protected override void GetGraphCategoriesAndDatasets() { var datasets = new List <FusionChartsDataset>(); var categories = new List <string>(); var iniDate = SecurityExtensions.ToDataBaseDateTime(dtpDate.SelectedDate.GetValueOrDefault()); var finDate = SecurityExtensions.ToDataBaseDateTime(dtpDate.SelectedDate.GetValueOrDefault()).AddHours(23).AddMinutes(59).AddSeconds(59); var colorGen = new ColorGenerator(); var noCategoriesAdded = true; if (lbBase.GetSelectedIndices().Length == 0) { lbBase.ToogleItems(); } foreach (var index in lbBase.GetSelectedIndices()) { var data = ReportFactory.IdleTimesDAO.GetAllMovilesStoppedInPlanta(Convert.ToInt32((string)lbBase.Items[index].Value), iniDate, finDate, chkUndefined.Checked); var dataset = new FusionChartsDataset { Name = lbBase.Items[index].Text }; dataset.SetPropertyValue("color", HexColorUtil.ColorToHex(colorGen.GetNextColor())); foreach (var item in data) { if (noCategoriesAdded) { categories.Add(item.Date.ToShortTimeString()); } dataset.addValue(item.TotalVehicles.ToString(CultureInfo.InvariantCulture)); } datasets.Add(dataset); noCategoriesAdded = false; } GraphCategories = categories; GraphDataSet = datasets; }
/// <summary> /// Adds tank level variation. /// </summary> /// <param name="helper"></param> private void AddTankLevelVariation(FusionChartsMultiSeriesHelper helper) { var niveles = new FusionChartsDataset(); var labelInterval = (ReportObjectsList.Count / _MAX_LABELS) + 1; var i = labelInterval; int resto; Math.DivRem(Convert.ToInt32(npIntervalo.Value), 1440, out resto); var printOnlyDate = resto.Equals(0); niveles.SetPropertyValue("seriesName", ddlTanque.SelectedItem.Text); niveles.SetPropertyValue("color", HexColorUtil.ColorToHex(Color.SteelBlue)); if (ReportObjectsList.Any(o => o.VolumenConsumido > 0.01)) { foreach (var nivel in ReportObjectsList) { var str = string.Empty; if (i.Equals(labelInterval)) { str = printOnlyDate ? String.Format("{0}", nivel.Fecha.ToShortDateString()) : String.Format("{0} - {1}", nivel.Fecha.ToShortDateString(), nivel.Fecha.ToShortTimeString()); i = 0; } i++; helper.AddCategory(str); niveles.addValue(nivel.VolumenConsumido.ToString(CultureInfo.InvariantCulture)); } } helper.AddDataSet(niveles); }
protected override void GetGraphCategoriesAndDatasets() { var avgConsumption = (from nivel in ReportObjectsList select nivel.Consumo).Average(); var consumos = new FusionChartsDataset { Name = string.Format("{0}: {1}lit", CultureManager.GetLabel("CONSUMO"), (int)avgConsumption) }; var avgCaudal = (from nivel in ReportObjectsList select nivel.Caudal).Average(); var caudal = new FusionChartsDataset { Name = string.Format("{0}: {1}lit", CultureManager.GetLabel("CAUDAL"), (int)avgCaudal) }; int resto; Math.DivRem(Convert.ToInt32(npIntervalo.Value), 1440, out resto); var printOnlyDate = resto.Equals(0); var categories = ReportObjectsList.Select(nivel => printOnlyDate ? String.Format("{0}", nivel.Fecha.ToShortDateString()) : String.Format("{0} - {1}", nivel.Fecha.ToShortDateString(), nivel.Fecha.ToShortTimeString())).ToList(); foreach (var nivel in ReportObjectsList) { caudal.addValue(nivel.Caudal.ToString(CultureInfo.InvariantCulture)); } foreach (var dia in ReportObjectsList) { consumos.addValue(dia.Consumo.ToString(CultureInfo.InvariantCulture)); } GraphCategories = categories; GraphDataSet = new List <FusionChartsDataset> { caudal, consumos }; }
protected void CreateGraphic(List <Pedido> list) { try { using (var helper = new FusionChartsMultiSeriesHelper()) { var carga = GetCarga(null); var bocas = cbBocaDeCarga.Selected > 0 ? new List <BocaDeCarga> { DAOFactory.BocaDeCargaDAO.FindById(cbBocaDeCarga.Selected) } : DAOFactory.BocaDeCargaDAO.GetList(new[] { cbEmpresa.Selected }, new[] { cbLinea.Selected }); var inicio = bocas.Min(boca => GetInicioActividad(boca)); var fin = bocas.Max(boca => GetFinActividad(boca)); var rendimiento = bocas.Sum(boca => boca.Rendimiento); var tiempoPromedio = Convert.ToInt32(_tiempoCiclos.Sum() / CantidadTotal); var prev = 0; double maxValue = rendimiento; var maxMixers = CantidadMixers; #region DataSet Rendimiento (Trendline) var dataSetTrendLineRendimiento = new FusionChartsDataset(); dataSetTrendLineRendimiento.SetPropertyValue("seriesName", CultureManager.GetLabel("RENDIMIENTO")); dataSetTrendLineRendimiento.SetPropertyValue("color", "c30000"); dataSetTrendLineRendimiento.SetPropertyValue("parentYAxis", "S"); dataSetTrendLineRendimiento.SetPropertyValue("showAnchors", "0"); dataSetTrendLineRendimiento.SetPropertyValue("alpha", "60"); dataSetTrendLineRendimiento.SetPropertyValue("lineThickness", "2"); helper.AddDataSet(dataSetTrendLineRendimiento); #endregion #region DataSet Volumen por Hora (Barras) var dataSetVolumen = new FusionChartsDataset(); dataSetVolumen.SetPropertyValue("seriesName", CultureManager.GetLabel("PROGRAMACION_VOLUMEN_HORA")); dataSetVolumen.SetPropertyValue("color", "6868c3"); dataSetVolumen.SetPropertyValue("parentYAxis", "P"); helper.AddDataSet(dataSetVolumen); #endregion #region DataSet Mixers Disponibles (Trendline) var dataSetTrendLineMixers = new FusionChartsDataset(); dataSetTrendLineMixers.SetPropertyValue("seriesName", CultureManager.GetLabel("AVAILABLE_VEHICLES")); dataSetTrendLineMixers.SetPropertyValue("color", "c39600"); dataSetTrendLineMixers.SetPropertyValue("parentYAxis", "S"); dataSetTrendLineMixers.SetPropertyValue("showAnchors", "0"); dataSetTrendLineMixers.SetPropertyValue("alpha", "60"); dataSetTrendLineMixers.SetPropertyValue("lineThickness", "2"); helper.AddDataSet(dataSetTrendLineMixers); #endregion #region DataSet Mixers Equivalentes (Linea) var dataSetMixers = new FusionChartsDataset(); dataSetMixers.SetPropertyValue("seriesName", CultureManager.GetLabel("PROGRAMACION_MIXERS_EQUIVALENTES")); dataSetMixers.SetPropertyValue("color", "009900"); dataSetMixers.SetPropertyValue("parentYAxis", "S"); dataSetMixers.SetPropertyValue("anchorSides", "10"); dataSetMixers.SetPropertyValue("anchorRadius", "3"); dataSetMixers.SetPropertyValue("anchorBorderColor", "009900"); helper.AddDataSet(dataSetMixers); #endregion #region Llenado de Categorias y Valores for (var i = inicio; i <= fin; i = i.Add(TimeSpan.FromHours(1))) { var hora = Convert.ToInt32(i.Hours); var val = _volumenPorHora.ContainsKey(hora) ? _volumenPorHora[hora] : 0; var mix = (int)Math.Ceiling(1.0 * val / carga); var equi = (int)Math.Round((prev + mix) * tiempoPromedio / TiempoReferencia); helper.AddCategory(FormatTimeSpan(i)); dataSetVolumen.addValue(val.ToString().Replace(',', '.')); dataSetMixers.addValue(equi.ToString()); if (val > maxValue) { maxValue = val; } if (equi > maxMixers) { maxMixers = equi; } prev = mix; } #endregion #region Calculo proporcional de maximos y trendlines maxMixers++; maxValue++; int divlines; if (maxValue > maxMixers) { while (Math.Round(maxValue) % maxMixers != 0) { maxValue++; } divlines = Convert.ToInt32(maxValue / maxMixers); } else { while (maxMixers % Math.Round(maxValue) != 0) { maxMixers++; } divlines = Convert.ToInt32(maxMixers / maxValue); } var rend = rendimiento * maxMixers * 1.0 / maxValue; for (var i = inicio; i <= fin; i = i.Add(TimeSpan.FromHours(1))) { dataSetTrendLineRendimiento.addValue(rend.ToString(CultureInfo.InvariantCulture)); dataSetTrendLineMixers.addValue(CantidadMixers.ToString()); } #endregion #region Valores de Cabecera helper.AddConfigEntry("caption", ""); helper.AddConfigEntry("xAxisName", CultureManager.GetLabel("HORA")); helper.AddConfigEntry("PyAxisName", CultureManager.GetLabel("VOLUMEN")); helper.AddConfigEntry("SyAxisName", CultureManager.GetLabel("VEHICULOS")); helper.AddConfigEntry("decimalPrecision", "0"); helper.AddConfigEntry("showValues", "0"); helper.AddConfigEntry("numberSuffix", ""); helper.AddConfigEntry("rotateNames", "1"); helper.AddConfigEntry("limitsDecimalPrecision", "0"); helper.AddConfigEntry("hoverCapSepChar", "-"); helper.AddConfigEntry("divLineAlpha", "60"); helper.AddConfigEntry("showAlternateHGridColor", "1"); helper.AddConfigEntry("alternateHGridColor", "d8d8d8"); helper.AddConfigEntry("alternateHGridAlpha", "60"); helper.AddConfigEntry("zeroPlaneThickness", "20"); helper.AddConfigEntry("numDivLines", (divlines - 1).ToString()); helper.AddConfigEntry("SyAxisMaxValue", maxMixers.ToString()); helper.AddConfigEntry("PyAxisMaxValue", Math.Round(maxValue).ToString()); #endregion litGraph.Text = FusionCharts.RenderChartHTML("../FusionCharts/FCF_MSColumn2DLineDY.swf", "", helper.BuildXml(), "Report", (sizeField.Width).ToString(), (sizeField.Heigth).ToString(), false); } } catch (Exception ex) { ShowError(ex); } }