コード例 #1
0
        private void GenerarVentasEntreFechas(DateTime fechaInicio, DateTime fechaFinal)
        {
            try
            {
                rpvVentas.LocalReport.DataSources.Clear();

                ReporteVentasTableAdapter ventasAdapter = new ReporteVentasTableAdapter();
                ReportDataSource          sourceVentas  = new ReportDataSource("ReporteVentas", (DataTable)ventasAdapter.ReporteVentasEntreFechas(fechaInicio, fechaFinal));

                ReporteAbonosTableAdapter abonosAdapter = new ReporteAbonosTableAdapter();
                ReportDataSource          sourceAbonos  = new ReportDataSource("ReporteAbonos", (DataTable)abonosAdapter.ReporteAbonosEntreFechas(fechaInicio, fechaFinal));

                ReporteDeudasTableAdapter deudasAdapter = new ReporteDeudasTableAdapter();
                ReportDataSource          sourceDeudas  = new ReportDataSource("ReporteDeudas", (DataTable)deudasAdapter.ReporteDeudasEntreFechas(fechaInicio, fechaFinal));

                FuncionesTableAdapter funcionesAdapter     = new FuncionesTableAdapter();
                ReportDataSource      sourceTotalVentas    = new ReportDataSource("TotalFacturas", (DataTable)funcionesAdapter.TotalFacturasEntreFechas(fechaInicio, fechaFinal));
                ReportDataSource      sourceCantidadVentas = new ReportDataSource("CantidadFacturas", (DataTable)funcionesAdapter.CantidadFacturasEntreFechas(fechaInicio, fechaFinal));

                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", $"{fechaInicio.ToString("dd/MM/yyyy")} - {fechaFinal.ToString("dd/MM/yyyy")}");
                parametros[3] = new ReportParameter("Titulo", $"Reporte desde { fechaInicio.ToString("dd/MM/yyyy") } al { fechaFinal.ToString("dd/MM/yyyy")}");

                rpvVentas.LocalReport.SetParameters(parametros);

                log.Info($"Se buscó el reporte de ventas desde {fechaInicio} al {fechaFinal}");

                rpvVentas.RefreshReport();
            }
            catch (Exception error)
            {
                log.Error($"Error: {error.Message}", error);
                MessageBox.Show($"Error: {error.Message}", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }