private void GenerarVentasPorDia(DateTime fecha) { try { rpvVentas.LocalReport.DataSources.Clear(); ReporteVentasTableAdapter ventasAdapter = new ReporteVentasTableAdapter(); ReportDataSource sourceVentas = new ReportDataSource("ReporteVentas", (DataTable)ventasAdapter.ReporteVentasPorFechas(fecha)); ReporteAbonosTableAdapter abonosAdapter = new ReporteAbonosTableAdapter(); ReportDataSource sourceAbonos = new ReportDataSource("ReporteAbonos", (DataTable)abonosAdapter.ReporteAbonosPorFecha(fecha)); ReporteDeudasTableAdapter deudasAdapter = new ReporteDeudasTableAdapter(); ReportDataSource sourceDeudas = new ReportDataSource("ReporteDeudas", (DataTable)deudasAdapter.ReporteDeudasPorFecha(fecha)); FuncionesTableAdapter funcionesAdapter = new FuncionesTableAdapter(); ReportDataSource sourceTotalVentas = new ReportDataSource("TotalFacturas", (DataTable)funcionesAdapter.TotalFacturasPorFecha(fecha)); ReportDataSource sourceCantidadVentas = new ReportDataSource("CantidadFacturas", (DataTable)funcionesAdapter.CantidadFacturasPorFechas(fecha)); rpvVentas.LocalReport.DataSources.Add(sourceCantidadVentas); rpvVentas.LocalReport.DataSources.Add(sourceTotalVentas); rpvVentas.LocalReport.DataSources.Add(sourceDeudas); rpvVentas.LocalReport.DataSources.Add(sourceAbonos); rpvVentas.LocalReport.DataSources.Add(sourceVentas); ReportParameter[] parametros = new ReportParameter[4]; parametros[0] = new ReportParameter("Usuario", "Alan Rojas"); parametros[1] = new ReportParameter("Fecha", DateTime.Now.ToString()); parametros[2] = new ReportParameter("Reporte", fecha.ToString("dd/MM/yyyy")); parametros[3] = new ReportParameter("Titulo", $"Reporte del día {fecha.ToString("dddd")} {fecha.ToString("dd")} de {fecha.ToString("MMMM")} del {fecha.ToString("yyyy")}"); rpvVentas.LocalReport.SetParameters(parametros); log.Info($"Se buscó el reporte de ventas del dia {fecha}"); rpvVentas.RefreshReport(); } catch (Exception error) { log.Error($"Error: {error.Message}", error); MessageBox.Show($"Error: {error.Message}", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }