Skip to content

Commit

Permalink
Merge pull request #1764 from e-Evolution/1712
Browse files Browse the repository at this point in the history
Bug fix error to export Jasper Report to Excel
  • Loading branch information
yamelsenih committed Aug 13, 2018
2 parents 1cb373c + 07c9d99 commit c4e7f53
Show file tree
Hide file tree
Showing 18 changed files with 60 additions and 48 deletions.
12 changes: 6 additions & 6 deletions JasperReports/build.xml
Expand Up @@ -64,14 +64,14 @@
<pathelement path="../lib/CSTools.jar"/>
<pathelement path="../lib/oracle.jar"/>
<!-- SHW: old Lib <pathelement path="../JasperReportsTools/lib/jasperreports-3.7.3.jar"/>-->
<pathelement path="../JasperReportsTools/lib/jasperreports-6.3.1.jar"/>
<pathelement path="../JasperReportsTools/lib/jasperreports-6.6.0.jar"/>
<!-- SHW: old Lib <pathelement path="../JasperReportsTools/lib/commons-digester-1.7.jar"/> -->
<pathelement path="../JasperReportsTools/lib/commons-digester-2.1.jar"/>
<pathelement path="../tools/lib/commons-logging-1.2.jar"/>
<!-- SHW: old Lib <pathelement path="../JasperReportsTools/lib/commons-beanutils-1.7.jar"/> -->
<pathelement path="../JasperReportsTools/lib/commons-beanutils-1.8.0.jar"/>
<pathelement path="../JasperReportsTools/lib/commons-beanutils-1.9.3.jar"/>
<!-- SHW:new library -->
<pathelement path="../JasperReportsTools/lib/jasperreports-fonts-6.3.1.jar"/>
<pathelement path="../JasperReportsTools/lib/jasperreports-fonts-6.6.0.jar"/>
<pathelement path="../tools/lib/xercesImpl.jar"/>
<pathelement path="../tools/lib/xml-apis.jar"/>
<pathelement path="../tools/lib/postgresql.jar"/>
Expand Down Expand Up @@ -139,7 +139,7 @@
duplicate="preserve">
<fileset dir="${needed.dir}"/>
<!-- SHW: old Lib <zipfileset src="../JasperReportsTools/lib/jasperreports-3.7.3.jar" > -->
<zipfileset src="../JasperReportsTools/lib/jasperreports-6.3.1.jar" >
<zipfileset src="../JasperReportsTools/lib/jasperreports-6.6.0.jar" >
<patternset refid="manifest.exclude"/>
</zipfileset>
<!-- SHW: old Lib <zipfileset src="../JasperReportsTools/lib/commons-digester-1.7.jar" > -->
Expand All @@ -150,11 +150,11 @@
<patternset refid="manifest.exclude"/>
</zipfileset>
<!-- SHW: old Lib <zipfileset src="../JasperReportsTools/lib/commons-beanutils-1.7.jar" > -->
<zipfileset src="../JasperReportsTools/lib/commons-beanutils-1.8.0.jar" >
<zipfileset src="../JasperReportsTools/lib/commons-beanutils-1.9.3.jar" >
<patternset refid="manifest.exclude"/>
</zipfileset>
<!-- SHW: new lib-->
<zipfileset src="../JasperReportsTools/lib/jasperreports-fonts-6.3.1.jar" >
<zipfileset src="../JasperReportsTools/lib/jasperreports-fonts-6.6.0.jar" >
<patternset refid="manifest.exclude"/>
</zipfileset>
<zipfileset src="../tools/lib/xercesImpl.jar" >
Expand Down
6 changes: 3 additions & 3 deletions JasperReports/src/org/compiere/report/JasperReportViewer.java
Expand Up @@ -18,7 +18,7 @@
import net.sf.jasperreports.engine.export.JRRtfExporter;
import net.sf.jasperreports.engine.export.JRXlsExporter;
import net.sf.jasperreports.engine.export.JRXlsExporterParameter;
import net.sf.jasperreports.view.JRViewer;
import net.sf.jasperreports.swing.JRViewer;
import org.compiere.apps.EMailDialog;
import org.compiere.model.MUser;
import org.compiere.util.CLogger;
Expand Down Expand Up @@ -63,8 +63,8 @@ public JasperReportViewer(final JasperViewer jasperViewer, final JasperPrint jas
tlbToolBar.add(comboBox);

// Set default viewer zoom level
btnFitPage.setSelected(true);
setZooms();
setFitWidthZoomRatio();
setFitPageZoomRatio();
}

