private Stream GenerateWithFault(IReportTemplate template, IReportExporter exporter) { IGenerationContext context = new GenerationContext() { Engine = this, Template = template }; foreach (IDataSource item in template.DataSources) { try { item.Provider.Initialize(); item.Provider.RetrieveData(context); } catch (Exception ex) { throw new DataSourceInitializeException(item.Name, ex); } } foreach (IReportTemplateSection section in template.Sections) { PrepareElement(context, section.RootElement); } Stream stream = exporter.Export(context); stream.Position = 0L; return(stream); }
public InterDayReportGenerator(IPowerService powerService, IReportExporter exporter, IReportDateProvider dateProvider) { _powerService = powerService; _exporter = exporter; _dateProvider = dateProvider; }
public ReportService(IReportExporter reportExporter, ILogger <ReportService> logger, IWorkLogClientService workLogClientService) { _reportExporter = reportExporter; _logger = logger; _workLogClientService = workLogClientService; }
private PortingAssistantBuilder(PortingAssistantConfiguration configuration, Action <ILoggingBuilder> logConfiguration) { this.LogConfiguration = logConfiguration; this.Configuration = configuration; ConfigureServices(); var services = ServiceCollection.BuildServiceProvider(); this.PortingAssistantClient = services.GetService <IPortingAssistantClient>(); this.ReportExporter = services.GetService <IReportExporter>(); }
Stream IReportEngine.Generate(IReportTemplate template, Type exporterType) { if (exporterType == null) { throw new ArgumentNullException("exporterType"); } IReportExporter exporter = (IReportExporter)Activator.CreateInstance(exporterType); using (IReportExporter exp = exporter) { return(Generate(template, exporter)); } }
public async Task <(Stream, string)> GenerateToStreamAsync(int year, int month, ExportFormat format = ExportFormat.TXT) { Report report = await CreateReport(year, month); if (SupportedExporters.ContainsKey(format) == false) { // TODO: Необходимо вернуть что-то дружелюбное return(null, null); } IReportExporter exporter = SupportedExporters[format]; exporter.SetReport(report); return(await exporter.ExportAsync(), exporter.Extension); }
private Stream Generate(IReportTemplate template, IReportExporter exporter) { if (template == null) { throw new ArgumentNullException("template"); } if (exporter == null) { throw new ArgumentNullException("exporter"); } try { return(GenerateWithFault(template, exporter)); } catch (Exception ex) { throw new ReportGenerationException(ex); } }
private Stream Generate(IReportTemplate template, IReportExporter exporter) { if (template == null) { throw new ArgumentNullException("template"); } if (exporter == null) { throw new ArgumentNullException("exporter"); } try { return GenerateWithFault(template, exporter); } catch (Exception ex) { throw new ReportGenerationException(ex); } }
Stream IReportEngine.Generate(IReportTemplate template, IReportExporter exporter) { return(Generate(template, exporter)); }
public HomeController(IOrderRepository orderRepository, IReportExporter reportExporter, IReportSender reportSender) { this.orderRepository = orderRepository; this.reportExporter = reportExporter; this.reportSender = reportSender; }
Stream IReportEngine.Generate(IReportTemplate template, IReportExporter exporter) { return Generate(template, exporter); }
private Stream GenerateWithFault(IReportTemplate template, IReportExporter exporter) { IGenerationContext context = new GenerationContext() { Engine = this, Template = template }; foreach (IDataSource item in template.DataSources) { try { item.Provider.Initialize(); item.Provider.RetrieveData(context); } catch (Exception ex) { throw new DataSourceInitializeException(item.Name, ex); } } foreach (IReportTemplateSection section in template.Sections) { PrepareElement(context, section.RootElement); } Stream stream = exporter.Export(context); stream.Position = 0L; return stream; }
/// <summary> /// Initializes a new instance of the <see cref="ReportExportService" /> class. /// </summary> /// <param name="messageBus">The message bus.</param> /// <param name="reportExporter">The report exporter.</param> /// <param name="storageProvider">The storage provider.</param> /// <param name="mapper">The mapper.</param> public ReportExportService(IMessageBus messageBus, IReportExporter reportExporter, IStorageProvider storageProvider, IMapper mapper) : base(storageProvider, mapper) { this.reportExporter = reportExporter; this.messageBus = messageBus; }
public ReportsExporter(IEnumerable <IReportProvider> reportProviders, IReportExporter reportExporter) { ReportProviders = reportProviders.ToArray(); ReportExporter = reportExporter; }
private MemoryStream ExportRDLC(BaseDeviceInfoSettings exportTypeSetting, string deviceInfoXml, DataTable _dataSet, out IReportExporter winFormsReportExporter, out LocalReport localReport) { if (_dataSet != null) { this.m_dataSet = _dataSet; } GetColumns(); DateTime startTime = DateTime.Now; localReport = new LocalReport(); localReport.DisplayName = string.IsNullOrEmpty(Rdl.PageHeaderText) ? "Report" : Rdl.PageHeaderText; localReport.LoadReportDefinition(m_rdl); localReport.DataSources.Add(new ReportDataSource("MyData", m_dataSet)); winFormsReportExporter = new WinFormsReportExporter(localReport); MemoryStream content; if (exportTypeSetting is ExcelDeviceInfoSettings) { content = winFormsReportExporter.ExportToXls(deviceInfoXml); } else if (exportTypeSetting is PdfDeviceInfoSettings) { content = winFormsReportExporter.ExportToPdf(deviceInfoXml); } else if (exportTypeSetting is ImageDeviceInfoSettings) { content = winFormsReportExporter.ExportToImage(deviceInfoXml); } else if (exportTypeSetting is WordDeviceInfoSettings) { content = winFormsReportExporter.ExportToWord(deviceInfoXml); } else { throw new ApplicationException("Unknown export type format"); } TimeSpan totalTime = DateTime.Now - startTime; return content; }
private MemoryStream ExportRDLC(BaseDeviceInfoSettings exportTypeSetting, string deviceInfoXml, out IReportExporter winFormsReportExporter, out LocalReport localReport) { return ExportRDLC(exportTypeSetting, deviceInfoXml, null, out winFormsReportExporter, out localReport); }