コード例 #1
0
        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);
            }
        }