redmine2.4 ガントチャートへカスタムフィールドを表示したい

2,242 views
Skip to first unread message

jun

unread,
Jul 4, 2014, 7:05:29 AM7/4/14
to redmine-...@googlegroups.com
ガントチャートに担当者を表示するのは以下を参照に出来ています。

同じ様に任意にカスタムフィールドを表示したく、
カスタムフィールドの値を取得する方法を参考にトライしているのですが
上手くいきません。

対応方法をご教示下さい。

nobu_toyofuku

unread,
Jul 8, 2014, 2:21:35 AM7/8/14
to redmine-...@googlegroups.com

2014年7月4日金曜日 20時05分29秒 UTC+9 jun:

例えば表示したいカスタムフィールドの名前が custom1 だったとしたら
以下のようにしたらどうでしょう。
うまくいかないとしたらどううまくいきませんか。
・エラーが出る
・エラーにはならないがカスタムフィールドの値が正しく表示されていない
とか。

diff -u lib/redmine/helpers/gantt.rb.org lib/redmine/helpers/gantt.rb
--- lib/redmine/helpers/gantt.rb.org
+++ lib/redmine/helpers/gantt.rb
@@ -382,6 +382,9 @@
           end
           s << view.link_to_issue(issue).html_safe
           subject = view.content_tag(:span, s, :class => css_classes).html_safe
+          cf_name = "custom1"
+          cv = issue.custom_field_values.detect {|c| c.custom_field.name == cf_name}
+          subject << " - #{cv.value}" if cv
           html_subject(options, subject, :css => "issue-subject",
                        :title => issue.subject, :id => "issue-#{issue.id}") + "\n"
         when :image
 

jun

unread,
Jul 10, 2014, 8:52:24 PM7/10/14
to redmine-...@googlegroups.com
+          cf_name = "custom1"

単純に上記のところだけで、再起動出来ません。
フィールど名は
 カスタムフィールドで設定した名称(日本語:漢字 書式はテキスト)を
""で括っています。
cf_name = "担当者"

何か考慮が必要ですか?

nobu_toyofuku

unread,
Jul 11, 2014, 12:36:56 AM7/11/14
to redmine-...@googlegroups.com

2014年7月11日金曜日 9時52分24秒 UTC+9 jun:
フィールど名は
 カスタムフィールドで設定した名称(日本語:漢字 書式はテキスト)を
""で括っています。
cf_name = "担当者"

カスタムフィールド名を "担当者" にして試したら確かに
lib/redmine/helpers/gantt.rb:385: invalid multibyte char (US-ASCII) (SyntaxError)
lib/redmine/helpers/gantt.rb:385: invalid multibyte char (US-ASCII)
lib/redmine/helpers/gantt.rb:385: syntax error, unexpected $end, expecting keyword_end
          cf_name = "担当者"
というエラーになりました。日本語だとまずいですね。

カスタムフィールドの番号(例えば次の例では 3番とする)を使って
+          cf_id = 3
+          cv = issue.custom_field_values.detect {|c| c.custom_field.id == cf_id}

+          subject << " - #{cv.value}" if cv
のようにすれば日本語の問題は回避できます。

・カスタムフィールドの番号の調べ方
「管理」=>「カスタムフィールド」=>「担当者」
でカスタムフィールド「担当者」の設定画面に行ってそのときの URL が
  .../redmine/custom_fields/3
のようになっていると思いますがこの最後の番号(この例では 3)が
カスタムフィールドの番号です。

ところで BitNami Redmine のエラーログがどこに残るか気になっているのですが
lib/redmine/helpers/gantt.rb:385: invalid multibyte char (US-ASCII) (SyntaxError)
lib/redmine/helpers/gantt.rb:385: invalid multibyte char (US-ASCII)
lib/redmine/helpers/gantt.rb:385: syntax error, unexpected $end, expecting keyword_end
          cf_name = "担当者"
のような今回のエラー情報が
logs/production.log かどっかに残っていませんか。
---

 

jun

unread,
Jul 11, 2014, 3:35:03 AM7/11/14
to redmine-...@googlegroups.com
カスタムフィールドの番号(例えば次の例では 3番とする)を使って
+          cf_id = 3
+          cv = issue.custom_field_values.detect {|c| c.custom_field.id == cf_id}
+          subject << " - #{cv.value}" if cv
のようにすれば日本語の問題は回避できます。

ありがとうございます。
上記方法で上手くいきました。

この項目を先頭に出したい場合
(カテゴリ>id(#)>題名、担当者)を(担当者>カテゴリ>id(#)>題名)としたい。

欲を言えば、カテゴリ無し(担当者>d(#)>題名)としたいのですが

ご教示いただけますか?
 
ところで BitNami Redmine のエラーログがどこに残るか気になっているのですが
lib/redmine/helpers/gantt.rb:385: invalid multibyte char (US-ASCII) (SyntaxError)
lib/redmine/helpers/gantt.rb:385: invalid multibyte char (US-ASCII)
lib/redmine/helpers/gantt.rb:385: syntax error, unexpected $end, expecting keyword_end
          cf_name = "担当者"
のような今回のエラー情報が
logs/production.log かどっかに残っていませんか。
---

上記情報はログ上に残っていませんでした。
 gantt.rb 又は  "担当者" で 検索させたのですが。

情報まで・・
 
Reply all
Reply to author
Forward
0 new messages