Railsで使えるGem RubyOnRailsで帳票印刷

Rails3で帳票印刷を試す~thinreports

投稿日:2012年10月22日 更新日:

Thinreports

thinreportsはPDFを帳票作成するためのgem.
別に無料でダウンロードできるThinreports Editorでひな形を作成して、Rubyでひな形に値を代入してPDFを作成する機能を持つ.

www.thinreports.org/

github.com/thinreports/thinreports-rails3-example

とりあえずサンプルを試してみた

READMEに書かれているとおりに

で、http://サーバのアドレス:3000にアクセス

見慣れた感じの画面が出てくる

ここのPrint Tasksを押すとタスクの一覧のpdfが表示される

タスクの状態を変更すると黒字に変わる

詳細画面を表示するとPrintというリンクがあるのでこれをクリックすると

詳細についてのPDFが作成される

 

ソースを見てみる1~詳細画面

Controller

format.pdfというのが追加されている ここで使っているrender_to_stringというのがthinreportsが定義しているメソッド

dispositionというのはブラウザ内でpdfを表示させるか(inline)、pdfをダウンロードさせるか(attachment)

Views

viewには.pdf.thinreportsと.tlfというファイルがある

tlfファイルは別配布のソフトで制作するレイアウトファイル

thinreportsファイルはレイアウトファイルで指定されているidに代入する値を定義するファイル

thinreportsファイルの中身はこんな感じ

で、レイアウトファイルを別配布のThinreports Editorで開くとこんな感じ

 

 

保存>レイアウト定義をエクスポートすれば簡易仕様書が自動生成されてIDの一覧などが出力される

 

ソースを見てみる2~一覧表

Controller

一覧表の方は違う出力の仕方をやっている

まず、indexの方でprivateメソッドを定義して

あとで見るが、レイアウトではテーブルを作成できて任意の数の行を挿入できる

ここではadd_rowというメソッドでデータの数だけ行を作成してる

ついでに、各リストの状態ごとに色を変えている

これをindexメソッドのformatで呼んでいる

Views

ちなみにこのメソッドで使うレイアウトはapp/reports/に保存していて上記のプライベートメソッドでレイアウトの場所を指定している

-Railsで使えるGem, RubyOnRailsで帳票印刷
-, , ,

執筆者:

関連記事

sunspot_railsで全文検索

sunpotはsolrというJava製の全文検索サーバをrubyから使えるGem sunspot_rails はsunspotにマージされてました 参考 railscasts.com/episodes

RubyでTwitter〜twitter & t

By: Pete Simon – CC BY 2.0 目次1 はじめに2 twitter.gemのインストール3 Twitterアプリへの登録4 サンプルから試してみる5 cliでTwit …

TwitterBootstrapでアイコンが微妙な感じだったらFontAwesomeを試してみるといい

かもしれない fortawesome.github.com/Font-Awesome/ hallojsで使ってるのは上 github.com/bokmann/font-awesome-rails gi …

文字をダブルクリックしてそのままフォーム編集するやつのメモ~in place edit

By: the Italian voice 目次1 Best in place2 Mercury editor3 create.js4 スクラッチで5 X-editable Best in place …

Rails3.2でみたまま編集 〜hallo editor

  By: Fabio Marini – CC BY 2.0 文字をダブルクリックしてそのままフォーム編集するやつのメモ~in place edit 文字をダブルクリックしてその …