public ActionResult VentasPorCategoria(DateTime fecha_inicio, DateTime fecha_fin) { List <ReporteCategoria> pedidos = new List <ReporteCategoria>(); ReporteCategoria pedidoTemporal; try { List <string> pedidosCategoria = bl.consultarCantidadPedidoPorCategoria(fecha_inicio, fecha_fin); for (int i = 0; i < pedidosCategoria.Count() - 1; i += 3) { pedidoTemporal = new ReporteCategoria(); pedidoTemporal.FechaInicio = fecha_inicio; ViewBag.desde = "desde"; ViewBag.hasta = "hasta"; ViewBag.fechainicio = fecha_inicio.ToString("yyyy-MM-dd"); pedidoTemporal.FechaFin = fecha_fin; ViewBag.fechafin = fecha_fin.ToString("yyyy-MM-dd"); pedidoTemporal.Codigo = pedidosCategoria.ElementAt(i); pedidoTemporal.Categoria = pedidosCategoria.ElementAt(i + 1); pedidoTemporal.Cantidad = pedidosCategoria.ElementAt(i + 2); pedidos.Add(pedidoTemporal); } } catch (Exception e) { ModelState.AddModelError("", "Seleccione las fechas para generar el reporte"); } return(View(pedidos)); }
public IHttpActionResult Get() { try { List <rptCatV_Result> todos = ReporteCategoria.Get(); return(Content(HttpStatusCode.OK, todos)); //return Json(todos); } catch (Exception ex) { return(Content(HttpStatusCode.BadRequest, ex)); } }
private void Imprimirbutton_Click(object sender, EventArgs e) { if (listado == null || listado.Count <= 0) { MyerrorProvider.Clear(); MyerrorProvider.SetError(Imprimirbutton, "No hay datos para imprimir."); return; } else { if (listado.Count > 0) { ReporteCategoria reporte = new ReporteCategoria(listado); reporte.ShowDialog(); } else { MyerrorProvider.Clear(); MyerrorProvider.SetError(Imprimirbutton, "No hay datos para imprimir."); return; } } }
public ActionResult ReporteCategoria(string id, DateTime fechai, DateTime fechaf) { LocalReport lr = new LocalReport(); string path = Path.Combine(Server.MapPath("~/Reportes"), "VentasPorCategoria.rdlc"); if (System.IO.File.Exists(path)) { lr.ReportPath = path; } else { return(View("Index")); } List <string> pedidosCategoria = bl.consultarCantidadPedidoPorCategoria(fechai, fechaf); List <ReporteCategoria> pedidos = new List <ReporteCategoria>(); ReporteCategoria pedidoTemporal; for (int i = 0; i < pedidosCategoria.Count() - 1; i += 3) { pedidoTemporal = new ReporteCategoria(); pedidoTemporal.FechaInicio = fechai.Date; pedidoTemporal.FechaFin = fechaf.Date; pedidoTemporal.Codigo = pedidosCategoria.ElementAt(i); pedidoTemporal.Categoria = pedidosCategoria.ElementAt(i + 1); pedidoTemporal.Cantidad = pedidosCategoria.ElementAt(i + 2); pedidos.Add(pedidoTemporal); } ReportDataSource rd = new ReportDataSource("VentasPorCategoriaDataSet", pedidos); lr.DataSources.Add(rd); string reportType = id; string mimeType; string encoding; string fileNameExtension; string deviceInfo = "<DeviceInfo>" + " <OutputFormat>" + id + "</OutputFormat>" + " <PageWidth>8.5in</PageWidth>" + " <PageHeight>11in</PageHeight>" + " <MarginTop>0.5in</MarginTop>" + " <MarginLeft>1in</MarginLeft>" + " <MarginRight>1in</MarginRight>" + " <MarginBottom>0.5in</MarginBottom>" + "</DeviceInfo>"; Warning[] warnings; string[] streams; byte[] renderedBytes; renderedBytes = lr.Render( reportType, deviceInfo, out mimeType, out encoding, out fileNameExtension, out streams, out warnings); return(File(renderedBytes, mimeType)); }