3.5.1 カスタムデータモデル
データモデルアプリケーションの[カスタムデータモデル]タブについて説明します。
[カスタムデータモデル]タブでは、ユーザーがOps Iに登録したデータモデルの一覧の参照や、データモデルに登録されたデータ(レコード)の変更ができます。
ユーザーが作成したカスタムテーブル、またはカスタムビューをここでは「カスタムデータモデル」と呼びます。
カスタムテーブル、カスタムビューの詳細は「データモデルの種類」を参照してください。
データモデルアプリケーションを利用するには、Primitiveロール「custom_data_model_admin」が付与されている必要があります。カスタムデータモデルに対するグループ、顧客によるアクセス制御はできません。Primitiveロール「custom_data_model_admin」が付与されたユーザーは、表示可能なカスタムデータモデルすべてにアクセスできます。
(1)操作の流れ
【レコードの参照・追加・編集・削除】
[カスタムデータモデル一覧]画面から各カスタムデータモデルのレコードを表示し操作する流れを以下に示します。
- [カスタムデータモデル一覧]画面の表示:
[カスタムデータモデル]タブから[カスタムデータモデル一覧]画面を表示します。ここではカスタムデータモデルの一覧を参照できます。
詳細は「[カスタムデータモデル一覧]画面」を参照してください。 - カスタムデータ保守画面の作成:
指定したカスタムデータモデルのレコードを表示するための「カスタムデータ保守画面」を作成します。カスタムデータ保守画面を作成しないとカスタムデータモデルのレコードを参照することができません。
詳細は「[レコード一覧でデフォルトで表示するカラムの選択]ダイアログ」を参照してください。 - [レコード一覧]画面での操作:
指定したカスタムデータモデルの[レコード一覧]画面を表示し、レコードの追加、削除を行います。
詳細は「[レコード一覧]画面」、「[レコード追加]画面」を参照してください。 - [レコード詳細]画面での操作:
指定したレコードの詳細を表示し、レコードの参照、編集、削除を行います。
詳細は「[レコード詳細]画面」を参照してください。
注意事項
- DatamodelのYAMLファイルを編集しカスタムデータモデルを変更した場合は、必ずカスタムデータ保守画面の再作成が完了してからレコードを操作してください。DatamodelのYAMLファイルで設定したカスタムデータモデルの構造と、カスタムデータ保守画面に不整合がある場合、意図しないデータが保存されるおそれがあります。
- あらかじめ用意されているテーブル「ticket_create_table」は、Ops Iのシステム内部で使用されています。ユーザーによる操作は行わないでください。
- カスタムデータ保守画面では、カスタムテーブルの継承は1段階までサポートされます。継承の設定を行ったカスタムテーブルを基にカスタムデータ保守画面を作成した場合、表示・操作できるカラムは、1段階上のテーブルまでとなります。
例:
- テーブルAを継承したテーブルB
- テーブルBを継承したテーブルC
そのため、2段階以上の継承構造を前提としたカスタムデータ保守画面の作成はサポートされていません。継承の設定については、「Datamodel」を参照してください。
一度登録したカスタムデータモデルの削除は推奨しません。それでも削除したい場合は、以下の手順で行ってください。
カスタムデータモデルの削除はDatamodelのYAMLファイルの削除、またはYAMLファイル内のカスタムテーブル、カスタムビューの定義を削除することにより行います。 カスタムデータモデルの削除は、そのカスタムデータモデルのカスタムデータ保守画面が作成されていると行えないため、作成済の場合はカスタムデータモデルを削除する前にカスタムデータ保守画面を削除します。
カスタムデータ保守画面の削除は[画面を削除]ボタンから行います。ボタンについては「(表)[カスタムデータモデル]タブの画面構成」を参照してください。
削除が正常に行われた場合、カスタムデータモデルの画面ステータスは未作成時と同じ「Uninitialized」になります。削除が正常に行われてからカスタムデータモデルを削除してください。画面ステータスについては「(表)[カスタムデータモデル一覧]の項目」を参照してください。
カスタムデータ保守画面を削除する前に、誤って先にカスタムデータモデルを削除してしまった場合、以下の手順で対処をしてください。
① 削除前と同じ内容のkindが"datamodel"のYAMLファイルを再度コミットする。
② GitOpsログで対象ファイルの「result」が「recovered」になっていることを確認する。
③ カスタムデータ保守画面を削除する。
④ 削除が成功していることを確認した後、カスタムデータモデルを削除する。
メモ削除に失敗したカスタムデータモデルおよびDatamodelのYAMLファイル、削除に失敗したものと同名のカスタムデータモデルおよびDatamodelのYAMLファイルは使用できません。新たにカスタムデータモデルを作成して使用してください。なお、削除に失敗した記録はGitOpsログに残りますが、他の設定には影響ありません。
復旧ができず、かつカスタムデータモデルを削除したい場合は、サポートサービスにお問い合わせください。
(2)画面の説明
各画面の操作については以下を参照してください。
a. [カスタムデータモデル一覧]画面
データモデルアプリケーションを選択すると、[カスタムデータモデル]タブに[カスタムデータモデル一覧]画面が表示されます。
| 構成要素 | 説明 |
|---|---|
| [画面を作成]ボタン | カスタムデータ保守画面を作成します。クリックすると、[レコード一覧でデフォルトで表示するカラムの選択]ダイアログが開きます。クリックする前に設定を行うカスタムデータモデルのラジオボタンを選択してください。 |
| [画面を削除]ボタン | カスタムデータ保守画面を削除します。ボタンをクリックする前に、削除するカスタムデータモデルのラジオボタンを選択してください。削除前に確認のダイアログが表示されます。 |
| [カスタムデータモデル一覧] | カスタムデータモデルの一覧が表示されます。 |
■[レコード一覧でデフォルトで表示するカラムの選択]ダイアログ
ここでは[レコード一覧]画面でデフォルトで表示するカラムを指定します。
この設定をすることにより、カスタムデータ保守画面が作成されます。
カスタムデータ保守画面のUIのYAMLファイルが作成されたことは、GitOpsログで確認できます。GitOpsログのname列に以下の名称でログが表示されます。
- [レコード一覧]画面:opsi_カスタムデータモデル名_browser
- [レコード詳細]画面:opsi_カスタムデータモデル名_browser
- [レコード追加]画面:opsi_カスタムデータモデル名_record_new
カスタムデータモデルごとに必要な設定のため、レコード一覧でデフォルトで表示するカラムを一度も設定していない場合、[カスタムデータモデル一覧]画面からカスタムデータ保守画面へ遷移できず、エラーが表示されます。カスタムデータ保守画面は、必要に応じて更新できます。
カラムの選択肢は、カスタムデータモデルのすべてのカラムです。カスタムデータモデルのカラムとは、DatamodelのYAML定義でtables.columnsまたはviews.columnsに設定したカラムを指します。
カラムについて、以下の項目が表示されます。初期状態が「表示」の項目がデフォルトで表示されます。
(表)[レコード一覧でデフォルトで表示するカラムの選択]ダイアログの項目
| 項目 | 初期状態 | 説明 |
|---|---|---|
| チェックボックス | 表示 | [レコード一覧]画面にデフォルトで表示させる場合チェックする |
| 名前 | 表示 | カスタムデータモデルのカラムの内部名 DatamodelのYAML定義のtables.columns.nameまたはviews.columns.nameラベルの値が表示される |
| ラベル | 表示 | カスタムデータモデルのカラムの表示名 DatamodelのYAML定義のtables.columns.labelまたはviews.columns.labelラベルの値が表示される |
| 説明 | 表示 | カスタムデータモデルのカラムの詳細説明 DatamodelのYAML定義のtables.columns.descriptionまたはviews.columns.descriptionラベルの値が表示される |
| タイプ | 表示 | カスタムデータモデルのカラムのタイプ DatamodelのYAML定義のtables.columns.descriptionまたはviews.columns.typeラベルの値が表示される |
| デフォルト値 | 表示 | デフォルトで設定されている値 DatamodelのYAML定義のtables.columns.defaultラベルの値が表示される |
| 主キー | 非表示 | カスタムデータモデルのカラムが主キーかどうかを示す DatamodelのYAML定義のtables.columns.primaryラベルがtrueの場合、主キーとしてチェックされる。主キーの設定を行わないカスタムビューの場合はチェックされない状態で表示される。 |
カスタムデータモデルの一覧が表示されます。
カスタムデータモデルについて以下の項目が表示されます。初期状態が「表示」の項目がデフォルトで表示されます。
| 項目 | 初期状態 | 説明 |
|---|---|---|
| カスタムデータモデルID | 非表示 | カスタムデータモデルのID 自動的に割り振られる番号。クリックするとカスタムデータモデルに登録されたレコードの一覧が表示される。 |
| カスタムデータモデル名 | 表示 | カスタムデータモデルの内部名 DatamodelのYAML定義のtables.nameまたはviews.nameラベルの値が表示される。クリックするとカスタムデータモデルに登録されたレコードの一覧が表示される。 |
| タイプ | 表示 | カスタムデータモデルのタイプ tableまたはviewが表示される。 |
| ラベル | 非表示 | カスタムデータモデルの表示名 DatamodelのYAML定義のtables.labelまたはviews.labelラベルの値が表示される。 |
| 説明 | 表示 | カスタムデータモデルの詳細説明 DatamodelのYAML定義のtables.descriptionまたはviews.descriptionラベルの値が表示される。 |
| データモデルID | 非表示 | カスタムデータモデルを定義したDatamodelのYAML定義のID 自動的に割り振られる番号 |
| データモデル名 | 表示 | カスタムデータモデルを定義したDatamodelのYAML定義の内部名 DatamodelのYAML定義のnameラベルの値が表示される。 |
| データモデルのラベル | 非表示 | カスタムデータモデルを定義したDatamodelのYAML定義の表示名 DatamodelのYAML定義のlabelラベルの値が表示される。 |
| データモデルの説明 | 非表示 | カスタムデータモデルを定義したDatamodelのYAML定義の詳細 DatamodelのYAML定義のdescriptionラベルの値が表示される。 |
| データモデル作成日時 | 表示 | カスタムデータモデルを定義したDatamodelのYAML定義の作成日時 |
| データモデル作成者 | 非表示 | カスタムデータモデルを定義したDatamodelのYAML定義の作成者 |
| データモデル更新日時 | 表示 | カスタムデータモデルを定義したDatamodelのYAML定義の更新日時 |
| データモデル更新者 | 非表示 | カスタムデータモデルを定義したDatamodelのYAML定義の更新者 |
| 画面ステータス | 表示 | カスタムデータ保守画面の設定ステータス 以下のいずれかが表示される。
|
| 画面作成日時 | 非表示 | カスタムデータ保守画面の作成日時 画面が作成された場合、自動的に入力される。 |
| 画面作成者 | 非表示 | カスタムデータ保守画面の作成者 画面が作成された場合、自動的に入力される。 |
| 画面更新日時 | 非表示 | カスタムデータ保守画面の更新日時 画面が更新された場合、自動的に入力される。 |
| 画面更新者 | 非表示 | カスタムデータ保守画面の更新者 画面が更新された場合、自動的に入力される。 |
注意事項
- [レコード一覧]画面への遷移は画面ステータスが「Build_succeeded」の状態で行ってください。カスタム保守画面の作成をやり直しても「Build_succeeded」にならない場合はサポートにお問い合わせください。
- カスタムデータモデルを削除する場合は画面ステータスが「Uninitialized」の状態で行ってください。
- 1つのDatamodelのYAMLファイル内で複数のカスタムデータモデルを定義している場合、そのうちのどれか1つだけを更新した場合でも、画面ステータスは「Drifted」になります。
- 以下の画面ステータスの場合、画面の作成または削除が行われています。ステータスが5分以上変化しない場合を除き、新たに画面の作成または削除を行わないでください。
- Pending:作成の待機中
- Building:作成中
- Destructing:削除中
b. [レコード一覧]画面
[カスタムデータモデル一覧]画面のカスタムデータモデルID、またはカスタムデータモデル名をクリックすると[レコード一覧]画面が表示され、選択したカスタムデータモデルに登録されたレコードの一覧が表示されます。
ここではレコードの編集は行えません。
一覧表のカラムはチェックボックスと[レコード一覧でデフォルトで表示するカラムの選択]ダイアログで設定した項目がデフォルトで表示されます。非表示のカラムを一覧表で表示させることもできます。レコードのIDをクリックすると、[レコード詳細]画面が表示され、レコードの参照、編集、削除ができます。[レコード詳細]画面を参照するには、レコードのIDを表示させてください。
カスタムビューは参照のみできます。
| ボタン | 説明 |
|---|---|
| 追加 | クリックすると[レコード追加]画面が表示されます。詳細は「[レコード追加]画面」を参照してください。 |
| 削除 | チェックボックスをチェックすることにより活性化し、クリックするとレコードを削除します。 削除できなかったレコードは一覧で表示されます。 |
c. [レコード詳細]画面
[レコード一覧]画面のレコードのIDをクリックすると、[レコード詳細]画面が表示されレコードの編集が行えます。ただし、ワークフローにひもづいているレコードと、カスタムビューのレコードの削除、編集は行えません。カスタムビューのすべてのレコードは削除、編集が行えないため[削除]ボタン、[保存]ボタンともに表示されません。
| ボタン | 説明 |
|---|---|
| 削除 | 表示しているレコードを削除します。確認ダイアログで[OK]ボタンをクリックすると削除が確定します。 |
| 保存 | レコードのフィールドに対する編集を確定させます。 |
[レコード一覧でデフォルトで表示するカラムの選択]ダイアログで設定したカラムに加え、以下を追加したフィールドが表示されます。
| 項目 | 説明 |
|---|---|
| ID | レコードのID:自動的に割り振られる番号 |
| 顧客 | レコードに設定された顧客:編集可能 |
| 作成日時 | レコードの作成日時:自動的に設定される |
| 作成者 | レコードの作成者:自動的に設定される |
| 更新日時 | レコードの更新日時:自動的に設定される |
| 更新者 | レコードの更新者:自動的に設定される |
d. [レコード追加]画面
[レコード一覧]画面の[追加]ボタンをクリックすると[レコード追加]画面が表示されます。
[レコード一覧でデフォルトで表示するカラムの選択]ダイアログで設定したカラムに加え、「顧客」のフィールドが表示されます。
画面の上部の以下の操作ボタンで、レコードの追加について確定、またはキャンセルができます。
| ボタン | 説明 |
|---|---|
| 保存 | レコードの追加を確定します。 |
| キャンセル | レコードの追加をキャンセルします。 |