2

Jasper Report 6.1.0 または 5.6.0 jar を使用していますが、答えが見つかりません。

JasperPrint jasperPrint=JasperFillManager.fillReport(sourceFileName, parameters, new JREmptyDataSource());
System.out.println("started bossssssssssssssssss");
JRDocxExporter exporter = new JRDocxExporter();
exporter.setExporterInput(new SimpleExporterInput(jasperPrint));
File exportReportFile = new File("/home/ist-140/filename.docx");
exporter.setExporterOutput(new SimpleOutputStreamExporterOutput(exportReportFile));
    // exporter.setParameter(JRDocxExporterParameter.JASPER_PRINT, jasperPrint);
exporter.exportReport(); 

エラーは次のとおりです。

net.sf.jasperreports.engine.JRException: The DOCX format does not support more than 63 columns in a table

テーブル制限の 63 列について、次のうちどれが当てはまりますか。

  • ファイル形式/仕様の制限
  • Wordの一部/すべてのバージョンでの制限です
  • そのジャスパーの制限
4

5 に答える 5

1

DOCX にエクスポートすると、グリッドが生成され、各印刷要素がセルに配置されます。そのため、配置されていない要素が多すぎると、列数が docx 仕様の制限を超える可能性があります。

部分的な回避策は、レポートをグリッド (スプレッドシートなど) で考えて設計することです。見る:

http://community.jaspersoft.com/questions/531205/exceptions-when-saving-report-docx-format

于 2017-07-28T14:40:47.193 に答える
0

はい、Word には表の列数の上限があります。その理由は非常に実用的です。ページ/用紙サイズには上限があります。より多くの列を含む表は、単純に読み取り不能です。

この制限は、Word のすべてのバージョンに適用されます。非常に初期のバージョンでは、さらに少ない列が可能でした。

于 2016-04-30T22:48:48.080 に答える
0

Word の一部/すべてのバージョンでの制限です (すべてのバージョンでの制限だと思います)。MS Word にはこの制限があるため、Jasper (実際には JasperReports docx エクスポーター) にはこの制限があります。そうしないと、63 列目の中に 64 列目と次の列が書き込まれます。

Excel を開き、65 個のセルを書き込み、それらをコピーして Word に貼り付け、いくつかの境界線を追加し、63 番目のセル/列に 63 番目、64 番目、および 65 番目のコンテンツがどのように含まれているかを確認します。

于 2018-05-09T11:36:17.740 に答える