データモデルのビルド
アプリケーションのデータモデルをサポートするテーブルとテーブル上のフィールドを作成します。
ServiceNow 新しいテーブルごとに 5 つのフィールドが自動的に追加されます。新しいフィールドには、テーブルに関する自動入力された情報が含まれます。
| フィールド名 | データベース名 | 説明 |
|---|---|---|
| 作成者 | sys_created_by | このレコードを作成したユーザー |
| 作成済み | sys_created_on | レコードが作成された日時。 |
| 更新者 | sys_updated_by | レコードを最後に更新したユーザー。 |
| Sys ID | sys_id | レコードの一意の識別子。インスタンス全体で一意です。 |
| 更新 | sys_mod_count | レコード作成以降のレコードの更新回数をカウントする数値フィールド。 |
新しいテーブルは、既存のテーブルを拡張して、拡張されるテーブルからフィールドと機能を継承できます。拡張されるテーブルのコンポーネントを追加および変更します。最も一般的に拡張される ServiceNow テーブルは、タスクテーブルです。詳細については、「When to create a new table vs. when to extend (新しいテーブルを作成するタイミングと拡張するタイミング)」および「Exploring ServiceNow AI Platform® tables」を参照してください。
この例では、文字列フィールドタイプがユーザーの名前に使用されています。[Caller] フィールドはインシデントレコードごとに異なりますが、問い合わせユーザーは同じ人物である可能性があります。テーブルのユーザー名に文字列フィールドタイプを使用しないでください。
文字列フィールドの代わりにユーザーテーブルを参照する参照フィールドタイプを使用します。ユーザーは、[Caller] フィールドで一貫性のあるレコードを 1 つ選択する必要があります。
参照フィールドは、ServiceNow の別のテーブルの日付を正規化することで、データの一貫性を確保します。ServiceNow には、2000 を超える参照可能なベースラインテーブルがあります。付録には、アプリをビルドするためによく使用されるテーブルがいくつかリストされています。
| フィールドタイプ | 説明 |
|---|---|
| 整数 | 数値を格納し、計算で使用できます。 |
| 通貨 | 通貨値を保持し、ログインしているユーザーの通貨で値を表示します。 |
| 電話番号 | E164 準拠の電話番号に対する検証と書式設定を含めます。 |
| 参照 | 別のテーブルのレコードを表示し、データの正規化に役立ちます。 |
| 選択肢 | 事前定義された選択肢のリストを含む選択ボックスを表示します。選択リストに含めるアイテムは 10 未満にする必要があります。 |
| 日付 | 日付ピッカーで選択された日付値を保存します。特定の時刻が必要ない場合は、[日付] を使用します。 |
| 日付/時刻 | 日付と時刻ピッカーで選択された日付と時刻の値を保存します。特定の時刻を比較する場合、または正確な時刻が重要な場合は、日付/時刻を使用します。 |
| 文字列 | 自由形式テキストを保持します。フィールドに格納されている値と一致するフィールドタイプが他にない場合は、文字列を使用します。 |
選択リストまたは参照フィールド
選択リストと参照フィールドはどちらも、ユーザーがリストから値を選択する方法を提供します。選択リストは、名前と値のペアです。ユーザーが名前から選択すると、選択した選択肢の値がフィールドに保存されます。スクリプトはこの値を使用します。選択肢の名前/値のペアを追加および削除して、オプションのリストを管理します。
参照フィールドはテーブルを指します。テーブルの選択肢を管理します。参照フィールドに格納される値は、参照されるレコードの sys_id です。
- このフィールドに 10 を超える選択肢が必要。
- 選択肢が定期的に変更される。
- アドミン以外のユーザーが選択肢を管理する必要がある。
- フィールドの値は、意思決定ロジックに影響する。たとえば、フローデザイナーの意思決定テーブルなどです。
- データには、さまざまなフィールド間に複数レベルの依存関係があり、複雑で扱いにくい選択肢フィールドの組み合わせにつながる可能性がある。
- 選択肢に、複数の名前/値のペアが必要。たとえば、ユーザーレコードを参照すると、参照元のテーブルにメールや部門などの他のユーザーの詳細へのアクセス権が付与されます。
- フィールドに必要なデータを含むテーブルが既に存在する。