定義済みの関連リストを作成する

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む3読むのに数分
  • デフォルトの関連リストをフォームに追加して、すべてのユーザーがレコードを表示するときに表示できるようにすることができます。

    始める前に

    必要なロール:admin

    このタスクについて

    たとえば、問題レコードの下部に関連インシデントのリストを含めたり、グループレコードの下部にメンバーのリストを含めたりできます。この機能は、参照フィールドまたは多対多のテーブル関係に依存します。2 つのテーブルがシステムディクショナリーを介して関連付けられている場合、一方を他方の関連リストとして表示できます。

    定義された関連リストを使用すると、任意のテーブル間の関係を関連リストとして表すことができます。論理的な関係を持つことができる 2 つのテーブルは、関連リストを介して親子ペアとして表示できます。以下にいくつかの例を示します。
    • インシデントレコードで、同じ発信者によってオープンされたすべてのインシデントを表示します。
    • ユーザーレコードで、そのユーザーが行った最新の 20 件のトランザクションを表示します。
    • インシデントレコードで、報告された CI で未解決のすべての問題を表示します。

    これらの関係は、参照フィールドと多対多の関係を通じてシステム辞書で通常定義される関係を超えています。

    すべての関連リストには関係レコードが必要です。関係を作成する前に、必要な情報を既に提供している既存の関係レコードがないことを確認します。次の手順を使用して、関係レコードを作成します。

    手順

    1. クリック システム定義 > 関係.
    2. [新規] をクリックします。
    3. 関係レコードフィールドを指定します。
      表 : 1. 関係レコードフィールド
      フィールド 説明
      名前 関連リストの名前を入力します。フォーム構成ページの利用可能なリストのリストにこの名前が表示されます。
      詳細 [ テーブルに適用] および [テーブルからのクエリー] フィールドの代わりに JavaScript を使用するには、このチェックボックスをオンにします。
      テーブルに適用 関連リストが表示されるテーブルを選択します。

      たとえば、ユーザーフォームに関連リストを追加するには、ユーザー [sys_user] テーブルを選択します。

      このフィールドは、詳細リレーションシップレコードでは非表示になります。

      テーブルからのクエリ この関連リストがデータを取得するテーブルを選択します。

      たとえば、関連するタスクレコードを関連リストに追加するには、タスク [task] テーブルを選択します。

      このフィールドは、詳細リレーションシップレコードでは非表示になります。

      適用先 ユーザーが目的のテーブルでフォームを開いたときに 回答 変数を true に設定するスクリプトを入力します。このフィールドは、[ 詳細 ] チェックボックスがオンになっている場合にのみ表示されます。
      クエリ元 関連リストがデータを取得するテーブルの名前に answer 変数を設定するスクリプトを入力します。このフィールドは、[ 詳細 ] チェックボックスがオンになっている場合にのみ表示されます。
      クエリ条件 スクリプトを入力して、含めるレコードを指定します。

      例を次に示します。

      current.addQuery('opened_by', parent.sys_id);
      • current オブジェクトは、スクリプトがトリガーされる現在のレコードを指定します。
      • addQuery メソッドは、指定された条件を満たすレコードを返すフィルターを追加します。
      • opened_by変数は、[クエリー元のテーブル] からテーブルでクエリーを実行するフィールド名です。
      • parent.sys_id 変数は、[適用先] テーブルと表示されているレコードの ID を参照します。
      コールバックを挿入 挿入アクションが成功した後に実行するスクリプトを入力します。このフィールドは、[ 詳細 ] チェックボックスがオンになっている場合にのみ表示されます。
    4. [送信] をクリックします。