Powered By

Skin Design:
Free Blogger Skins

Powered by Blogger

Cari Blog Ini

20 Oktober 2008

Terbilang pada Jasper Server

Kali ini saya mendapat tugas untuk menampilkan terbilang pada report yang dibuat via iReport. Logikanya sih sederhana, kita hanya perlu membuat function untuk mengkonversi dari nilai numerik menjadi kata-kata numerik.
Ada tiga pendekatan dalam kasus ini. Pertama adalah membuat membuat class (java) yang berisi fungsi ini dan menguploadnya ke database postgres (dengan PL Java). Dengan cara ini maka kita tinggal memanggil fungsi tersebut melalu sintaks query.

Select sayNumber(1000.0) as terbilang

Cara kedua, dalam kasus ini source data adalah database Adempeire, tambahkan field terbilang pada tabel yang diharapkan, dan isi field tersebut melalui aplikasi Adempiere. Dengan kata lain data yang dikirimkan ke report telah matang. Contoh fungsi di postgres yang menggunakan PL Java:

CREATE OR REPLACE FUNCTION adempiere.sayNumber(myNumber "numeric")
RETURNS "varchar" AS
'org.compiere.sqlj.Adempiere.sayNumber(BigDecimal)'
LANGUAGE 'java' VOLATILE;
ALTER FUNCTION sayNumber(myNumber "numeric") OWNER TO adempiere;

Cara ketiga adalah dengan menggunakan bantuan scriplet yang memangil fungsi sayInWords. Fungsi ini di simpan di class dan diupload ke JasperServer.


import net.sf.jasperreports.engine.*;
import guescriptlet.utils.*;//kumpulan fungsi untuk, termasuk fungsi sayNumber()

public class FormPembayaranScriptle extends it.businesslogic.ireport.IReportScriptlet {

/** Creates a new instance of JRIreportDefaultScriptlet */
public FormPembayaranScriptlet() {
}
public String sayinwords(double number){
return AmtInWords_IN.sayNumber(number); //fungsi dipanggil dari sini
}
}

5 komentar:

Anonim mengatakan...

Mas, saya kurang mengerti nih maksudnya buat function di Java lalu diupload ke database. Gmn cara uploadnya ya? Database yg saya gunakan MySql. Pliz dijawab ya mas. Tq. :)

Gue!Shindu mengatakan...

Klo mySQL saya ga tau pakai apa, tapi klo pake postgres bisa menggunakan PL Java, jadi seperti kita membuat function di database dengan language nya PLJava

Anonim mengatakan...

Mas saya kurang ngerti nih... boleh gak minta program yang jadinya????

Gue!Shindu mengatakan...

Nah di atas itu kan dah program jadi? tinggal di compile aja.

noer_manizz mengatakan...

mas, masih bingung nih,kalo di ireport atau di queri bisa gk??
saya pake postgresql nih...
lagi bungung cara ngerubah field angka jadi huruf...
tolong jelasin lebih detail lagi dari awal bisa gk??
thx..