レコードを更新または追加する(キーの値をフィールドで指定)

概要

指定アプリに対し、キーに一致するレコードがあれば更新し、なければ新しいレコードを追加します。

使い方

設定するパラメーター

「追加先アプリ」「キーとなる更新先のフィールド」「キーの値となるこのアプリのフィールド」「マッピング」を設定します。

追加先アプリ

レコードを追加または更新するアプリを選択します。

キーとなる更新先のフィールド

レコードを取得する際のキーとなるフィールドを選択します。

テーブル内のフィールドは選択できません。

キーの値となるこのアプリのフィールド

「キーとなる更新先のフィールド」と比較する値を持ったフィールドを、カスタマイズ中のアプリのフィールドから選択します。テーブル内のフィールドも選択できます。

テーブル内のフィールドを選択した場合、「条件」で一致するすべての行に対して、順次更新/追加処理を実行します。

マッピング

レコードに登録する情報を入力します。

このパラメーターの詳しい記述方法はフィールドマッピングの記述方法を参照してください。

このマッピングでは @out を使用することができます。キーに一致するレコードがあった場合、@out はそのレコードを参照します。キーに一致するレコードがなかった場合、@out は空になります。

制限事項

以下のフィールドは、値を登録できません。

  • チェックボックス
  • 複数選択
  • 添付ファイル
  • ユーザー選択
  • 組織選択
  • グループ選択
  • テーブル

競合の検出について

キーに一致するレコードが存在する場合、そのレコードを上書き保存しようとしますが、その際、更新の競合はチェックされます。

この「やること」と似ている「レコードを更新する(キーの値をフィールドで指定)」では、更新の競合をチェックするかどうかは設定で選択可能ですが、この「レコードを更新または追加する(キーの値をフィールドで指定)」では競合をチェックしないようにはできません。

一方、キーに一致するレコードが存在しない場合、つまり新規レコードが作成される場合は、競合はチェックされません

そのため、アクションを2人が同時に実行した場合、同じ内容の新規レコードが2つできてしまう可能性があります。これを避けたい場合、kintone アプリの設定で、キーとなるフィールドの「値の重複を禁止する」をオンにしておくことを強くお勧めします。