FC2ブログ

徒然さめざめ

思ったことを思ったときに思ったように

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Redmine hack! - チケット一覧のcsv出力に履歴も載せる -

チケット一覧のcsv出力にチケットの履歴(ジャーナル)も載せる方法

ただし履歴が多いと列の多いcsvになるのでご注意を。

Index: app/helpers/issues_helper.rb
===================================================================
--- app/helpers/issues_helper.rb (リビジョン 2679)
+++ app/helpers/issues_helper.rb (作業コピー)
@@ -160,7 +160,8 @@
l(:field_done_ratio),
l(:field_estimated_hours),
l(:field_created_on),
- l(:field_updated_on)
+ l(:field_updated_on),
+ l(:field_description)
]
# Export project custom fields if project is given
# otherwise export custom fields marked as "For all projects"
@@ -168,7 +169,7 @@
custom_fields.each {|f| headers << f.name}
# Description in the last column
headers << l(:field_description)
- csv << headers.collect {|c| begin; ic.iconv(c.to_s); rescue; c.to_s; end }
+ csv << headers.collect {|c| begin; c.to_s.tosjis; rescue; c.to_s; end }
# csv lines
issues.each do |issue|
fields = [issue.id,
@@ -190,7 +191,13 @@
]
custom_fields.each {|f| fields << show_value(issue.custom_value_for(f)) }
fields << issue.description
- csv << fields.collect {|c| begin; ic.iconv(c.to_s); rescue; c.to_s; end }
+ Journal.find(:all,
+ :conditions => ["journalized_id= ?", issue.id],
+ :order => :created_on).map(&:notes).uniq.each do |note|
+ fields << "#{note}\x0D\x0A"
+ end
+# csv << fields.collect {|c| begin; ic.iconv(c.to_s); rescue; c.to_s; end }
+ csv << fields.collect {|c| begin; c.to_s.tosjis; rescue; c.to_s; end }
end
end
export.rewind
スポンサーサイト

テーマ:プログラミング - ジャンル:コンピュータ

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://fmkt.blog65.fc2.com/tb.php/89-69a7a39b
この記事にトラックバックする(FC2ブログユーザー)

FC2Ad

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。