Search in sources :

Example 1 with JRRtfExporter

use of net.sf.jasperreports.engine.export.JRRtfExporter in project adempiere by adempiere.

the class ZkJRViewer method renderReport.

/***
	 * 
	 * This method is used for generate report in PDF or XLS based on previewType selection.
	 * 
	 * @throws Exception
	 */
private void renderReport() throws Exception {
    Listitem selected = previewType.getSelectedItem();
    //
    // Place Common code outside the If else block
    //
    String path = System.getProperty("java.io.tmpdir");
    String prefix = makePrefix(jasperPrint.getName());
    if (log.isLoggable(Level.FINE)) {
        log.log(Level.FINE, "Path=" + path + " Prefix=" + prefix);
    }
    if (selected == null || "PDF".equals(selected.getValue())) {
        file = File.createTempFile(prefix, ".pdf", new File(path));
        JasperExportManager.exportReportToPdfFile(jasperPrint, file.getAbsolutePath());
        media = new AMedia(this.title, "pdf", "application/pdf", file, true);
    } else if ("XLS".equals(previewType.getSelectedItem().getValue())) {
        file = File.createTempFile(prefix, ".xls", new File(path));
        FileOutputStream fos = new FileOutputStream(file);
        JRXlsExporter exporterXLS = new JRXlsExporter();
        exporterXLS.setParameter(JRXlsExporterParameter.JASPER_PRINT, jasperPrint);
        exporterXLS.setParameter(JRXlsExporterParameter.OUTPUT_STREAM, fos);
        exporterXLS.setParameter(JRXlsExporterParameter.OUTPUT_FILE, file.getAbsolutePath());
        exporterXLS.setParameter(JRXlsExporterParameter.IS_DETECT_CELL_TYPE, Boolean.TRUE);
        exporterXLS.setParameter(JRXlsExporterParameter.IS_WHITE_PAGE_BACKGROUND, Boolean.FALSE);
        exporterXLS.setParameter(JRXlsExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_ROWS, Boolean.TRUE);
        exporterXLS.setParameter(JRXlsExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_COLUMNS, Boolean.TRUE);
        exporterXLS.setParameter(JRXlsExporterParameter.IS_COLLAPSE_ROW_SPAN, Boolean.TRUE);
        exporterXLS.setParameter(JRXlsExporterParameter.IS_IGNORE_GRAPHICS, Boolean.FALSE);
        exporterXLS.exportReport();
        media = new AMedia(this.title, "xls", "application/vnd.ms-excel", file, true);
    } else if ("RTF".equals(previewType.getSelectedItem().getValue())) {
        FileOutputStream fos = new FileOutputStream(file);
        JRRtfExporter rtfExporter = new JRRtfExporter();
        rtfExporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
        rtfExporter.setParameter(JRExporterParameter.OUTPUT_STREAM, fos);
        rtfExporter.setParameter(JRExporterParameter.CHARACTER_ENCODING, "UTF-8");
        rtfExporter.exportReport();
        media = new AMedia(this.title, "doc", "application/vnd.ms-word", file, true);
    }
    iframe.setContent(media);
}
Also used : JRXlsExporter(net.sf.jasperreports.engine.export.JRXlsExporter) AMedia(org.zkoss.util.media.AMedia) FileOutputStream(java.io.FileOutputStream) Listitem(org.zkoss.zul.Listitem) File(java.io.File) JRRtfExporter(net.sf.jasperreports.engine.export.JRRtfExporter)

Example 2 with JRRtfExporter

use of net.sf.jasperreports.engine.export.JRRtfExporter in project jgnash by ccavanaugh.

the class JasperViewerDialogController method handleSaveAction.

