eightban's memo

残しておきたい記事をまとめてみました。

JasperReports Talend

Talend Open StudioでJasperReport帳票を出力する ~ Talend

更新日:

JasperReportはjavaでプログラム作成して帳票を出力したりPDFを作成することができます。今回はtalend open studioで出力する方法を試します。

tJasperOutputExecは有名ですがサポートの終了しているiReportが必要のため他のコンポーネントを使います。

今回使用するコンポーネントは「tJasperReportExec」ですので、ユーザコンポーネントに追加しておいてください。

このコンポーネントはCSVでは取り込みができないので、XMLに変換してから取り込むことにします。

JOBの作成

 

リポジトリのペインのジョブの場所で右クリックしてメニューを出し、JOBの作成を選びます。

今回はフォルダを作ってから、その中に作成しました。

 

名前をいれてFinish

CSVファイルの設定

簡単なのでレポジトリから入力するCSVファイルのファイルの設定を行います。

メタデータ->区切り記号付きファイル->区切り記号付きファイルの作成

 

名前をつけてNext

 

入力ファイルを指定してNext

 

今回使用したファイルはUTF-8ですのでエンコードディングに「UTF-8」に設定し、ヘッダあり設定にしてFinish

 

作ったメタデータをデザインワークスペースにドラッグアンドドロップし、tFileInputDelimitedを選びOK

 

これで入力ファイルの設定ができました。

次のようにデザインワークスペース上で左クリック後、先頭の文字をいれて作ることもできます。

設計画面で一度マウスの左クリック、使いたいコンポーネントの先頭の文字を入力し出てきたコンポーネントから「tFileInputDelimited」を選びます。

 

コンポーネントタブにスキーマ情報が設定されています。

xmlファイルの出力

デザインワークスペース上で左クリック後、「tfileoutputx」と先頭の文字をいれてtFileOutputXMLを選びます。

 

設置されました。

 

tFileOutputXMLの内側を選び出力ファイルを設定します。

 

文字コードもUTF-8に変えておきます。

 

ここで、2つのコンポーネントを繋げます。tFileInputDelimited上で右クリックし ロウ->メイン を選び、tFileOutputXMLのところにカーソルを落とします。

つながりました。

PDFの出力

デザインワークスペース上で左クリックご先頭の文字をいれてtJasperReportExecを設置します。

 

設置できました。

 

tJasperReportExecの設定をします。

データソースはXML file、XMLfilleの場所の設定、jxml Fileはjasperreportで作成したものを持ってきます。出力はPDF、Localeはja、出力するフォルダを設定します。この設定ではreport_outの後ろに日付時間がついた出力ファイルになります。

 

tFileInputDelimited上で右クリックし「サブジョブがOKの場合」を選び、tJasperReportExecのところにカーソルを落とします。

 

つながりました。上のJOBが終わったらtJasperReportExecが実行されるという意味です。

実行

実行を押すと正常に完了しました。

 

PDFが作成されています。

 

中身もきちんと表示されています。

javaのプログラムを作成しなくてもtalendのみでJasperReportのPDFが作成できます。

外部コンポーネントは便利なものがありますので、探してみてください。

おまけ。JasperReportでのxmlファイルの設定

Xml用のDataAdapterを設定します。

File->New->DataAdapter

 

名前を入れてNext

 

XML document  を選びNext

 

 

 

XMLファイルの場所を指定、Use the report Xpath expression、日本語設定してから「test」して確認してください

成功したらfinish

 

 

アダプターを選び、LanguageはXpathとします。Read Fieldsとすると下に項目が表示されるのでOK

 

 

-JasperReports, Talend

Copyright© eightban's memo , 2018 All Rights Reserved Powered by STINGER.