Record Producer ４：Record ProducerのVariables（変数）について【ServiceNow】

※この記事はServiceNow初心者が学習用のために記載した記事です。内容について誤っている場合がございます。不足点などございましたらコメントいただけますと幸いです。

# Record ProducerのVariables（変数）とは
- Record Producerを開いて、画面下部にある、関連リストの一つ
- ユーザーが入力するフォームのフィールド
- ユーザーが入力した情報を 特定のテーブル（例: sys_user）に登録 したり、スクリプトで処理することが可能
- Record ProducerのVariablesは、実際には **item_option_new** （変数）というテーブルに格納される
    - 変数テーブルはほかにもある
    - ServiceNowでのサービスカタログアイテムやレコードプロデューサーでユーザーが実際に入力したデータ（変数の値）を格納するテーブル


# Variablesの主なフィールド名

| フィールド名          | 説明                                      | 型                  | データの例                          |
|----------------------|-----------------------------------------|--------------------|----------------------------------|
| Name                | 変数の内部名（スクリプトで使用）         | 文字列              | first_name                      |
| Question           | フォーム上で表示されるラベル             | 文字列              | First Name                      |
| Type                | 入力フィールドの種類                     | 選択式              | Single Line Text, Lookup Select Box |
| Order              | フィールドの表示順                       | 数値                | 100                              |
| Mandatory          | 必須入力かどうか                         | 真偽値（Boolean）   | true（チェックあり）             |
| Default Value      | 初期値                                    | 任意                | John                             |
| Help Text          | 入力フィールドの補足説明                 | 文字列              | Enter your first name.          |
| Reference          | 参照するテーブル（Lookup Select Box）    | テーブル名          | cmn_department（部署一覧）       |
| Lookup Value Field | Lookup時に取得するフィールド名           | 文字列              | Name                             |
| Read Only         | ユーザーが編集できるか（読み取り専用）     | 真偽値（Boolean）   | false（編集可）                 |
| Visible           | ユーザーに表示するか                      | 真偽値（Boolean）   | true（表示）                     |
| Max Length        | 入力できる最大文字数                      | 数値                | 50                               |
| Min Length        | 入力できる最小文字数                      | 数値                | 1                                |
| RegEx Validation  | 入力値のバリデーション用正規表現          | 文字列（正規表現）  | ^[a-zA-Z]+$（英字のみ）         |
| Tooltip           | フィールドの上に表示されるヒント           | 文字列              | This field is required.        |
| UI Policy         | UIポリシーの適用対象                      | UI Policy           | Apply read-only rule            |
| Variable Set      | 変数セット（複数の変数をまとめる）         | 参照（Variable Set） | User Information Set           |
| Choice List       | 選択肢リスト（ドロップダウンなど）         | 選択肢              | Yes, No                         |
| Multi Line        | 複数行の入力が可能か                      | 真偽値（Boolean）   | true（可能）                    |
| Encryption        | 暗号化が必要か                            | 真偽値（Boolean）   | false（不要）                   |
| Mask Type         | 入力をマスキングする形式（パスワード等）  | 文字列              | Password                        |
| Catalog UI Policy | カタログUIポリシー適用対象                 | 参照                | UI Policy                       |
| Applies To        | どのフォームに適用するか                  | 文字列              | Catalog Item, Record Producer  |

※なぜラベル名はQuestionというか？ユーザーがその変数に入力する内容に対して、「質問」としての役割を果たすため