指定アプリに対し、キーに一致するレコードがあれば更新し、なければ新しいレコードを追加します。
「追加先アプリ」「キーとなる更新先のフィールド」「キーの値となるこのアプリのフィールド」「マッピング」を設定します。
レコードを追加または更新するアプリを選択します。
レコードを取得する際のキーとなるフィールドを選択します。
テーブル内のフィールドは選択できません。
選択可能なフィールドタイプは以下の通りです。
「キーとなる更新先のフィールド」と比較する値を持ったフィールドを、カスタマイズ中のアプリのフィールドから選択します。テーブル内のフィールドも選択できます。
テーブル内のフィールドを選択した場合、「条件」で一致するすべての行に対して、順次更新/追加処理を実行します。
選択可能なフィールドタイプは以下の通りです。
レコードに登録する情報を入力します。
このパラメーターの詳しい記述方法はフィールドマッピングの記述方法を参照してください。
このマッピングでは @out を使用することができます。キーに一致するレコードがあった場合、@out はそのレコードを参照します。キーに一致するレコードがなかった場合、@out は空になります。
以下のフィールドは、値を登録できません。
キーに一致するレコードが存在する場合、そのレコードを上書き保存しようとしますが、その際、更新の競合はチェックされます。
この「やること」と似ている「レコードを更新する(キーの値をフィールドで指定)」では、更新の競合をチェックするかどうかは設定で選択可能ですが、この「レコードを更新または追加する(キーの値をフィールドで指定)」では競合をチェックしないようにはできません。
一方、キーに一致するレコードが存在しない場合、つまり新規レコードが作成される場合は、競合はチェックされません。
そのため、アクションを2人が同時に実行した場合、同じ内容の新規レコードが2つできてしまう可能性があります。これを避けたい場合、kintone アプリの設定で、キーとなるフィールドの「値の重複を禁止する」をオンにしておくことを強くお勧めします。
追加先アプリに「レコードの追加」条件で Webhook 通知を行うように設定されている場合、本「やること」を実行した結果レコードが追加されると、この通知が発生します。
「やること」の実行結果がレコード追加ではなく既存レコードの更新になった場合は、Webhook 通知は発生しません。