public ActionResult Generate(ReportModel reportData) { //get labData for pits try { DataCell[,] pitsTable = reportData.PitsTable == null ? null : CreateDataGrid(reportData.PitsTable); DataCell[,] labDataGrid = reportData.LabDataTable == null ? null : CreateDataGrid(reportData.LabDataTable);; DataCell[,] fieldDataGrid = reportData.FieldDataTable == null ? null : CreateDataGrid(reportData.FieldDataTable); //if (exportedMapFile != "") //{ ReportGenerator tagReplacer = new ReportGenerator(Path.Combine(HttpRuntime.AppDomainAppPath, @"images\TzemahReportTemplate.docx")); TempData["doc"] = tagReplacer.BuildReport(pitsTable, labDataGrid, fieldDataGrid, reportData.ImageUrl, reportData.AttachUrls); } catch (Exception e) { //Logger.LogMessage(LogInfo.Error, "Problem creating report" + e); return(Json(new { status = "ERROR", e.InnerException, e.Message }));; } byte[] report = (byte[])TempData["doc"]; TempData["doc"] = report; return(Json(new { status = "OK", reportLength = report.Length })); }
public string BuildFormatoCotizacion(int cotizacionId) { try { ReporteCotizacion reportData = FormatoCotizacionDataAccess.GetReporteCotizacion(cotizacionId); BuildPrecios(reportData); string wordTemplatePath = GetTemplatePath(reportData.Sistema.TipoSistema); string outputCotizacionPath = GetFormatOutputPath(reportData); ReportGenerator ReportGenerator = new ReportGenerator(reportData); reportData.GeneralData = GetParametrosFormato(reportData, cotizacionId); ReportGenerator.BuildReport(wordTemplatePath, outputCotizacionPath); return(outputCotizacionPath); } catch (Exception exception) { EventLogManager.LogErrorEntry(exception); throw; } }