Incidencia #25761

ガントチャート画面で警告メッセージが表示される

Abrir Fecha: 2011-07-20 19:23 Última actualización: 2011-10-26 08:37

Informador:
(Anónimo)
Propietario:
Tipo:
Estado:
Cerrado
Prioridad:
5 - Medium
Gravedad:
5 - Medium
Resolución:
Fixed
Fichero:
Ninguno

Details

メニューからガントチャートを選択すると画面上にガントチャートが表示されるが、合わせて画面上部に警告メッセージも表示される。
・警告: カスタムフィールド'complete'が定義されていません。'complete'フィールドを定義してください

1.カスタムフィールドは初期状態のものに"text"と"select"を追加し、parentsを削除。
2.trac.iniのticket-customの最後にparentsの定義を追加し、TracLightningを再起動
3.チケットの新規作成→削除→新規作成/更新を複数回実施
4.メニューからガントチャートを選択

Ticket History (3/10 Histories)

2011-07-20 19:23 Updated by: None
  • New Ticket "ガントチャート画面で警告メッセージが表示される" created
2011-07-27 23:18 Updated by: okamototk
  • Propietario Update from (Ninguno) to okamototk
Comentario

ご報告ありがとうございます。

completeフィールドを削除していませんか? ガントチャートを利用するには、completeフィールドが必要となります。

ご確認の方、よろしくお願いします。

2011-07-29 13:06 Updated by: None
Comentario

バージョン 3.1.2 Beta2にバージョンアップした所、私の環境でも警告メッセージが表示されるようになりました。 今日 3.1.2 にしてみても同じです。 今まで問題なく使用出来ていましたので、当然completeフィールドは存在します。

2011-07-30 21:05 Updated by: jun66j5
  • Hito Update from (Ninguno) to 3.1.3 (cerrado)
  • Resolución Update from Ninguno to Fixed
Comentario

インストール直後の sample project でこの問題を確認できました。

お手元の環境で解消させるにはお手数ですが C:\TracLight\python\Lib\site-packages\TracGanttCalendarPlugin-0.5_r801-py2.6.egg\ganttcalendar\ticketgantt.py に以下のパッチを適用してもらうか、bitbucket にある ticketgantt.py からダウンロードしたファイルに差し替えて、再起動してください。

diff -r 5eb42d3e2cbf plugins/svn/ganttcalendar/ganttcalendar/ticketgantt.py
--- a/plugins/svn/ganttcalendar/ganttcalendar/ticketgantt.py    Thu Jul 28 18:45:26 2011 +0900
+++ b/plugins/svn/ganttcalendar/ganttcalendar/ticketgantt.py    Sat Jul 30 20:23:35 2011 +0900
@@ -13,6 +13,7 @@
 #from trac.util.translation import _
 from trac.config import IntOption, BoolOption, Option
 from trac import __version__
+from trac.util.compat import any
 from trac.util.translation import domain_functions


@@ -203,7 +204,7 @@
         show_ticket_status = req.args.get('show_ticket_status')

         ts = TicketSystem(self.env)
-        if not 'complete' in ts.get_custom_fields():
+        if not any(f['name'] == 'complete' for f in ts.get_custom_fields()):
             add_warning(req, _("'complete' field is not defined. Please define it."))
         normal_mode  = req.args.get('normal')
         current_mode = req.args.get('zoom')

2011-07-30 21:10 Updated by: okamototk
  • Resolución Update from Fixed to Ninguno
Comentario

なるほど...。ちょっとこちらの方で何度か試してみましたが、completeフィールドを定義した状態では再現させることができませんでした。

ガントチャート表示時のcompleteフィールドのチェックは、GanttCalenderプラグインのticketgantt.py中の下記の部分で行っています。

        ts = TicketSystem(self.env)
        if not 'complete' in ts.get_custom_fields():
            add_warning(req, _("'complete' field is not defined. Please define i
t."))
内容的には、チケットシステムが持つカスタムフィールド一覧を取得して、取得した一覧にcompleteフィールドが含まれているかどうかチェックしており、completeフィールドが含まれなければ概要のエラーメッセージをadd_warningで出力するようにしています。上記のコードを見る限り、completeフィールドが定義されている限り、エラーになるはずはないと思っています。

もし、もう少し詳細な再現条件や、そのときの状況などあれば教えてください。(問題が発生したときのプロジェクトのtrac.dbとtrac.iniを頂ければ、もう少し分析できるかも知れません)

よろしくお願いします。

2011-07-30 21:15 Updated by: okamototk
Comentario

おっと、jun66j5さんが修正してくれたようですね。失礼しました。

2011-07-30 21:15 Updated by: okamototk
  • Resolución Update from Ninguno to Fixed
2011-09-01 09:01 Updated by: None
2011-09-18 23:10 Updated by: jun66j5
2011-10-26 08:37 Updated by: okamototk
  • Ticket Close date is changed to 2011-10-26 08:37
  • Estado Update from Open to Cerrado

Attachment File List

No attachments

Editar

Please login to add comment to this ticket » Entrar