2019年3月7日0件のコメントGMOアドマーケティングA.Yです。記事を加筆修正したものです。社内ではBacklogとJIRAというふたつのチケット管理ツールを使っています。Backlogはとても使いやすいチケット管理ツールですが、唯一の欠点は、時間管理機能が貧弱ということ・・・。日毎の時間集計をすることができないんです。いつ、誰が何をしていたか、工数集計をすることができません。いって、いちいちふたつのチケット管理ツールを開いて、JIRAに時間を入力させるのもちょっとなぁ、と思って時間連携ツールを作ることにしました。実装それでは、GASで実装していきます。**と記載されているところは、環境ごとに設定してください。Main.gsメインとなるクラス。ここで上記の「やりたいこと」に書いてある処理を順次呼んでいきます。Sheet上の実行ボタン押すと実行される。メンバーには帰りがけにポチッと押して貰う想定。チケットがない場合は作成する。Sheet上の実行ボタン押すと実行される。メンバーには帰りがけにポチッと押して貰う想定。チケットがない場合は作成する。error.stack);}}GetBacklog.gsBacklogから課題を取得します。JSON.parse(result.getContentText());}ProcessJira.gsJIRAをBacklog課題キーをつかって検索し、ない場合はJIRAのチケット作成、ある場合はBacklogに記入された時間をJIRAに連携します。人数分設定してください。ここでは一例として「Backlog課題番号」というカスタムフィールドに、Backlog課題キーをセットしている前提です。JIRAが受け取れる形式にTimestampを整形してあげる。人数分設定してください。ここでは一例として「Backlog課題番号」というカスタムフィールドに、Backlog課題キーをセットしている前提です。JIRAが受け取れる形式にTimestampを整形してあげる。jira_key);}}地味にハマったことJIRAのREST-APIはv2とv3があります。v3のほうはいまだベータ版であり、エラー・メッセージが間違っていたり、ざっくりしすぎていることがあります。僕の場合自分のリクエストがどう間違っているかわからずとてもハマりました。JIRAのapiドキュメントはときどきリンクが間違っていて、v2のドキュメントを見ているはずが、v3のドキュメントにリンクされていたりします。URLで見分けましょう。https://developer.atlassian.com/cloud/jira/platform/rest/v2/JIRAのapiドキュメントには、Exampleという項目がありrequestパラメータ例が書いてありますが、フォーマット定義から自動生成されています。そのままrequest投げても動きません。イメージです(笑)しかしこのときの僕は知りませんでした。あんなに楽な方法があったなんて。最新の記事あおんたSIコンサルティング会社上がりのPHP/Javaエンジニア。マネジメントとコーディングをしながら、業務効率化を進めるのが好き。最近はZapier(ザピエル)という連携ツールが大好物。アマチュア無線・BCL受信・カセットテープデッキのメンテ修理・登山とか。写真は飼っている文鳥のおつゆちゃん。ついてSIコンサルティング会社上がりのPHP/Javaエンジニア。マネジメントとコーディングをしながら、業務効率化を進めるのが好き。最近はZapier(ザピエル)という連携ツールが大好物。アマチュア無線・BCL受信・カセットテープデッキのメンテ修理・登山とか。写真は飼っている文鳥のおつゆちゃん。@gmoap_engineer本ブログで発信される情報は、各エンジニア個人の見解であり、弊社の公式見解ではありません。本ブログに掲載、引用等をしている商品またはサービス等の名称は、各社の商標または登録商標です。その他の事項について一切責任を負いかねます。発表する情報には注意を払っておりますが、公式発表、見解については、弊社WEBサイトおよびプレスリリースなどをご確認ください。GMOインターネットグループにおけるソーシャルメディア運用ポリシーについては次のページをご確認ください。本ブログに掲載のあるソフトウェアのダウンロードは自己責任で御願い致します。ソフトウェアのダウンロードの結果、ご利用者に何らかの損失・損害が生じたといえども、当社ではその責任を負いかねます。本ブログに掲載のあるソフトウェアを扱う際は、各ソフトウェアの公式リファレンスを参照のもとご使用下さい。ソフトウェアの実行の結果、ご利用者に何らかの損失・損害が生じたといえども、当社ではその責任を負いかねます。