public JasperPrint getJasperPrint() {
Expand Down
Binary file removed JasperReportsTools/lib/commons-beanutils-1.8.0.jar
Binary file not shown.
Binary file not shown.
Binary file removed JasperReportsTools/lib/jasperreports-5.1.0.jar
Binary file not shown.
Binary file removed JasperReportsTools/lib/jasperreports-6.3.1.jar
Binary file not shown.
Binary file added JasperReportsTools/lib/jasperreports-6.6.0.jar
Binary file not shown.
Binary file removed JasperReportsTools/lib/jasperreports-fonts-5.1.0.jar
Binary file not shown.
Binary file not shown.
2 changes: 1 addition & 1 deletion base/build.xml
Expand Up @@ -35,7 +35,7 @@
<pathelement path="../tools/lib/servlet-api.jar" />
<pathelement path="../tools/lib/cron4j-2.2.1.jar" />
<pathelement path="../tools/lib/commons-io.jar"/>
<pathelement path="../tools/lib/poi-ooxml-3.14-20160307.jar" />
<pathelement path="../tools/lib/poi-ooxml-3.17.jar" />
</path>


Expand Down
53 changes: 29 additions & 24 deletions base/src/org/adempiere/excel/SmjXlsReport.java
Expand Up @@ -19,7 +19,11 @@
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.util.CellRangeAddress;
import org.apache.poi.ss.usermodel.BorderStyle;
import org.apache.poi.ss.usermodel.ClientAnchor;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.apache.poi.ss.usermodel.VerticalAlignment;
import org.apache.poi.ss.util.CellRangeAddress;
import org.compiere.model.MImage;
import org.compiere.report.MReportColumn;
import org.compiere.util.CLogger;
Expand Down Expand Up @@ -65,13 +69,13 @@ public HSSFWorkbook generate(LinkedList<ReportTO> data,
HSSFFont font = book.createFont();
font.setFontHeightInPoints((short) 13);
font.setFontName(HSSFFont.FONT_ARIAL);
font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
font.setBold(true);

// estio celda - cell style
HSSFCellStyle cellStyle = book.createCellStyle();
cellStyle.setWrapText(true);
cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);
cellStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_TOP);
cellStyle.setAlignment(HorizontalAlignment.CENTER);
cellStyle.setVerticalAlignment(VerticalAlignment.TOP);
cellStyle.setFont(font);
// //////////////////////////////////////////////////////////////////////////////////////
// agrega el logo
Expand All @@ -82,7 +86,7 @@ public HSSFWorkbook generate(LinkedList<ReportTO> data,
HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
HSSFClientAnchor anchor;
anchor = new HSSFClientAnchor(100,50,200,255,(short)0,0,(short)1,1);
anchor.setAnchorType( HSSFClientAnchor.MOVE_DONT_RESIZE );
anchor.setAnchorType( ClientAnchor.AnchorType.MOVE_AND_RESIZE);
int pictureIndex = book.addPicture(imageData, HSSFWorkbook.PICTURE_TYPE_PNG );
patriarch.createPicture(anchor, pictureIndex);
for (int i=0;i<5;i++)
Expand Down Expand Up @@ -171,10 +175,10 @@ public HSSFWorkbook generate(LinkedList<ReportTO> data,

/**
* Crea la fila de titulos - create title row
* @param wb
* @param hs
* @param book
* @param sheet
* @param fila
* @param colsName
* @param m_columns
*/
private void titleTable(HSSFWorkbook book, HSSFSheet sheet, int fila,
MReportColumn[] m_columns) {
Expand All @@ -183,13 +187,13 @@ private void titleTable(HSSFWorkbook book, HSSFSheet sheet, int fila,
HSSFFont font = book.createFont();
font.setFontHeightInPoints((short) 13);
font.setFontName(HSSFFont.FONT_ARIAL);
font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
font.setBold(true);
// font.setColor(HSSFColor.BLUE.index);
// estio celda - cell style
HSSFCellStyle cellStyle = book.createCellStyle();
cellStyle.setWrapText(true);
cellStyle.setAlignment(HSSFCellStyle.ALIGN_JUSTIFY);
cellStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_TOP);
cellStyle.setAlignment(HorizontalAlignment.JUSTIFY);
cellStyle.setVerticalAlignment(VerticalAlignment.TOP);
// cellStyle.setFillPattern(HSSFCellStyle.SPARSE_DOTS);
// cellStyle.setFillBackgroundColor(HSSFColor.GREY_40_PERCENT.index);
cellStyle.setFont(font);
Expand Down Expand Up @@ -267,11 +271,12 @@ public void reportTable(HSSFWorkbook book, LinkedList<ReportTO> data,
HSSFFont fontT = book.createFont();
fontT.setFontHeightInPoints((short) 12);
fontT.setFontName(HSSFFont.FONT_ARIAL);
fontT.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
//fontT.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
fontT.setBold(true);
HSSFCellStyle cellStyleT = book.createCellStyle();
cellStyleT.setWrapText(true);
cellStyleT.setAlignment(HSSFCellStyle.ALIGN_CENTER);
cellStyleT.setVerticalAlignment(HSSFCellStyle.VERTICAL_TOP);
cellStyleT.setAlignment(HorizontalAlignment.CENTER);
cellStyleT.setVerticalAlignment(VerticalAlignment.TOP);
cellStyleT.setFont(fontT);
CellRangeAddress region = new CellRangeAddress(fila-1,(short)0,fila-1,endRegion);
sheet.addMergedRegion(region);
Expand All @@ -283,27 +288,27 @@ public void reportTable(HSSFWorkbook book, LinkedList<ReportTO> data,
} else if (rpt.getReportlinestyle() != null && rpt.getReportlinestyle().equals("L")) {
// coloca linea en el reporte - Put under line in the report
cellStyle.setWrapText(true);
cellStyle.setBorderTop(HSSFCellStyle.BORDER_MEDIUM);
cellStyle.setBorderTop(BorderStyle.MEDIUM);
cellStyle.setBottomBorderColor((short)8);
cellStyleD.setWrapText(true);
cellStyleD.setBorderTop(HSSFCellStyle.BORDER_MEDIUM);
cellStyleD.setBorderTop(BorderStyle.MEDIUM);
cellStyleD.setBottomBorderColor((short)8);
cellStyleN.setWrapText(true);
cellStyleN.setBorderTop(HSSFCellStyle.BORDER_MEDIUM);
cellStyleN.setBorderTop(BorderStyle.MEDIUM);
cellStyleN.setBottomBorderColor((short)8);
newRow = true;
} else if (rpt.getReportlinestyle() != null && rpt.getReportlinestyle().equals("X")) {
// coloca linea de total - Put total line
cellStyle.setWrapText(true);
cellStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_TOP);
cellStyle.setBorderTop(HSSFCellStyle.BORDER_MEDIUM);
cellStyle.setVerticalAlignment(VerticalAlignment.TOP);
cellStyle.setBorderTop(BorderStyle.MEDIUM);
cellStyle.setBottomBorderColor((short)8);
newRow = true;
}else if (rpt.getReportlinestyle() != null && rpt.getReportlinestyle().equals("Z")) {
// coloca linea doble de total - Put total line doble
cellStyle.setWrapText(true);
cellStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_TOP);
cellStyle.setBorderTop(HSSFCellStyle.BORDER_DOUBLE);
cellStyle.setVerticalAlignment(VerticalAlignment.TOP);
cellStyle.setBorderTop(BorderStyle.DOUBLE);
cellStyle.setBottomBorderColor((short)8);
//--------------
row = sheet.createRow(fila++);
Expand All @@ -314,8 +319,8 @@ public void reportTable(HSSFWorkbook book, LinkedList<ReportTO> data,
}else if (rpt.getReportlinestyle() != null && rpt.getReportlinestyle().equals("D")) {
// coloca liena de descripcion - put description line
cellStyleD.setWrapText(true);
cellStyleD.setVerticalAlignment(HSSFCellStyle.VERTICAL_TOP);
cellStyleD.setBorderTop(HSSFCellStyle.BORDER_MEDIUM);
cellStyleD.setVerticalAlignment(VerticalAlignment.TOP);
cellStyleD.setBorderTop(BorderStyle.MEDIUM);
cellStyleD.setBottomBorderColor((short)8);
newRow = true;
}else if (rpt.getReportlinestyle() != null && rpt.getReportlinestyle().equals("S")) {
Expand Down Expand Up @@ -359,7 +364,7 @@ private void putRow(HSSFCellStyle cellStyle, HSSFCellStyle cellStyleD, HSSFCellS
HSSFSheet sheet, HSSFRow row, int fila, ReportTO rpt){
HSSFRichTextString text;
short col = 0;
cellStyle.setAlignment(HSSFCellStyle.ALIGN_RIGHT);
cellStyle.setAlignment(HorizontalAlignment.RIGHT);
//Nombre - Name
text = new HSSFRichTextString(rpt.getName());
HSSFCell cell = row.createCell(col++);
Expand Down
21 changes: 11 additions & 10 deletions base/src/org/adempiere/impexp/AbstractExcelExporter.java
Expand Up @@ -24,6 +24,7 @@
import java.util.Properties;
import java.util.logging.Level;

import org.apache.poi.ss.usermodel.BorderStyle;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.CellStyle;
import org.apache.poi.ss.usermodel.DataFormat;
Expand Down Expand Up @@ -172,13 +173,13 @@ private Font getFont(boolean isHeader) {
if (isHeader) {
if (m_fontHeader == null) {
m_fontHeader = m_workbook.createFont();
m_fontHeader.setBoldweight(Font.BOLDWEIGHT_BOLD);
m_fontHeader.setBold(true);
}
font = m_fontHeader;
}
else if (isFunctionRow()) {
font = m_workbook.createFont();
font.setBoldweight(Font.BOLDWEIGHT_BOLD);
font.setBold(true);
font.setItalic(true);
}
else {
Expand Down Expand Up @@ -239,10 +240,10 @@ private CellStyle getStyle(int row, int col) {
Font font = getFont(false);
cs.setFont(font);
// Border
cs.setBorderLeft((short)1);
cs.setBorderTop((short)1);
cs.setBorderRight((short)1);
cs.setBorderBottom((short)1);
cs.setBorderLeft(BorderStyle.THIN);
cs.setBorderTop(BorderStyle.THIN);
cs.setBorderRight(BorderStyle.THIN);
cs.setBorderBottom(BorderStyle.THIN);
String formatPattern = getFormatPattern(col);
//
if (DisplayType.isDate(displayType)) {
Expand Down Expand Up @@ -276,10 +277,10 @@ private CellStyle getHeaderStyle(int col)
Font font_header = getFont(true);
cs_header = m_workbook.createCellStyle();
cs_header.setFont(font_header);
cs_header.setBorderLeft((short)2);
cs_header.setBorderTop((short)2);
cs_header.setBorderRight((short)2);
cs_header.setBorderBottom((short)2);
cs_header.setBorderLeft(BorderStyle.THIN);
cs_header.setBorderTop(BorderStyle.THIN);
cs_header.setBorderRight(BorderStyle.THIN);
cs_header.setBorderBottom(BorderStyle.THIN);
//cs_header.setDataFormat(HSSFDataFormat.getBuiltinFormat("text"));
cs_header.setDataFormat(m_workbook.createDataFormat().getFormat("text"));
cs_header.setWrapText(true);
Expand Down
14 changes: 10 additions & 4 deletions tools/build.xml
Expand Up @@ -327,10 +327,10 @@
<patternset refid="manifest.exclude" />
</zipfileset>
<!-- POI -->
<zipfileset src="lib/poi-3.14-20160307.jar">
<zipfileset src="lib/poi-3.17.jar">
<patternset refid="manifest.exclude" />
</zipfileset>
<zipfileset src="lib/poi-ooxml-3.14-20160307.jar">
<zipfileset src="lib/poi-ooxml-3.17.jar">
<patternset refid="manifest.exclude" />
</zipfileset>
<!-- CGLib -->
Expand All @@ -354,6 +354,9 @@
<zipfileset src="lib/commons-collections-3.1.jar">
<patternset refid="manifest.exclude" />
</zipfileset>
<zipfileset src="lib/commons-collections4-4.1.jar">
<patternset refid="manifest.exclude" />
</zipfileset>
<zipfileset src="lib/commons-codec-1.10.jar">
<patternset refid="manifest.exclude" />
</zipfileset>
Expand Down Expand Up @@ -535,10 +538,10 @@
<patternset refid="manifest.exclude" />
</zipfileset>
<!-- POI -->
<zipfileset src="lib/poi-3.14-20160307.jar">
<zipfileset src="lib/poi-3.17.jar">
<patternset refid="manifest.exclude" />
</zipfileset>
<zipfileset src="lib/poi-ooxml-3.14-20160307.jar">
<zipfileset src="lib/poi-ooxml-3.17.jar">
<patternset refid="manifest.exclude" />
</zipfileset>
<!-- Open Forecast -->
Expand All @@ -558,6 +561,9 @@
<zipfileset src="lib/commons-collections-3.1.jar">
<patternset refid="manifest.exclude" />
</zipfileset>
<zipfileset src="lib/commons-collections4-4.1.jar">
<patternset refid="manifest.exclude" />
</zipfileset>
<zipfileset src="lib/commons-codec-1.10.jar">
<patternset refid="manifest.exclude" />
</zipfileset>
Expand Down
Binary file added tools/lib/commons-collections4-4.1.jar
Binary file not shown.
Binary file removed tools/lib/poi-3.14-20160307.jar
Binary file not shown.
Binary file added tools/lib/poi-3.17.jar
Binary file not shown.
Binary file removed tools/lib/poi-ooxml-3.14-20160307.jar
Binary file not shown.
Binary file added tools/lib/poi-ooxml-3.17.jar
Binary file not shown.

0 comments on commit c4e7f53

Please sign in to comment.