kintone アプリのカスタマイズと、 Job Runner のカスタマイズを組み合わせれば実現可能です。
kintone アプリのカスタマイズで使用可能なコメント投稿の やること には下記の二つがありますが、いずれもコメント投稿できるのは1レコードのみです。
Job Runner で使用可能なコメント投稿の やること は下記です。
Job Runner のやること自体は1レコードに対してコメント投稿を行うのですが、条件「レコード1行が準備できた時」と組み合わせて使えば、コメントを投稿したい複数のレコードを1行ずつ取り出して、それぞれのレコードに対してコメントを投稿することができます。
今回はこの仕組みを使って、複数レコードに対してコメントを投稿します。
なお、Job Runner による処理はAdministratorの権限で行います。
そのため、コメントの投稿者は常にAdministratorになりますので、その点はご留意ください。
Job Runner のご利用が初めての方は、下記もご覧ください。
Job Runnerを利用するとき、初めにすること : ジョブへのスロット割り当てについて
はじめてのWebhookカスタマイズ : 関連レコードの集計
画面で選択したレコードにコメントを投稿するために、「kintone アプリのカスタマイズ」と、 Job Runner の「kintone アプリの Webhook のカスタマイズ」の二つのカスタマイズを作成する例をご紹介します。
なお、今回ご紹介する方法は組織間のアクセス権を有効にされているなどで kintoneのWebhook が使えない場合でもご利用いただけます。
全体の処理の流れは下記です。
kintone アプリのカスタマイズ
kintone の画面に配置したボタンが押されたら、コメントを投稿したいレコードを取得する
⇒今回は、関連レコード一覧に表示されたレコードを対象とします。kintone アプリの Webhookのカスタマイズを、2で取得したレコードを渡して起動する
kintone アプリの Webhook のカスタマイズ
渡されたレコードを取得する
レコードを1行ずつ取り出して、それぞれのレコードにコメントを投稿する
使用するkintoneアプリ
関連レコード一覧と、文字列(1行)フィールドの「コード」フィールドを配置したアプリです。
関連レコード一覧の設定は、自アプリのレコードで「コード」フィールドの値が同じレコードを表示しています。
アプリ名は「関連レコードで表示」です。
今回は、この関連レコード一覧に表示されているレコードに対してコメントを投稿します。
kintone アプリの Webhook のカスタマイズ作成
先にWebhookのカスタマイズを作成します。
Webhookのカスタマイズを作成すると、自動的に やること「kintone 接続設定を行う」と「Webhook を開始した時」のアクションが作成された状態で画面が表示されます。
ここで行うのは、コメント投稿先となるアプリへの接続設定です。
今回は「関連レコードで表示」アプリにコメントを投稿したいので、このアプリに対する接続設定を行います。
「APIトークン」はkintoneアプリの設定で生成し、コピー&ペーストしてください。
なお、コメント投稿に必要なAPIトークンのアクセス権は「閲覧」のみです。
次に、やること「Webhook から渡されたレコードを取得する」で渡されたレコードを取得します。
条件は「他のアクションの実行が完了した時」です。
次に、取得したレコードを1行ずつ取り出してコメントを投稿していきます。
やることは「レコードを指定してコメントを投稿する」、条件は「レコード1行が準備できた時」です。
「投稿先アプリ」には、コメントを投稿したい「関連レコードで表示」アプリを指定します。
「レコード番号」には、フィールド選択で「レコード番号」を指定しました。
条件に「レコード1行が準備できた時」を指定した場合、このアクションでは1レコードのみを対象にして処理ができるので、このようにフィールドコードのみを指定すると、今処理対象となっている1レコードの「レコード番号」フィールドの値を使用する、といったことができます。
「コメント」には、コメントとして投稿したい内容を記載してください。宛先の指定も可能ですが、今回は指定していません。
カスタマイズはこれで完了です。
「ジョブ生成・設定」ボタンを押して、ジョブを作成してください。
下記のような画面が表示されますが、今回はkintone自身のWebhookの機能を使わずにこのカスタマイズを呼び出すので、kintoneアプリに対するWebhookのURL登録は不要です。
キャンセルボタンで閉じておいてください。
kintone アプリのカスタマイズ作成
まずは、やること「ボタンをメニュー位置に配置する」で詳細画面にボタンを配置します。
このボタンを押した時にコメントを投稿します。
条件は「詳細画面を表示した時」を指定します。
ボタンが押されたら、コメントを投稿する対象としたい、関連レコード一覧に表示されているレコードを取得します。
やることは「関連レコード一覧の条件でレコードを取得する」、条件は「ボタンを押した時」を指定し、ボタンには先ほど配置したメニュー位置のボタンのやることを指定しておきます。
最後に、kintone Webhookのカスタマイズを呼び出します。
やることは「kintone Webhook を起動する」です。
「kintone Webhook のカスタマイズ」には、あらかじめ作成しておいたカスタマイズを選択してください。
「gusuku APIキー」は、gusuku 共通管理画面で生成してコピー&ペーストしてください。
「アプリ」には、今回コメント投稿の対象としたいレコードをもつアプリ、レコードにはアクション番号21で取得した、関連レコード一覧のレコードを渡します。
カスタマイズはこれで完了です。
「kintone アプリへ登録」ボタンを押し、カスタマイズの実行確認を行ってください。
なお、kintone Webhook のカスタマイズについては、実行後画面をリロードするといった事はできないため、処理後は少し待ってからブラウザの画面を手動でリロードして処理結果を確認してください。
また、何らかの問題でkintone Webhook のカスタマイズが正常に動作しなかった場合は、カスタマイズ画面で実行ログを確認してください。
kintone Webhook のカスタマイズの「ジョブ生成・設定」ボタンを押し、表示されたジョブ設定画面で「実行履歴」タブをクリックします。
実行履歴が記録されていますので、該当する行のログの列の「1」をクリックすると、実行結果のログを確認できます。
下記のキャプチャは正常に実行された場合の表示です。
エラーが発生し、正常に実行されなかった場合は「エラー」の列にエラーメッセージが表示されます。
以上で、kintoneアプリの画面で選択したレコードに対して、kintone Webhook のカスタマイズを使って一括でコメント投稿するカスタマイズについてのご紹介は終了です。
お試しいただいてご不明な点がございましたら、チャットでお気軽にお問合せください。