Table Of Contents[ Hide ]
JasperReport adalah library reporting untuk membuat file docx, pdf, csv, xls. Berbeda dengan aspose/poi yang langsung berinteraksi dengan API microsoft office. Jasper menggunakan engine sendiri.
// TODO
HTML Tag
Jasper support html tag di textfield nya. Namun tidak semua tag di support. dan bold dan italic harus di ubah dulu tag nya.
public static String convertHtmlTagToJasper(String text) {
String newText = text;
newText = newText.replace("<strong>", "<b>");
newText = newText.replace("</strong>", "</b>");
newText = newText.replace("<em>", "<i>");
newText = newText.replace("</em>", "</i>");
return newText;
}
Print Tabel Menggunakan ArrayList (bukan datasource/database)
Menggunakan parameter dengan type ArrayList<String>
<subDataset name="tableDataset">
<property name="com.jaspersoft.studio.data.defaultdataadapter" value="One Empty Record"/>
<parameter name="tableDatasetParam" class="java.util.ArrayList" nestedType="java.lang.String"/>
</subDataset>
<jr:table>
<datasetRun subDataset="tableDataset">
<datasetParameter name="tableDatasetParam">
<datasetParameterExpression><![CDATA[$P{kepadaArray}]]></datasetParameterExpression>
</datasetParameter>
<dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.JREmptyDataSource($P{tableArray}.size())]]></dataSourceExpression>
</datasetRun>
<jr:column>
<property/>
<jr:detailCell>
<property/>
<textField>
<reportElement/>
<textFieldExpression><![CDATA[$P{tableDatasetArray}.get($V{REPORT_COUNT} - 1)]]></textFieldExpression>
</textField>
</jr:detailCell>
</jr:column>
</jr:table>