Ich versuche, JXLS PoiTransformer
zu verwenden, um einen wirklich großen Bericht zu erzeugen; Das Problem ist, dass alle Beispiele, die ich bisher gefunden habe, eine Excel-Datei mit zwei Blättern erzeugen, von denen eines das Original, unmodifiziert, ein Template und ein anderes das tatsächliche Ergebnis enthält. Gibt es eine Möglichkeit, das erste Blatt wegzulassen und nur das Ergebnis zu behalten?JXLS + SXSSF - Wie erstellt man eine Excel-Datei ohne die Vorlage zusammen mit dem tatsächlich generierten Bericht?
Dies ist mein aktueller Code:
PoiContext context = new PoiContext();
context.putVar("params", this.montaParametros(rel, filtro, opcoes, dados));
context.putVar("dados", this.converteDados(rel, dados));
Workbook template = WorkbookFactory.create(resource.getInputStream());
PoiTransformer transformer = PoiTransformer.createSxssfTransformer(template, 5, false);
AreaBuilder areaBuilder = new XlsCommentAreaBuilder(transformer);
List<Area> xlsAreaList = areaBuilder.build();
Area xlsArea = xlsAreaList.get(0);
// xlsArea.applyAt(new CellRef("Template!A1"), context); // Tried forcing it to use the original sheet as the output sheet, but it does not overwrite things properly
xlsArea.applyAt(new CellRef("Result!A1"), context); // Writes into a new sheet, but that's not what is desired
Workbook processado = transformer.getWorkbook();
processado.write(out);