カスタマイズ

レコードを仕分けして別のアプリに登録する

概要

レコードをキー毎に分類・仕分けして、キーの値1つに対し1つのレコードを別のアプリに登録します。

同じキーに属するレコードは、新しく登録されるレコードのテーブルにテーブル行として追加されます。

使い方

事前に「クエリで条件を指定してレコードを取得する」などで仕分けした元のレコードを取得しておきます。

また、仕分けの結果を登録する先のアプリを用意しておきます。登録先のアプリにはテーブルが必須になります。

設定するパラメーター

「仕分け対象レコード」「仕分けキー」「更にテーブルを集約するキー」「登録先アプリ」「レコードに対するマッピング」「登録先テーブル」「テーブルに対するマッピング」を指定します。

仕分け対象レコード

仕分けしたいレコードを取得したアクションを指定します。このレコードが「仕分けキー」により仕分けされます。

元になるレコードの取得元アプリについて、特に制限はありません。カスタマイズ中のアプリやレコード登録先アプリと同じでも構いませんし、逆にどちらとも違うアプリでも指定可能です。

仕分けキー

「仕分け対象レコード」を仕分けする基準のフィールドを指定します。複数指定可能です。

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

  • 文字列(1行)
  • 数値
  • 計算
  • チェックボックス
  • ラジオボタン
  • ドロップダウン
  • 複数選択
  • リンク
  • 日付
  • 時刻
  • 日時
  • ルックアップ(文字列)
  • ルックアップ(数値)
  • ユーザー選択
  • 組織選択
  • グループ選択

ここで指定したフィールドの値が同じになっているレコードたちが1つの塊としてグループになり、「登録先アプリ」の1レコードとして登録されます。逆に、仕分けキーの値が異なるレコードは異なるグループとなり、「登録先アプリ」で異なるレコードとして登録されます。

仕分けキーに複数のフィールドを指定している場合、指定したすべてのフィールドの値が一致しているものが同じグループになります。

キーにチェックボックスやユーザー選択のように複数の選択が可能なフィールドを指定した場合、順序は無視して選択した項目がすべて一致していれば同じとみなします。

更にテーブルを集約するキー

「仕分けキー」によってグループに分けられたレコードに対して、さらにもう一段階グループ化したい場合に指定します。省略可能です。指定する場合は複数指定可能です。

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

  • 文字列(1行)
  • 数値
  • 計算
  • チェックボックス
  • ラジオボタン
  • ドロップダウン
  • 複数選択
  • リンク
  • 日付
  • 時刻
  • 日時
  • ルックアップ(文字列)
  • ルックアップ(数値)
  • ユーザー選択
  • 組織選択
  • グループ選択

「仕分けキー」によって分けられた各グループ内のレコードは、「登録先アプリ」のテーブル行にマッピングされます。この時、「更にテーブルを集約するキー」が指定されていると、このキーの値が同じ行は1行に集約してテーブルに登録されます。

キーにチェックボックスやユーザー選択のように複数の選択が可能なフィールドを指定した場合、順序は無視して選択した項目がすべて一致していれば同じとみなします。

登録先アプリ

仕分けされたレコードを登録する先のアプリを選択します。

レコードに対するマッピング

仕分けされたレコードと登録先レコードの間のマッピングを定義します。

このマッピングにおいて、

= フィールドコード

と記述した場合、フィールドコードは「仕分け対象レコード」のフィールドになります。

「仕分けキー」に指定されているフィールドは通常通り参照できますが、それ以外のフィールドは、複数のレコードの値が含まれた状態になります。したがって、max や min などの集計関数で集計したり、「= 文字列_1行[0]」のように最初のレコードを代表値として取る、というような書き方が必要になります。

こちらのマッピングでは、「更にテーブルを集約するキー」での集約はまだ行われていない状態なので、「更にテーブルを集約するキー」に入っているフィールドを参照する場合は、複数のレコードの値が含まれた状態になります。

登録先テーブル

仕分けでまとめられたレコードを登録する先のテーブルを選択します。

テーブルに対するマッピング

テーブルのデータをセットするマッピングを定義します。

このマッピングにおいて、

= フィールドコード

と記述した場合、フィールドコードは「仕分け対象レコード」のフィールドになります。

「仕分けキー」「更にテーブルを集約するキー」に指定されているフィールドは通常通り参照できますが、それ以外のフィールドは、複数のレコードの値が含まれた状態になります。したがって、max や min などの集計関数で集計したり、「= 文字列_1行[0]」のように最初のレコードを代表値として取る、というような書き方が必要になります。

Webhook 通知

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

制限事項

  • 既存のレコードを更新することはできません。常に新しい行が追加されます。

関連記事