@FXML
private void handleSaveAction() {
    Preferences preferences = Preferences.userNodeForPackage(JasperViewerDialogController.class);
    final String lastDir = preferences.get(LAST_DIR, null);
    final FileChooser fileChooser = new FileChooser();
    fileChooser.setTitle(ResourceUtils.getString("Title.SaveFile"));
    if (lastDir != null) {
        fileChooser.setInitialDirectory(new File(lastDir));
    }
    fileChooser.getExtensionFilters().add(new FileChooser.ExtensionFilter("PDF Document", "*.pdf", "*.PDF"));
    fileChooser.getExtensionFilters().add(new FileChooser.ExtensionFilter("ODT Document", "*.odt", "*.ODT"));
    fileChooser.getExtensionFilters().add(new FileChooser.ExtensionFilter("DOCX Document", "*.docx", "*.DOCX"));
    fileChooser.getExtensionFilters().add(new FileChooser.ExtensionFilter("XLSX Document", "*.xlsx", "*.XLSX"));
    fileChooser.getExtensionFilters().add(new FileChooser.ExtensionFilter("CSV Document", "*.csv", "*.CSV"));
    fileChooser.getExtensionFilters().add(new FileChooser.ExtensionFilter("RTF Document", "*.rtf", "*.RTF"));
    final File file = fileChooser.showSaveDialog(MainView.getPrimaryStage());
    if (file != null) {
        preferences.put(LAST_DIR, file.getParent());
        switch(FileUtils.getFileExtension(file.getAbsolutePath()).toLowerCase(Locale.ROOT)) {
            case "pdf":
                try {
                    JasperExportManager.exportReportToPdfFile(jasperPrint.get(), file.getAbsolutePath());
                } catch (final JRException e) {
                    StaticUIMethods.displayException(e);
                }
                break;
            case "odt":
                try {
                    final JROdtExporter exporter = new JROdtExporter();
                    exporter.setExporterInput(new SimpleExporterInput(jasperPrint.get()));
                    exporter.setExporterOutput(new SimpleOutputStreamExporterOutput(file));
                    exporter.exportReport();
                } catch (final JRException e) {
                    StaticUIMethods.displayException(e);
                }
                break;
            case "docx":
                try {
                    final JRDocxExporter exporter = new JRDocxExporter();
                    exporter.setExporterInput(new SimpleExporterInput(jasperPrint.get()));
                    exporter.setExporterOutput(new SimpleOutputStreamExporterOutput(file));
                    exporter.exportReport();
                } catch (final JRException e) {
                    StaticUIMethods.displayException(e);
                }
                break;
            case "xlsx":
                try {
                    final JRXlsExporter exporter = new JRXlsExporter();
                    exporter.setExporterInput(new SimpleExporterInput(jasperPrint.get()));
                    exporter.setExporterOutput(new SimpleOutputStreamExporterOutput(file));
                    final SimpleXlsReportConfiguration configuration = new SimpleXlsReportConfiguration();
                    configuration.setOnePagePerSheet(false);
                    exporter.setConfiguration(configuration);
                    exporter.exportReport();
                } catch (final JRException e) {
                    StaticUIMethods.displayException(e);
                }
                break;
            case "csv":
                try {
                    final JRCsvExporter exporter = new JRCsvExporter();
                    exporter.setExporterInput(new SimpleExporterInput(jasperPrint.get()));
                    exporter.setExporterOutput(new SimpleWriterExporterOutput(file));
                    exporter.exportReport();
                } catch (final JRException e) {
                    StaticUIMethods.displayException(e);
                }
                break;
            case "rtf":
                try {
                    final JRRtfExporter exporter = new JRRtfExporter();
                    exporter.setExporterInput(new SimpleExporterInput(jasperPrint.get()));
                    exporter.setExporterOutput(new SimpleWriterExporterOutput(file));
                    exporter.exportReport();
                } catch (final JRException e) {
                    StaticUIMethods.displayException(e);
                }
                break;
            default:
        }
    }
}
Also used : SimpleXlsReportConfiguration(net.sf.jasperreports.export.SimpleXlsReportConfiguration) JROdtExporter(net.sf.jasperreports.engine.export.oasis.JROdtExporter) JRException(net.sf.jasperreports.engine.JRException) SimpleOutputStreamExporterOutput(net.sf.jasperreports.export.SimpleOutputStreamExporterOutput) JRCsvExporter(net.sf.jasperreports.engine.export.JRCsvExporter) SimpleExporterInput(net.sf.jasperreports.export.SimpleExporterInput) JRXlsExporter(net.sf.jasperreports.engine.export.JRXlsExporter) SimpleWriterExporterOutput(net.sf.jasperreports.export.SimpleWriterExporterOutput) FileChooser(javafx.stage.FileChooser) Preferences(java.util.prefs.Preferences) JRDocxExporter(net.sf.jasperreports.engine.export.ooxml.JRDocxExporter) File(java.io.File) JRRtfExporter(net.sf.jasperreports.engine.export.JRRtfExporter) FXML(javafx.fxml.FXML) InjectFXML(jgnash.uifx.util.InjectFXML)

Aggregations

File (java.io.File)2 JRRtfExporter (net.sf.jasperreports.engine.export.JRRtfExporter)2 JRXlsExporter (net.sf.jasperreports.engine.export.JRXlsExporter)2 FileOutputStream (java.io.FileOutputStream)1 Preferences (java.util.prefs.Preferences)1 FXML (javafx.fxml.FXML)1 FileChooser (javafx.stage.FileChooser)1 InjectFXML (jgnash.uifx.util.InjectFXML)1 JRException (net.sf.jasperreports.engine.JRException)1 JRCsvExporter (net.sf.jasperreports.engine.export.JRCsvExporter)1 JROdtExporter (net.sf.jasperreports.engine.export.oasis.JROdtExporter)1 JRDocxExporter (net.sf.jasperreports.engine.export.ooxml.JRDocxExporter)1 SimpleExporterInput (net.sf.jasperreports.export.SimpleExporterInput)1 SimpleOutputStreamExporterOutput (net.sf.jasperreports.export.SimpleOutputStreamExporterOutput)1 SimpleWriterExporterOutput (net.sf.jasperreports.export.SimpleWriterExporterOutput)1 SimpleXlsReportConfiguration (net.sf.jasperreports.export.SimpleXlsReportConfiguration)1 AMedia (org.zkoss.util.media.AMedia)1 Listitem (org.zkoss.zul.Listitem)1