public byte[] GetRunExcelReport(ExcelReportRunModel run) { using (var reportBuilder = new ExcelReportBuilder(new ExcelStyleApplier())) { reportBuilder.PredefineStyles(GamePlanReportStyles.RunReportPredefineStyles); foreach (var scenario in run.Scenarios) { reportBuilder.Sheet(scenario.Name, sb => { var columnsCount = scenario.MaxColumnsCount; SetColumnsWidthForRunReport(sb, columnsCount); WriteGrid(sb, scenario.ScenarioDetails); sb.Skip(); WriteGrid(sb, scenario.SalesAreaPassPriorities); sb.Skip(); WriteGrid(sb, scenario.General); sb.Skip(); WriteGrid(sb, scenario.Weighting); sb.Skip(); WriteGrid(sb, scenario.Tolerance); sb.Skip(); WriteGrid(sb, scenario.Rules); sb.Skip(); WriteGrid(sb, scenario.ProgrammeRepetitions); sb.Skip(); WriteGrid(sb, scenario.MinRatingPoints); sb.Skip(); WriteGrid(sb, scenario.BreakExclusions); sb.Skip(); WriteGrid(sb, scenario.SlottingLimits); }); } return(reportBuilder.Save()); } }
public byte[] GetReportAsByteArray(string sheetName, IEnumerable <CampaignReportModel> data, IEnumerable <ColumnStatusModel> columnStatusList, IReportColumnFormatter reportColumnHelper) { var confBuilder = CreateExcelConfigurationBuilder(); using (var reportBuilder = new ExcelReportBuilder(new ExcelStyleApplier()) .PredefineStyles(GamePlanReportStyles.AllPredefineStyles)) { var orderedData = reportColumnHelper.ApplySettings(data, columnStatusList, confBuilder); reportBuilder.Sheet(sheetName, sheetBuilder => { sheetBuilder.DataContent(orderedData, confBuilder.BuildConfiguration()); reportColumnHelper.AutoFitAll(sheetBuilder); }); return(reportBuilder.Save()); } }