YoomDBにレコード登録されたら起動し、特定のカラムですでに同一の値のものがあれば、それぞれのレコードに重複フラグを立てるフロー

■概要
・Yoomデータベースに対してレコードが登録された際に、登録情報に重複があるかどうかのフラグを立てるフローです。
・同じユーザーからの問い合わせや申込みなどで、ユーザーのレコード情報が重複しているかどうかを人目でわかるようにする際に使えるフローです。

■事前準備
①Yoomデータベース上に以下のようなテーブルを予め用意します。
・問い合わせや申込みフォームなどで取得した情報を追加するための列(列名)
・重複フラグを立てるための列(列名)

■作成方法
①フォームトリガーを選択し以下のような設定を行います。
・問い合わせや申込みに必要な質問項目を設定します。
・取得した値にはサンプルの値を入れ保存します。
※今回はフォームを例に上げていますが、トリガーはどのようなトリガーでも構いません。
※フォームの設定方法はこちら。 https://intercom.help/yoom/ja/articles/8009267
②+マークを押し、データベースを操作するオペレーションからYoomを選択して、以下の設定を行いテスト・保存します。
・アクション:レコードを追加するを選択します。
・対象のプロジェクトやデータベース、テーブル:対象の階層を選択し、使用するテーブルをセットします。
・追加するレコード値:表示された列名に対応する値を、①から取得したアウトプット項目を埋め込む形で入力します。
※アウトプットを動的に埋め込む方法はこちら。 https://intercom.help/yoom/ja/articles/8223528
③+マークを押し、データベースを操作するオペレーションからYoomを選択して、以下の設定を行いテスト・保存します。
・アクション:複数のレコードを取得する(最大500件)を選択します。
・対象のプロジェクトやデータベース、テーブル:対象の階層を選択し、使用するテーブルをセットします。
・取得したいレコード条件:重複条件として検索したい列名を設定し、①から取得した対応するアウトプット項目を埋め込み、等しいで検索します。
・詳細設定:「条件に一致するレコードが見つからない場合はオペレーションをエラーにする」をOFFにしておきます。
※今回はメールアドレスを重複の検索条件として使用しています。
④+マークを押して、分岐するオペレーションを選択し以下の設定を行います。
・オペレーション:③のオペレーションを設定します。
・アウトプット:③で取得したYoomレコードIDを設定します。
・条件:アウトプットが空である、を選択します。
・値:空白のままにします。
⑤+マークを押して、同じ処理を繰り返すオペレーションを選択し以下の設定を行います。
・オペレーション:③のオペレーションを設定します。
・アウトプット:③で取得したYoomレコードIDを設定します。
⑥ループと書かれた方向の+マークを押し、データベースを操作するオペレーションからYoomを選択して、以下の設定を行いテスト・保存します。
・アクション:レコードを更新するを選択します。
・対象のプロジェクトやデータベース、テーブル:対象の階層を選択し、使用するテーブルをセットします。
・取得したいレコード条件:条件をYoomレコードIDとして、⑤で取得したYoomレコードIDのループ変数というアウトプット項目を埋め込み、等しいで検索します。
・更新するレコード値:重複フラグの列の箇所に重複の設定を行います。(チェックボックスの場合、trueを入力します)

プロセス詳細

フォームトリガー 申し込み
データベースを操作する 最初にフォームで回答された内容をデータベースに追加する
データベースを操作する その後複数レコード取得で指定のカラム情報を用いて、ヒットするレコードを検索する
コマンドオペレーション レコードの取得で対象レコードがない場合はフローをここで終了する
コマンドオペレーション ヒットするレコードがあった場合は、取得したYoomレコードIDで同じ処理を繰り返す設定を行う
データベースを操作する 同じ処理を繰り返すから取得したYoomレコードIDを用いて、重複フラグのカラムを更新する
↑「ヒットするレコードがあった場合は、取得したYoomレコードIDで同じ処理を繰り返す設定を行う」にループバックします