レコード変数

レコード変数は、データベース、スプレッドシート、またはテーブルから抽出されたデータの行を、name-field ペアで保持します。これらのフィールドでは、Boolean、日時、数値、または文字列データ タイプの各値を格納できます。

レコード変数の使用

レコード変数は、取得したデータの単一行を格納するために、ループ アクション 内でよく使用されます。インデックス番号や名前を指定することで、単一値にアクセスできます。インデックス番号は、name-field ペアの位置です。名前は、変数が初期化されたときに構成されるか、またはソース テーブルの列ヘッダーから抽出されます。

下表に例を示します。

CustomerName 市町村
Dana Pittsburgh
Sam Los Angeles
Alex Boston
この例では、Bot が前のテーブルをループして、各行を rCurrentRow に割り当てます。各行の最初の列から値を取得するには、インデックス番号 $rCurrentRow[0]$ または名前 $rCurrentRow{CustomerName}$ を使用します。
注: レコード変数から日時値を取得し、それを文字列として使用するには、レコード変数を アクション フィールド内の文字列値と連結します。

スキーマ

スキーマは、レコード フィールドのテンプレートのようなものです。フィールドの順序と、各フィールドに入力できるデータ タイプを設定します。

新しいレコード変数の作成時に [スキーマを設定] オプションを選択すると、実行時に次の条件が適用されます。実行時には、Bot がデータ行を取得し、それをレコード変数に格納します。
  • 取得した値は、設定済みのフィールド データ タイプと一致する必要があります。

    たとえば、データセット [{"name":"Sally"},{"id":002},{"dob":03/05/1989}] は、スキーマ [{"name":String},{"id":Number},{"dob":Date}] を持つレコード変数に割り当てることができます。

  • データセットの属性は、同じ順序と大文字/小文字の区別に従う必要があります。

    たとえば、データセット [{"name":"Henry"},{"id":003},{"dob":06/13/2001}] は、スキーマ [{"id":Number},{"name":String},{"dob":Date}] または {"Name":String},[{"ID":Number},{"DOB":Date}] を持つレコード変数に割り当てることはできません。

  • レコード変数は、フィールドの順序が同じ場合、設定済みのフィールドのスーパーセットを受け入れることができます。

    たとえば、データセット [{"name":"Alex"},{"id":004},{"dob":12/10/1995},{"pet":"yes"}] は、スキーマ [{"name":String},{"id":Number},{"dob":Date}] を持つレコード変数に割り当てることができます。

  • レコード変数はデータのサブセットを受け入れません。

    たとえば、データセット [{"id":005},{"dob":05/21/1975}] は、スキーマ [{"name":String},{"id":Number},{"dob":Date}] を持つレコード変数に割り当てることはできません。

Bot がレコード変数スキーマに適合しないデータの行に遭遇した場合、Bot は失敗します。これにより、Bot が間違ったデータや無効なデータを次の アクション に渡すことが防止されます。