カスタマイズ

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

概要

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

使い方

設定するパラメーター

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

追加先アプリ

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

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

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

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

選択可能なフィールドタイプは以下の通りです。

  • 文字列(1行)
  • 数値
  • 計算
  • ラジオボタン
  • ドロップダウン
  • リンク
  • 日付
  • 時刻
  • 日時
  • ルックアップ(文字列)
  • ルックアップ(数値)
  • レコード番号

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

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

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

選択可能なフィールドタイプは以下の通りです。

  • 文字列(1行)
  • 数値
  • 計算
  • ラジオボタン
  • ドロップダウン
  • リンク
  • 日付
  • 時刻
  • 日時
  • ルックアップ(文字列)
  • ルックアップ(数値)
  • レコード番号

マッピング

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

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

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

制限事項

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

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

競合の検出について

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

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

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

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

Webhook 通知

追加先アプリに「レコードの追加」条件で Webhook 通知を行うように設定されている場合、本「やること」を実行した結果レコードが追加されると、この通知が発生します。

「やること」の実行結果がレコード追加ではなく既存レコードの更新になった場合は、Webhook 通知は発生しません。

関連記事