UI アクションの作成

  • リリースバージョン: Yokohama
  • 更新日 2025年01月30日
  • 所要時間:6分
  • 新しい UI アクションを作成することも、既存の UI アクションを編集することもできます。

    始める前に

    必要なロール:ui_action_admin または admin

    このタスクについて

    UI アクションと同じスコープ内にあるテーブルとデータベースビューに UI アクションを追加することも、別のアプリケーションスコープの UI アクションを実行できるテーブルに UI アクションを追加することもできます。

    手順

    1. 次のように移動する。 All (すべて) > システム定義 > UI アクション.
    2. [New (新規)] をクリックするか既存のレコードを開きます。
    3. フィールドに入力して UI アクションを定義します。
      すべてのフィールドを表示するようにフォームを構成する必要があります。
      表 : 1. UI アクションフィールド
      フィールド 説明
      名前 ボタン、リンク、またはコンテキストメニューアイテムに表示されるテキスト。
      テーブル UI アクションが利用可能なテーブル。デフォルトでは、選択したテーブルを拡張するテーブルにも UI アクションが表示されます (たとえば、タスクアクションはインシデントテーブルに表示されます)。

      [グローバル] を選択すると、アクションがすべてのテーブルで使用できるようになります。

      順序 UI アクションが表示される順番。ボタンには左から右へ、メニューアクションには上から下への順番が適用されます。
      アクション名 スクリプトで UI アクションを参照するときに使用する一意の名前。
      アクティブ 選択すると UI アクションが有効になるオプション。UI アクションを無効にするには、このチェック ボックスをオフにします。
      レコード作成時に表示 挿入されていない新しいレコードにボタンを表示するオプション。
      レコード更新時に表示 既存のレコードにボタンを表示するオプション。
      クライアント サーバーではなく、ユーザーのブラウザーでスクリプトを実行する UI アクションのオプション。有効にすると、[条件] フィールドの上に [クリック時] フィールドが表示されます。
      フォームボタン フォームにボタンを配置するオプション。
      フォームのコンテキストメニュー アイテムをフォームコンテキストメニュー (フォームヘッダーを右クリック) に配置するオプション。
      フォームリンク フォームの [関連リンク] セクションにリンクを配置するオプション。
      フォームスタイル
      • プライマリ: UI アクションを青色にします。
      • 破棄: UI アクションを赤色にします。
      • 書式設定なし: UI アクションに色を付けません。
      バナーリストボタン リストのバナーにボタンを配置するオプション。
      注:
      リストバナーボタンはレコード固有の条件をサポートすることを意図していないため、リストにボタンを表示するかどうかを決定するために条件が評価されるときに最初の行のみが考慮されます。リストバナーボタンの UI アクションでは、レコード固有の条件 (current.getValue('state') === 'closed' など) を使用しないでください。
      リスト下部ボタン リストの下部にボタンを配置するオプション。
      注:
      リスト下部のボタンは、条件に関係なく表示され、実行時にレコードごとに評価されます。
      リストコンテキストメニュー リストフィールドのコンテキストメニュー (リスト内のセルを右クリック) にアイテムを配置するオプション。
      リスト選択肢 リストの下部にあるアクション選択リストにアイテムを配置するオプション。
      注:
      リスト下部のボタンは、リスト選択アクションと同様、条件に関係なく表示され、実行時にレコードごとに評価されます。
      リストリンク フォームの下部にある [関連リンク] セクションにリンクを配置するオプション。
      リストスタイル
      • プライマリ: UI アクションを青色にします。
      • 破棄: UI アクションを赤色にします。
      • 書式設定なし: UI アクションに色を付けません。
      上書き この UI アクションが上書きする UI アクション。
      メッセージ UI アクションが、メッセージ [sys_ui_message] テーブルからローカライズされた代替メッセージを検索するためのキーとして使用できるテキスト文字列。[メッセージ] フィールドの個別の行にある各メッセージキー。

      インスタンスは、UI アクションが getMessage(msg) 呼び出しを行うたびに、ローカライズされたメッセージ文字列を探します。ここで msg 文字列は [メッセージ] フィールドのキーと一致している必要があります。

      コメント この UI アクションを説明するコンテンツ。
      ヒント ユーザーがこの UI アクションコントロールをポイントしたときに表示されるテキスト。
      クリック時 UI アクションを実行したときに実行される JavaScript 関数の名前。関数は [スクリプト] フィールドで定義されます。
      条件 UI アクションが表示されるタイミングを制限する JavaScript 条件付きステートメント。条件は常にサーバー上で実行されます。
      注:
      • 現在のオブジェクトは、リストコンテキストメニューの条件に使用できません。[リストコンテキストメニュー] オプションが選択されている場合、これらのアクションでの current の使用は無視されます。
      • 関連リストボタンの UI アクション条件の親レコードを参照できます。たとえば、クローズした変更の [影響を受ける CI] 関連リストで [新規] ボタンと [編集] ボタンを無効にするには、グローバル m2m UI アクションを task_ci テーブルにコピーして、parent.active の条件を追加します。
      • 条件ステートメントで指定したフィールドのいずれかを空のままにすると、その条件はデフォルトで true になります。
      スクリプト UI アクションが実行されるときに実行するスクリプト。関数名は一意である必要があります。
      ワークスペース
      ワークスペースフォームボタン ワークスペースで UI アクションを UI アクションのリストに表示させるオプション。
      ワークスペースフォームメニュー ワークスペースで UI アクションに関連付けられたメニューにリストアイテムとして UI アクションを 表示させるオプション。
      構成可能なワークスペースの形式 構成可能なワークスペースで UI アクションを使用するためのオプション。オフにすると、UI アクションは従来のワークスペースで適用されます。
      ワークスペースクライアントスクリプト ワークスペースで UI アクションが実行されるときに実行するスクリプト。
      ロールが必要
      ロール 適用する UI アクションに必要なロール。ユーザーは、適用する UI アクションのロールを少なくとも 1 つ持っている必要があります。
      フォームビューでの関連したリスト
      UI アクション可視化 UI アクションが適用されるフォームのビュー。このオプションを使用して、UI アクションを指定したフォームビューに制限します。指定されたビューでは、次のルールに従って UI アクションを使用できます。
      1. 可視化ルールがない場合、アクションはすべてのビューに表示されます。
      2. 特定のビューに除外ルールがある場合、そのビューにはアクションが表示されません。
      3. 少なくとも 1 つのインクルードルールがある場合、アクションは明確にインクルードされるビューにのみ表示されます。
      バージョン UI アクションのすべてのバージョン。バージョンを比較したり以前のバージョンに戻したりするには、このリストを使用します。
    4. [送信] または [更新] をクリックします。
      注:
      UI アクションがクライアント側で実行できるようになっている場合は、関数でラップします。それ以外の場合は、ページがロードされたときに、[スクリプト] フィールドのコンテンツが実行されます。

    UI アクションスクリプトの一部として、ユーザーを URL にリダイレクトできます。たとえば、UI アクションからフォームを作成した後に、フォームにリンクを追加したり、新しいレコードを開いたりすることができます。ユーザーを UI アクションから URL にリダイレクトするには、[スクリプト] フィールドで次の構文を使用してリダイレクトリンクを定義します。
    action.setRedirectURL ( 'http://www.mysite.com/mypage.htm' );
    ユーザーをレコードに誘導するには、次の構文を使用します。ここで、new_recordGlideRecord の変数名です。
    action.setRedirectURL (new_record );