public virtual CrystalDecisions.CrystalReports.Engine.ReportDocument CreateReport() { CRReporteSociosProductosPagadosYNoPagadosParaExportar rpt = new CRReporteSociosProductosPagadosYNoPagadosParaExportar(); rpt.Site = this.Site; return(rpt); }
//-----------------Controllers private async Task <int> GenerarReporteExcelAsync(DateTime fechaInicio, DateTime fechaFin, string nomArchivo) { SqlConnectionStringBuilder sqlStrBuilder = new SqlConnectionStringBuilder(ObtenerCadenaConexionAppController()); //http://aspalliance.com/478_Exporting_to_Excel_in_Crystal_Reports_NET__Perfect_Excel_Exports.3 //https://www.c-sharpcorner.com/UploadFile/mahesh/savefiledialog-in-C-Sharp/ CRReporteSociosProductosPagadosYNoPagadosParaExportar reporte = new CRReporteSociosProductosPagadosYNoPagadosParaExportar(); //reporte.SetDatabaseLogon("sa", "modomixto", "CRUZ2-THINK", "DBCajaCuentas2"); reporte.SetDatabaseLogon(sqlStrBuilder.UserID, sqlStrBuilder.Password, sqlStrBuilder.DataSource, sqlStrBuilder.InitialCatalog); reporte.SetParameterValue("@fechaInicio", fechaInicio); reporte.SetParameterValue("@fechaFin", fechaFin); //El subreporte cero es el ultimo subreporte y el subreporte 1 es el primer subreporte reporte.SetParameterValue("@fechaInicio", fechaInicio, reporte.Subreports[0].Name.ToString()); reporte.SetParameterValue("@fechaFin", fechaFin, reporte.Subreports[0].Name.ToString()); reporte.SetParameterValue("@fechaInicio", fechaInicio, reporte.Subreports[1].Name.ToString()); reporte.SetParameterValue("@fechaFin", fechaFin, reporte.Subreports[1].Name.ToString()); //Ponerle las fechas de busqueda al reporte TextObject periodoDeBusquedaTextObject = reporte.ReportDefinition.ReportObjects["Text6"] as TextObject; periodoDeBusquedaTextObject.Text = MuestraFechaDeBusquedaSinLaHora(fechaInicio) + " a " + MuestraFechaDeBusquedaSinLaHora(fechaFin); periodoDeBusquedaTextObject = reporte.Subreports[0].ReportDefinition.ReportObjects["Text6"] as TextObject; periodoDeBusquedaTextObject.Text = MuestraFechaDeBusquedaSinLaHora(fechaInicio) + " a " + MuestraFechaDeBusquedaSinLaHora(fechaFin); periodoDeBusquedaTextObject = reporte.Subreports[1].ReportDefinition.ReportObjects["Text6"] as TextObject; periodoDeBusquedaTextObject.Text = MuestraFechaDeBusquedaSinLaHora(fechaInicio) + " a " + MuestraFechaDeBusquedaSinLaHora(fechaFin); // Declare variables and get the export options. ExportOptions exportOpts = new ExportOptions(); ExcelFormatOptions excelFormatOpts = new ExcelFormatOptions(); DiskFileDestinationOptions diskOpts = new DiskFileDestinationOptions(); exportOpts = reporte.ExportOptions; // Set the excel format options. excelFormatOpts.ExcelUseConstantColumnWidth = false; excelFormatOpts.ShowGridLines = true; //exportOpts.ExportFormatType = ExportFormatType.ExcelRecord; exportOpts.ExportFormatType = ExportFormatType.Excel; exportOpts.FormatOptions = excelFormatOpts; // Set the disk file options and export. exportOpts.ExportDestinationType = ExportDestinationType.DiskFile; //diskOpts.DiskFileName = "miotroreporttttte.xls"; diskOpts.DiskFileName = nomArchivo; exportOpts.DestinationOptions = diskOpts; reporte.Export(); await Task.Delay(200); return(1); }