#概要
同じチョイスリストを複数のフィールドで利用したい場合があります。
本記事ではその方法について、説明します。
結論から言うと、ディクショナリ定義にある、Choice Table と Choice Filed という項目で、使いたいチョイスリストが定義されているフィールドを指定することで、同じチョイスリストを使うことができます。
#設定手順
Problem テーブルに新規に Category (内部名: u_category) というフィールドを追加し、そこのチョイスリストとして、Incident テーブルの Category (内部名: category) にすでに定義されているチョイスリストを使いたい場合を例に取り、手順を説明します。
以下、英語モードで行うことを前提に説明しています。
1 System Definition > Tables に行き、Problem テーブルを検索して、開きます
2 Columns セクションの Table Columns リストの歯車マークをクリックし、Column name, Choice, Choice table, Choice field の4つを表示するカラムとして追加します。
3 Column name を「u_」で検索し、u_category というフィールドを追加していないことを確認します。
4 「Insert a new row」の部分をダブルクリックして、行を追加し、以下の値を入れていきます。
項目 | 値 |
---|---|
Column label | Category |
Type | Choice |
Choice table | incident |
Choice field | category |
5 Problem テーブルのレコードを Save し、Column name、Choice にそれぞれ適切な値が自動的に入ることを確認します。
6 Related list にある、「Show form」から、Problem フォームを開き、メインセクションの最下部に追加されている Category フィールドのチョイスリストが、Incident の Category と同じものになっていることを確認します。
以上です。
#補足
###補足1
Madrid 以降で開始したインスタンスですと、「Problem Management Best Practice - Madrid」というプラグインがデフォルトで Install されており、この場合、Problem テーブルにデフォルトで Category (内部名: category) というフィールドが存在しますので、本手順を試してみる時は間違わないようにしてください
###補足2
Type を Choice ではなく、String にしても動きますが、その場合、その場合、Choice に「Dropdown with -- None --」が自動的に入らないので、こちらも設定する必要があります
###補足3
リスト画面上ではなく、Dictionary 定義のフォーム画面上でも Choice table, Choice field の設定は可能ですが、デフォルトの UI Policy で表示、非表示が制御されています。
私が試したところでは、以下の手順でフォーム上でも入れることができました。
Type を Choice にし、Advanced view にした後、Choice List Specification セクション内の Choice で「-- None --」を選択すると、Choice table フィールドが出てくるので、設定。
その後、Choice を「Dropdown with -- None --」に設定すると、Choice table が消え、Choice field が出てくるので、設定。
###補足4
Problem テーブルにさらに、Subcategory (内部名 u_subcategory) を追加し、Incident の Subcategory と同じチョイスリストを使うように設定した後、Problem の u_subcategory の Dictionary 定義で、Dependent field として、u_category を選択することで、Dependent Value の設定も Incident のものと同様にできることを確認しました。