ドット連結の例

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む8読むのに数分
  • ドット連結を使用して、フォーム、リスト、またはスクリプトから関連テーブルのフィールドにアクセスします。このトピックには、ドット連結を行うさまざまな方法の例が含まれています。

    リストフィールド

    フィルターのフィールドリストなど、リスト内の関連フィールドにドット連結することができます。この例では、インシデントを登録した発信者の会社でインシデント [incident] テーブルをフィルタリングする方法を示します。

    フィルタリングするフィールドのリストを開くと、利用可能なインシデントテーブルフィールドのリストが表示されます。参照フィールドの後に関連フィールドが続きます。たとえば、 Caller の後には 問い合わせユーザー > ユーザーフィールドこれは、 問い合わせユーザーが 参照フィールドであり、関連するフィールドが 問い合わせユーザー レコードのユーザーフィールドであることを意味します。関連フィールドがリストに存在しない場合は、リストの下部にある [ 関連フィールドを表示 ] を選択します。
    関連フィールドを表示

    [ 関連フィールドを表示] を選択すると、メニューが再ロードされて関連フィールドが表示されます。関連フィールド

    関連フィールドを選択すると、関連テーブルのフィールドとともにメニューが再ロードされます。
    関連テーブルフィールド

    [発信者] → [ユーザ] フィールドで [会社] を選択すると、フィールドは [問い合わせユーザー.会社] になります。

    次の例は、ドット連結の現在位置を示しています。選択した各参照はフィールドメニューの上部に保存され、フィールドラベルの前のドット数は、ユーザーが最初のレコードから到達したドット数を示します。
    ドット連結フィールド

    この例では、ユーザーが Incident.Caller.Company にいることを示しています。メニューの上部にあるフィールドを選択すると、階層の上位レベルに戻ることができます。たとえば 、[インシデントフィールド ] を選択すると、インシデントフィールドのリストに戻ります。

    関連フィールドを削除するには、リストの下部にある [ 関連フィールドを削除 ] を選択します。
    関連フィールドを削除

    Condition Builder

    条件ビルダーでドット連結することで、テーブルに対して詳細なクエリを作成できます。

    条件ビルダーでドット連結を行うには、まずフィールドメニューの [関連フィールドを表示 ] を選択します。このアクションでは、関連テーブルのフィールドをクエリに追加できます。

    次の GIF は、条件ビルダーでフィールドをドット連結して、Beth Anglin という特定のユーザーに割り当てられたすべてのインシデントレコードを検索する方法を示しています。この例では、ユーザーは インシデント > オープン をクリックし、条件ビルダーを開きます。フィールドメニューで、ユーザーは最初に [関連フィールドを表示 ] を選択し、次にフィールドメニューを再度開いて [アサイン先] → [ユーザー] フィールドを選択します。ユーザーがフィールドメニューを再度開いて [姓] を選択します。ユーザーは、[姓] [次の値に等しい] [Anglin] という条件を作成します。ユーザーが [ Run] を選択すると、[Incident] リストには Beth Anglin にアサインされたレコードのみが表示されます。


    この GIF は、条件ビルダーでドット連結する方法を示しています

    リストコレクター

    注:
    [名前] フィールド (例では「B」) の [新しいフィールドの作成] セクション (例では「A」) に入力してドット連結で新しいフィールドを追加することはサポートされていません。許可されていないフィールドを追加し、ドット連結を使用して推奨事項に対してフィールドを追加すると、プラットフォームで予期しない動作が発生する可能性があります。[新規フィールドの作成] セクションからの無許可のドット連結
    リストコレクターからフィールドのリストを選択する場合 (たとえば、フォームを構成する場合)、他のフォームのフィールドにドット連結することができます。
    どのフィールドが参照フィールドであり、ドット連結できるかを確認するには、プラス記号の付いた緑色のフィールドを探します。
    参照フィールド
    参照フィールドがハイライト表示されると、展開アイコン ( 展開 アイコン) が追加アイコンの上に表示されます。
    展開オプションのある参照フィールド
    展開アイコンを選択すると、[ 利用可能 ] ペインの関連リストからフィールドのリストが開きます。次の例は、[ アサイン先 ] フィールドが選択されたことを示しています。前のフィールドのリストがリストの一番上に表示されます。
    フィールドのリスト
    フィールドが [選択済み ] ペインに追加されると、完全なドット連結構文で表示されます。次の例は、[ アサイン先] を示しています。[アクティブ ] が選択されています。
    ドット連結フィールド

    スクリプト

    ドット連結構文を呼び出すことで、スクリプト内でドット連結することができます。この機能を使用するには、JavaScript のナレッジが必要です。

    ビジネスルールなど、サーバー側で実行されるスクリプトの場合は、current を追加する必要があります

    たとえば、次のスクリプトは、チケットを開いたユーザーのマネージャーからの承認を要求するスクリプト化された承認ルールです。
    try{
      current.opened_by.manager;
    }
    catch(err){}
    クライアント・スクリプトなどのクライアント側で実行されるスクリプトの場合、 current は必要ありません。たとえば、次の VIP 発信者のハイライト表示スクリプトはクライアント側で実行されます。
    function onChange(control, oldValue, newValue, isLoading){
      //wait until there is a valid record in the field
      if(newValue){ 
        //get the caller object so we can access fields
        var caller = g_form. getReference('caller_id');
        var callerLabel = document.getElementById('label.incident.caller_id');
        var callerField = document.getElementById('sys_display.incident.caller_id');
     
      //check for VIP status
      if(caller.vip == 'true') { 
        //change the caller label to red background
        //style object is CSSStyleDeclaration, style names are not standard css names
      if(callerLabel) 
        document.getElementById('label.incident.caller_id').style.backgroundColor = 'red';
     
      //change the caller's name field to red text
      if(callerField)
         document.getElementById('sys_display.incident.caller_id').style.color = 'red';
      } 
        else { //not a VIP, remove temporary styles if(callerLabel)
         document.getElementById('label.incident.caller_id').style.backgroundColor = '';
    
        if(callerField)
          document.getElementById('sys_display.incident.caller_id').style.color = '';
        }
      }
    }

    変数

    多くの場合、テンプレート、通知、またはフォームから値が呼び出されるその他のフォームに変数を追加できます。

    たとえば、${assigned_to}[アサイン先] フィールドの変数です。

    例に示すように、任意の参照フィールドの元のレコードのフィールドにドット連結することができます。たとえば、 ${assigned_to.manager} のように、assigned_to レコードの任意のフィールドにドット連結することができます。

    ドット連結する場合、この例のように、必要に応じてより長いチェーンを使用できます ($ {assigned_to.department.manager.mobile_phone})。

    ツリーピッカーからこの変数を選択できる場合があります。

    ツリーピッカー

    ツリーピッカーインターフェイスには、展開可能な階層ビューがあり、これを使用して次のアイテムを検索できます。
    • 別の上位レベルの CI に従属する構成アイテム (CI)。
    • 特定のグループのメンバー。たとえば、ツリーピッカーを使用して、Service Desk グループ内のユーザーを検索します。
    • 任意の階層テーブルの参照要素。階層テーブルとは、それ自体を指す親フィールドを持つテーブルのことです。たとえば、グループ [sys_user_group] テーブルは、特定のグループが親グループの子であるため、階層テーブルと見なされます。

    次の例は、ツリーピッカーを使用してデータベースグループ内のユーザーにインシデントレコードを割り当てる方法を示しています。

    最初に任意のインシデントレコードに移動してから、[Assignment group] フィールドに「Database」と入力します。


    リストフィールド

    この例では、データベース グループは親グループで、その下に複数の子グループがあります。[アサイン先] フィールドの横にある検索アイコン ( 検索アイコン ) を選択すると、ウィンドウに [データベース] グループの参照フィールドが表示されます。


    フィールドを選択

    参照フィールドには、名前の横に展開アイコン (+) があります。[+] をクリックすると、その参照フィールドのフィールドのリストが展開されます。この例では、[ Database Atlanta ] または [ Database San Diego ] フィールドを展開すると、各子グループ内のユーザーレコードリストが開きます。


    参照フィールドを選択

    いずれかのユーザーレコードを選択して、[ アサイン先 ] フィールドに値として追加します。


    ドット連結変数
    注:
    プロパティを構成するときに、最大 1,000 ノードを選択するようにツリーピッカーを glide.ui.group_heirarchy.max_nodes 構成できます。プロパティを設定するには、フィールドの辞書属性を開き、[属性] フィールドに tree_picker=true を追加します。複数の属性がある場合は、間にスペースを入れずにカンマで区切ります。