はじめに
こちらの記事ではWebhookを使い、Excel/PDF出力の時間を待たない「特定のステータスに変更したとき、Excel/PDF出力を行う」カスタマイズをご紹介します。
Excel/PDFの出力は、出力する添付ファイル数などによって出力に時間がかかる場合があります。通常でしたら、出力中を示すダイアログが表示され処理を待つことになるのですが、ケースによっては、出力したものは添付ファイルに保存されていて後程確認できれば良い、ということがあると思います。そういった場合にぜひご利用ください。
Webhookを使わないカスタマイズ記事はこちら →「特定のステータスに変更したとき、Excel/PDF出力を行う」
※初めてWebhookを使ったカスタマイズを作成される場合は、まずはこちらの記事でカスタマイズ手順をご確認いただくのがオススメです。 →「はじめてのWebhookカスタマイズ : 関連レコードの集計」
アプリ構成
今回は、kintoneアプリストアに用意されている「交通費申請」アプリを使います。
アプリの構造や出力するテンプレートの構造は、Webhookを使わない「特定のステータスに変更したとき、Excel/PDF出力を行う」カスタマイズと同じ構成を利用しています。
具体的なアプリの設定は上記ページをご覧ください。
Customineの設定
以下のステップでカスタマイズを作成していきます。
kintone接続設定を行う
Webhookから渡されたレコードのステータスによって処理する/しないを判断する
PDFを出力する
出力したPDFを添付ファイルフィールドに添付する
では、詳しく手順を見ていきましょう。
1.kintone接続設定を行う
「Webhookを開始した時」に「kintone接続設定を行う」で、「交通費申請」アプリと「Excel・テンプレート」アプリに接続できるよう設定を行います。この時それぞれのアプリのAPIトークンには下記の権限を持たせておいてください。
交通費申請アプリ:閲覧、編集権限
Excel・テンプレートアプリ:閲覧権限
2.Webhookから渡されたレコードのステータスによって処理する/しないを判断する
「Webhookから渡されたレコードを取得する」が完了したタイミング(「他のアクションの完了した時」)に、取得した(交通費申請アプリの)レコードのステータスが『承認』であれば、「キーを指定してレコードを取得する」処理を行います。
「キーを指定してレコードを取得する」では「Excel・PDFテンプレートアプリ」から出力するテンプレートを取得します。
3. PDFを出力する
テンプレート取得後、「PDFを出力する」で ファイル名【申請者名 - タイトル】となるPDFを出力します。
4. 出力したPDFを添付ファイルに添付する
PDFの出力後、「フィールドに値をセットする」を使い、添付ファイルフィールド(承認済み内容)にPDFを添付します。
以上でカスタマイズは完了です!
続いて、「ジョブ生成・設定」にてkintone側でステータス更新が行われたときにWebhookが送信されるように設定を行います。
Webhookの設定が完了しましたら、動作を確認してみてください。
おまけ
ここまでのカスタマイズだけでも出力は行われますが、操作する人から見ると「出力されているのか」「いつ添付ファイルを確認すれば良いのか」分からないですよね?
そこで、kintoneアプリのカスタマイズで「プロセス管理のアクションを実行した時」(『承認』に更新した時)に、出力を開始すること・後程時間を空けてリロードしてもらうことを「情報ダイアログを表示する」カスタマイズもしておきましょう。
※このカスタマイズを行う場合、Job Runner用・kintoneアプリ用の2アプリスロットを利用することになります。
まとめ
いかがでしょうか?プロセス管理のステータスが『承認』になった時に出力開始のダイアログが表示され、少し時間を空けてリロードすると出力されたPDFが添付ファイルに添付されましたか?
出力時間を画面を開いたまま待ちたくない!という方はぜひこのカスタマイズをご利用くださいね。
もし分からないことがありましたら、お気軽にチャットサポートまでご質問ください。