ワークスペース API - ServiceNow Fluent
ワークスペース API は、データを視覚的に整理および共有するための構成可能なワークスペースエクスペリエンスを定義します。
ワークスペース API は、ワークスペースの定義に応じて、UX アプリケーション [sys_ux_page_registry]、UX アプリ構成 [sys_ux_app_config]、UX アプリケーションカテゴリ M2M [sys_ux_registry_m2m_category]、UX ページプロパティ [sys_ux_page_property]、UX 画面コレクション [sys_ux_screen_type]、UX アプリルート [sys_ux_app_route]、 UX 画面 [sys_ux_screen]、および UX macroponent 定義 [sys_ux_macroponent]。
ダッシュボードは、ダッシュボードオブジェクトの可視化アレイから 1 つ以上のワークスペースを参照することによって、ワークスペースのホームページとして使用できます。 ダッシュボードを作成するには、「 ダッシュボード API - ServiceNow Fluent」を参照してください。
ワークスペースに関する一般的な情報については、「 Configurable Workspace UI」を参照してください。
ワークスペース オブジェクト
ユーザーがジョブ全体を完了できるように、1 つの重点的な作業領域でビジネスエンティティを管理するためのワークスペースを作成します。
| 名前 | タイプ | 説明 |
|---|---|---|
| $id | 文字列または数値 | 必須。メタデータオブジェクトの一意の ID。アプリケーションをビルドすると、この ID は一意のsys_idにハッシュされます。詳細については、「ServiceNow Fluent 言語構成」を参照してください。 形式: |
| title | 文字列 | 必須。ナビゲーションとヘッダーに表示されるワークスペースの名前。 |
| パス | 文字列 | 必須。ワークスペースの URL パスセグメント。ワークスペース URL はパターン /now/<path>/<landingPath> に従い、ケバブケースを使用します。 ワークスペースには、ワークスペースルートを保護するためのアクセス制御リスト (ACL) が必要です。Acl オブジェクトのフィールドプロパティは、このプロパティの値とワイルドカードパターン |
| テーブル | アレイ | 必須。ワークスペースで管理するテーブル名のリスト。 |
| リスト構成 | 参照 | 必須。ワークスペースのナビゲーション構造を定義する UxListMenuConfig オブジェクトの変数識別子。詳細については、「UxListMenuConfig オブジェクト」を参照してください。 |
| ランディングパス | 文字列 | ランディングページの URL パスセグメント。ワークスペース URL はパターン /now/<path>/<landingPath> に従い、ケバブケースを使用します。 デフォルト:home |
| アクティブ | ブール | ユーザーがワークスペースにアクセスできるかどうかを示すフラグ。 デフォルト:true |
import { Workspace } from '@servicenow/sdk/core';
const itsmWorkspace = Workspace({
$id: Now.ID['itsm_workspace'],
title: 'IT Service Management',
path: 'itsm',
tables: ['incident', 'problem', 'change_request', 'user', 'sys_user_group'],
listConfig: incidentListConfig
})
参照される UX リストメニュー構成は、 UxListMenuConfig オブジェクトを使用して定義されます。
UxListMenuConfig オブジェクト
ワークスペースのナビゲーション構造とリストビューの UX リストメニュー構成 [sys_ux_list_menu_config] を定義します。
カテゴリ アレイ
UX リストメニュー構成の関連リスト [sys_ux_list_category] のカテゴリを定義します。
| 名前 | タイプ | 説明 |
|---|---|---|
| $id | 文字列または数値 | 必須。メタデータオブジェクトの一意の ID。アプリケーションをビルドすると、この ID は一意のsys_idにハッシュされます。詳細については、「ServiceNow Fluent 言語構成」を参照してください。 形式: |
| title | 文字列 | 必須。ナビゲーションメニューに表示するカテゴリのタイトル。 |
| リスト | アレイ | 必須。カテゴリ内のリストビューのリスト。詳細については、「リスト アレイ」を参照してください。 |
| 順序 | 番号 | ナビゲーションメニュー内のカテゴリの位置を示す数字。番号が小さいカテゴリが最初に表示されます。 |
| アクティブ | ブール | カテゴリがナビゲーションメニューに表示されるかどうかを示すフラグ。 デフォルト:true |
| description | 文字列 | カテゴリの説明 |
categories: [
{
$id: Now.ID["incidents_category"],
title: "Incidents",
order: 10,
lists: [
{
$id: Now.ID["incidents_open"],
title: "Open",
order: 10,
condition: "active=true^EQ",
table: "incident",
columns: "number,short_description,priority,state",
applicabilities: [
{
$id: Now.ID["incidents_open_applicability"],
applicability: applicability
}
]
},
{
$id: Now.ID["incidents_all"],
title: "All",
order: 20,
condition: "",
table: "incident",
columns: "number,short_description,priority,state",
applicabilities: [
{
$id: Now.ID["incidents_all_applicability"],
applicability: applicability
}
]
}
]
リスト アレイ
UX リストメニュー構成のフィルタリングと列構成を使用して、テーブルデータ [sys_ux_list] のリストビューを定義します。
| 名前 | タイプ | 説明 |
|---|---|---|
| $id | 文字列または数値 | 必須。メタデータオブジェクトの一意の ID。アプリケーションをビルドすると、この ID は一意のsys_idにハッシュされます。詳細については、「ServiceNow Fluent 言語構成」を参照してください。 形式: |
| title | 文字列 | 必須。ナビゲーションメニューに表示するリストのタイトル。 |
| テーブル | 文字列 | 必須。リストに使用するテーブルの名前。 |
| columns | 文字列 | リストに表示する列名のカンマ区切りリスト。 |
| ステータス | 文字列 | リストに表示されるレコードをフィルタリングするためのエンコードされたクエリ文字列。 |
| 順序 | 番号 | カテゴリ内のリストの位置を示す数値。小さい番号のリストが最初に表示されます。 |
| アクティブ | ブール | リストをユーザーに表示するかどうかを示すフラグ。 デフォルト:true |
| 適用 | アレイ | リストを表示できるロールを制御する 適用性 オブジェクトの変数識別子のリスト。詳細については、「適用性 オブジェクト」を参照してください。 |
lists: [
{
$id: Now.ID["assets_active"],
title: "Active",
order: 10,
condition: "install_status=1",
table: "alm_asset",
columns: "asset_tag,display_name,model_category,assigned_to",
applicabilities: [
{
$id: Now.ID["assets_active_applicability"],
applicability: assetApplicability
}
]
},
{
$id: Now.ID["assets_all"],
title: "All",
order: 20,
condition: "",
table: "alm_asset",
columns: "asset_tag,display_name,model_category,assigned_to",
applicabilities: [
{
$id: Now.ID["assets_all_applicability"],
applicability: assetApplicability
}
]
}
]
適用性 オブジェクト
UX リストメニュー構成でリストを表示できる対象者 [sys_ux_applicability] を定義します。
| 名前 | タイプ | 説明 |
|---|---|---|
| $id | 文字列または数値 | 必須。メタデータオブジェクトの一意の ID。アプリケーションをビルドすると、この ID は一意のsys_idにハッシュされます。詳細については、「ServiceNow Fluent 言語構成」を参照してください。 形式: |
| name | 文字列 | 必須。適用性ルールの名前。 |
| 説明 | 文字列 | 対象者の説明。 |
| アクティブ | ブール | 適用性ルールが適用されているかどうかを示すフラグ。 デフォルト:true |
| roles | アレイ | ユーザーがリストを表示するために必要な ロール オブジェクトまたはロールのsys_ids変数識別子のリスト。詳細については、「ロール API - ServiceNow Fluent」を参照してください。 |
| roleNames | 文字列 | ユーザーがリストを表示するために必要なロール名のカンマ区切りリスト。このプロパティは、 roles プロパティの代替です。 |
import { Applicability } from '@servicenow/sdk/core';
const managerApplicability = Applicability({
$id: Now.ID['manager_applicability'],
name: 'Managers Only',
roles: [managerRole]
})
参照されるロールは、 Role オブジェクトを使用して定義されます。
import { Role } from '@servicenow/sdk/core';
const managerRole = Role({
$id: Now.ID['manager_user_role'],
name: 'x_snc_manager.user',
containsRoles: ['canvas_user']
})