「To Do をガントチャートで表示する」
のガントチャートのカレンダー部に作業者を表示させたいと思い、記事のフィードパック欄に質問し、cybozu Development team様に回答頂きました。
https://developer.cybozu.io/hc/ja/articles/202640940?page=1#comment_360003869711
作業者フィールドのフィールドコードが
https://developer.cybozu.io/hc/ja/articles/202166330
上記リンクの冒頭に『作業者』とあったため、escapeHtml(records[i]['To_Do']['value']) の『To_Do』を『作業者』に変更したところ、ガンチャートが消えてしまいました。
フィールドコードの設定が間違っているとは思うのですが、どなたかご教授頂けませんでしょうか。宜しくお願い致します。
4件のコメント
sunshine さん
こんにちは。ひよこです。
作業者のフィールドコードはフォームの設定にないので、kintone が決めています。
なので、records[i]['作業者']['value']で合っています。
ただ、value は配列型です(作業者は複数人指定できるためです)
文字列(1行)の形式と作業者の形式を見比べると、value: 後の形が違い、オブジェクトの配列になっています。
文字列(1行)の形式
作業者の形式
なので、作業者フィールドは、オブジェクトの配列を文字列にするという処理が必要です。
この names をescapeHtml(records[i]['To_Do']['value']) の代わりに指定すれば、作業者が表示されると思います。
ひよこ さん
コメントバックありがとうございます。
ご教授頂いた内容で設定してみます。
また、当初はカレンダー部分に作業者を表示させたかったのですが、
社内で打ち合わせを行いまして、左端の太文字に作業者を表示させたいとなりました。
また、ガントチャートの並びも作業者順にしたいです。
そのようなことは可能でしょうか。
度々で申し訳ございません。ご教授お願い致します。
sunshine さん
こんにちは。ひよこです。
ガントチャートを表示するライブラリであるjQuery.Gantt のドキュメント http://taitems.github.io/jQuery.Gantt/ に、
どの設定値をいじればよいか書いてあるので、読んでみてください。
> ガントチャートの並びも作業者順にしたい
jQuery.Gantt の機能ではできないようです。
このカスタマイズだと、レコード一覧画面の表示イベントで取得できる event.records が表示対象なので
event.records の値(正確には、var records = event.records; に格納されているので、records ですね)
を並び替える処理をすればいいと思います。
# レコード一覧で「作業者」で並び替えられればよかったんですけど、ソート順に「作業者」は指定できないみたいですねー(配列だからでしょうけど)
> 左端の太文字に作業者を表示させたいとなりました。
116行目の name に指定する値が左側の太文字部分に反映されます。
なので、ここに最初のコメントに書いた 作業者名を結合したときの値(names)を設定すればいいと思います。
おはようございます。
ひよこさん 度々のご教授ありがとうございます。
http://taitems.github.io/jQuery.Gantt/ の存在は知りませんでしたので勉強してみます。