Categories: BackendJava

Catatan Jasper Report

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>

Catchword

Mengedit Template

Herbert Abdillah

Test

Recent Posts

Langchain JsonOutputParser Invalid json output Error

Sometimes json output from llm like this : {“key”: “value”}“` that langchain JsonOutputParser regex cant…

1 year ago

Ada Apa Didalam Sistem Operasi (Linux). Apa yang membedakan distribusi Linux seperti Ubuntu, Redhat, Alpine?

#include <stdio.h> int main() { FILE *f_ptr; char f_content[256]; char output[512]; f_ptr = fopen("/tmp/1337", "r");…

2 years ago

Convert OpenSSL 1 in Ruby Gem to OpenSSL 3

Version 3 have different interface Example: https://github.com/herbertabdillah/fabric-gateway-ruby/commit/c7377aaf2e62de1e2ac309965a09b5c7c72a2c7e

2 years ago

Catatan Belajar Ruby on Rails dari aliran Java dan Php

Telah di edit. Sumber Asli : https://twitter.com/nateberkopec/status/1250603032523370496/photo/1 Ruby on Rails merupakan framework web MVC menggunakan bahasa…

4 years ago

Deploy Spring Boot di Tomcat dan Berbagai Application Server Lain

Sebenernya spring boot sudah di embedd applicatoin server tomcat (hanya berisi web container, tidak bisa…

4 years ago

Mikrotik Custom DNS Record

// TODO IP -> DNS Static. Add New IP -> Firewall -> NAT. Klik Add New Action:…

4 years ago