JasperReports.NETのつづき
JasperReports.NETをちょっと改良?して、
propertiesファイルを使用しないようにした。
exeの直下にある、templateフォルダにjasper。pdfフォルダに出力されるようにした。
http://pluswing.net/down/JasperReports.net.v2.zip
このバージョンは、プロジェクトを開いて実行するか、
すでにexeがbin/Debugフォルダにできてるので、それを実行すればよろしい。
PDFが出力される。
なんかこれだけだと面白みがわからない?ので、
出力のサンプルコード(C#)
// クライアントの生成
JasperReportsClient client = new JasperReportsClient("test.pdf");
// ページの生成
JasperReportsPage page = new JasperReportsPage("test.jasper");
//パラメタ設定 int,long,double,DateTime,bool,IListのいづれかを設定可能。
page.Assign("param1", "data");
page.Assign("integer", 10);
page.Assign("long", 100000000L);
page.Assign("double", 3.14);
page.Assign("date", DateTime.Now);
page.Assign("bool", true);
IList
list = new List (); list.Add(10);
list.Add(20);
page.Assign("collection", list);
//ページを追加
client.Add(page);
// 2ページ目作成
page = new JasperReportsPage("test.jasper");
page.Assign("testParam", "2ページ目");
client.Add(page);
// PDF出力&生成後にPDFリーダで開く
client.Report(JasperReportsClient.EXPORT_TYPE.PDF, true);
// PDF出力 この場合は出力のみで開かない
//client.Report(JasperReportsClient.EXPORT_TYPE.PDF);
//プリンタに直接出力
//client.Report(JasperReportsClient.EXPORT_TYPE.PRINTER);
こんな感じでPDFが出力できる。
PHP版のクライアントコードも書いてみた。
一応動く版なので、しっかりしたものを再度公開する予定。
http://pluswing.net/down/JasperReports4PHP.zip
PHPの出力サンプルコード
require_once("JasperReports.php");
$client = new JasperReportsClient();
$page = new JasperReportsPage("test.jasper");
$page->assign("first", "10");
$page->assign("second", "210");
$page->assign("qwe", true);
$page->assign("rew", 10.35);
$page->assign("aaa", array(10, 20, 30, 40));
$page->assign("testParam", "出力されてますか?");
$client->add($page);
echo $client->report();
Javaとの連携なんて場面あんのかよ!という事以外は概ねいい感じ。