アプリ間連携
kintoneで別アプリのレコードを保存時に自動更新する方法
「案件アプリを保存したら、顧客マスタの最新ステータスも一緒に書き換えたい」「進捗アプリの値を、別の管理アプリへそのまま反映したい」。kintone を使い込むほど、こうしたアプリ間でデータを更新したい場面が増えてきます。ところが標準機能だけだと、別アプリの値を見ることはできても、書き込んで更新するのは思った以上に難しいのです。この記事では、その理由と、JavaScript を書かずに解決する方法を整理します。
ルックアップと関連レコードでできること
kintone には、別のアプリと連携するための標準機能が2つあります。関連レコード一覧とルックアップです。どちらも便利ですが、役割はあくまで「参照」に限られます。
- ルックアップ: 別アプリのレコードから値を取り込む。たとえば顧客コードを入力すると、顧客マスタから会社名や住所をコピーしてくる。
- 関連レコード一覧: 条件に合う別アプリのレコードを、詳細画面に一覧として差し込んで表示する。
注意したいのは、これらが取り込んだ側のアプリに値を表示するだけだという点です。ルックアップで顧客マスタの名前を取り込んでも、それは「今のアプリ」に名前を表示しているだけで、顧客マスタ側のレコードは一切変わりません。関連レコードも同様に、相手アプリを読み取って見せているだけです。
標準では「別アプリを更新する」のが難しい理由
つまり、kintone の標準機能は「別アプリから読む(参照する)」方向には強い一方で、「別アプリへ書く(更新する)」方向の仕組みを持っていません。プロセス管理やアクションも、操作の対象は基本的に今開いているアプリのレコードであって、別アプリのレコードを保存と同時に書き換えることはできないのです。
そのため、これまでは API を叩く JavaScript カスタマイズを書くしかありませんでした。レコード保存イベントを拾い、検索キーで相手アプリを問い合わせ、ヒットしたレコードを更新する——という処理を自前で組む必要があり、非エンジニアには手が出しにくい領域でした。入力チェックのカスタマイズと同じく、「やりたいことは単純なのにコードが要る」典型例です。
JavaScript なしでアプリ間更新を自動化する
この「保存時に別アプリの 1件を更新する」処理を、設定だけで実現できるのがアプリ間レコード更新プラグインです。コードは書きません。
設定するのは大きく3つです。まず、いま操作しているアプリ側と更新先アプリ側で「どの項目を突き合わせの目印にするか」を決めます。たとえば両アプリの顧客コードどうしを目印にします。次に、更新先のアプリを指定します。最後に、いま開いているレコードのどの値を相手のどの項目へ反映するか、項目の対応づけ(たとえばステータス → 最新ステータス)を登録します。これで、レコードを保存するたびに、目印が一致する相手アプリのレコードへ必要な値だけが自動で書き込まれます。
マスタや進捗管理アプリへ「いま開いているレコードの値を 1件だけ確実に反映したい」というケースに向いており、初期設定は 10分ほどが目安です。
誤った相手を書き換えない安全設計
このプラグインは鍵で一致したレコードがちょうど 1件のときだけ更新します。これは「狙ったレコードだけを確実に書き換え、それ以外には絶対に触れない」という安全設計です。次のように、判断に迷う場面ではあえて自動更新を行いません。
- 0件のとき: 更新先が見つからなければ、勝手に新規作成したりせず、保存を止めて知らせます。意図しないレコードが増えません。
- 複数件のとき: 鍵で複数ヒットすると、どれを書き換えるべきか機械には決められないため、誤って別の相手を上書きしないよう保存を止めます。
- 得意分野は「1 対 1 の確実な反映」: 一度の保存で複数のレコードをまとめて書き換える一括更新には向きませんが、その分「狙った 1件だけを正確に更新する」精度が高いのが強みです。
鍵が一意になるよう設計されたマスタ更新や進捗反映なら、誤った相手を書き換える心配がほとんどなく、安心して自動化を任せられます。まずは小さなアプリで鍵と項目対応を試し、運用に合うか確かめてから本番に広げるのがおすすめです。
よくある質問
ルックアップや関連レコードで別アプリを更新できますか?
できません。ルックアップは別アプリの値を取り込む、関連レコード一覧は別アプリのレコードを一覧表示する機能で、どちらも参照(読み取り)専用です。相手アプリのレコードに書き込んで更新する仕組みは標準にはありません。
JavaScript を書かずにアプリ間更新を自動化できますか?
できます。アプリ間レコード更新プラグインなら、検索キーと反映する項目の対応を画面で設定するだけで、保存時に別アプリの対象レコードへ値を反映できます。コードは不要です。
更新先が見つからない、または複数あるとどうなりますか?
鍵で一致したレコードがちょうど 1件のときだけ更新します。0件や複数件がヒットした場合は、誤った相手を書き換えないよう保存を止めて知らせます。複数件の一括更新には向きません。
kintone 活用のヒントをメールで
新しい使い方の記事や新プラグインのお知らせを月数回お届けします(配信解除はいつでも)。
この課題を解決するプラグイン
アプリ間レコード更新(保存時に別アプリを更新)
保存時に、鍵が一致する別アプリのレコード 1件へ必要な値だけを反映。JavaScript を書かず、参照だけでは届かなかったアプリ間のデータ更新を自動化できます。30日間はカード登録なしで全機能を試せます(終了後は自動で無料プランに戻り、勝手に課金されません)。
全プラグインを定額でまとめて使うなら Pro プランも。料金プランを見る