やること「レコードを書き出す」 と同様に複数レコードを対象にレコードを追加・更新することが可能なのが、やること「レコードを1つずつ書き出す」です。
やること「レコードを書き出す」との違いは、1レコードずつ書き出し処理を行うため、kintoneでWebhook通知の送信が可能な点です。
それ以外の機能は、やること「レコードを書き出す」と同じですので、以下の利用シーン以外の場合はやること「レコードを1つずつ書き出す」ではなく、やること「レコードを書き出す」を選択するようにしましょう。
この記事では、やること「レコードを1つずつ書き出す」を用い、「案件管理」アプリの一覧画面でチェックをつけた案件に対し、営業担当者をログインユーザーに一括更新するカスタマイズを作ります。またこの時併せてkintoneでWebhook通知の送信がされます。実行例は次のようになります。
「レコードを1つずつ書き出す」の利用シーン
kintoneでWebhook通知の送信ができると、どういった事が実現できるのでしょうか?
たとえば、次のような利用シーンが考えられます。
kintoneのレコード追加をきっかけとして連携サービスを利用したいとき。
kintoneでのWebhook通知の送信を利用して、他システムにデータ連携したいとき。
カスタマインのkintoneアプリのWebhookのカスタマイズを動かしたいとき。
ほかにも、kintoneでのWebhook通知の送信を利用した処理を動かしたいときが、利用シーンとして考えられます。
カスタマイズ例
1つ前の記事()で、チェックを付けたレコードに対して、担当者を一括変更する例を紹介しました。この方法だとレコードの一括更新がスムーズに行えるのですが、Webhookの通知が送信されません。
こういった時に、やること「レコードを1つずつ書き出す」を利用すると、一度にまとめて更新しつつ、1件毎にWebhook通知を送信することができます。
アプリ
カスタマイズ例を確かめるためには、次のアプリを作成します。
※今回動かすのに必要最低限となるフィールドのみ記載しています
案件管理
※フィールド名とフィールドコードは同じものを指定
カスタマイズ
カスタマイズは「案件管理」アプリに対して行います。
また、アクションは次のように設定してください。
チェックボックス列を追加する
やること「一覧にチェックボックス列を追加する」、条件「一覧画面を表示した時」を用います。
ボタンを配置する
やること「ボタンをメニュー位置に配置する」、条件「他のアクションの実行が完了した時」を用います。
ボタンを押された時に一覧で選択されたレコードを取得する
やること「一覧で選択されたレコードを取得する」、条件「ボタンを押した時」を用います。
ログインユーザーを取得する
やること「ログインユーザーを取得する」、条件「他のアクションの実行が完了した時」を用います。
更新してよいか確認ダイアログを表示して確認する
やること「確認ダイアログを表示する」を用います。
「レコードを書き出す」でレコードを更新する
やること「レコードを書き出す」、条件「確認・入力ダイアログで「OK」を押した時」を用います。
また、「やること」のパラメータは、書き出し先アプリに「案件管理」アプリを設定し、フィールドマッピングは次の要領(ログインユーザーを取得したアクションの実行結果を指定する形)で設定します。
画面表示中のレコードが更新されているので、リロードする
やること「画面をリロードする」を用います。
解説
やること「レコードを書き出す」に似ていますが、やること「レコードを書き出す」はレコードをまとめて処理するのに対し、やること「レコードを1つずつ書き出す」では1レコードずつ処理する点が違います。そのため、扱うレコード件数が多い場合はkintone APIリクエスト数が多くなりやすく、処理時間も長くなりやすいです。
このため、原則としてやること「レコードを書き出す」を使用するようにし、Webhook通知の送信を作動させたい場合にのみ、やること「レコードを1つずつ書き出す」を選ぶようにしましょう。
注意点
kintone の仕様によりWebhookの通知は、ドメイン単位で1分間に60回まで送信されます。1分間に60回を超えてレコードを操作すると、61回目以降の操作ではWebhookの通知が送信されません。
この制限はアプリ単位ではなくドメイン単位での制限であることは意識しておきましょう。
参考:Webhookを使ってみよう - cybozu developer network
おわりに
この記事では、やること「レコードを1つずつ書き出す」を用いたレコード更新のカスタマイズをご紹介しました。
やること「レコードを1つずつ書き出す」は、Webhook通知の送信を作動させる事ができるレコード処理の「やること」になります。ぜひうまく活用して
また、ご不明点等ございましたら、チャットにてご質問ください!







