UI ビルダーページにフォームを追加する

  • リリースバージョン: Xanadu
  • 更新日 2024年08月01日
  • 所要時間:3分
  • フォームコンポーネントを使用して、1 つ以上のフォームを UI ビルダー ページに追加します。

    フォームを含めて、UI ビルダー ページに機能を追加します。フォームのフィールドとそのプロパティ (必須にするなど) を定義します。次に、フォームの入力および送信時にデータを収集します。
    図 : 1. フォームコンポーネントの例
    ページ上の「転送注文ラインタスク」という名前のサンプルフォームコンポーネント。
    1 つのページに複数のフォームを追加できます。ネストされたフォームを持つコンポーネントが既に含まれているページにフォームを追加することもできます。サンプルユースケースは次のとおりです。
    • 独自のフォームコントローラーインスタンスを使用して、フォームを含むインラインタブを追加することで、レコードページを拡張します。
    • レコードページにフォームを含むモーダルを追加します。
    Xanadu ServiceNow より前のリリースで作成されたフォームを含む既存のページの場合、別のフォームをページに追加する前に、元のフォームにプリセットを適用する必要があります。プリセットの適用は、ページに複数のフォームを追加するための前提条件で、複数のフォームをページ上で期待どおりに機能させることができます。フォームコントローラープリセットは、すべてのフォームコントローラーに適用する必要があります。
    1. 既存のフォームを含むページを開きます。
    2. データドロワーで、[データリソース] リストを展開し、元のフォームコントローラーを選択します。

      データリソースリストが展開され、フォームコントローラーを指す黒い矢印が表示されたデータドロワー。

    3. [プリセット] フィールドを選択します。
    4. [フォームコントローラープリセット] を選択します。

      [プリセット] フィールドを指す黒い矢印と、[フォームコントローラープリセット] オプションを指す 2 番目の黒い矢印が表示された [フォームコントローラーを編集 (Edit form controller)] ポップアップ。

    5. [適用] を選択します。
    6. [X] を選択して [フォームコントローラーを編集 (Edit Form Controller)] ポップアップを閉じます。

      フォームコントローラーの 1 つだけで、[アプリシェルにマッピングされているか] プロパティが true に設定されている必要があります。このプロパティは、ページ上のプライマリフォームを指定するために使用されます。プライマリフォームは、グローバルイベントの処理を担当します。複数のフォームコントローラーでプロパティを true に設定したり、プロパティが true に設定されたフォームコントローラーを 0 にしたりしないでください。

    7. 1 つ以上のフォームを含むページを開きます。
    8. コンテンツツリーでフォームを選択します。

      フォームコンポーネントを指す黒い矢印が表示されたコンテンツツリー。

    9. 構成パネルの [構成] タブで、[フォームコントローラー] を選択します。

      [構成] タブが表示され、フォームコントローラーリンクを指す黒い矢印が表示されたフォーム構成パネル。

    10. [フォームコントローラーを編集 (Edit Form Controller)] ポップアップで、[フォームコントローラー] リストを下にスクロールして、[アプリシェルにマッピングされているか] オプションを見つけます。

      [アプリシェルにマッピングされているか] オプションを指す黒い矢印が表示された [フォームコントローラーを編集 (Edit Form Controller)] ポップアップウィンドウ。

    11. ページ上の各フォームコンポーネントのオプションをオンまたはオフにして、フォームコントローラーが 1 つだけアプリシェルにマッピングされていることを確認します。

    フォームイベント処理の詳細

    競合イベント処理の知識を持つ経験豊富な開発者には、次の詳細が役立つ場合があります。

    [アプリシェルにマッピングされているか] が true に設定されている場合、フォームは次のイベントを自動的に処理します。
    画面ステータスが変更されました
    • 説明:フォームがダーティであることを示すアクション。
    • 出力:CTRL_RECORD#SCREEN_STATUS_CHANGED
    要求された構成メニューを更新
    • 説明:アバターメニューのレコード構成メニューアイテムを設定するアクション。
    • 出力:CTRL_RECORD#UPDATE_CONFIGURATION_MENU_REQUEST
    電話が要求された
    • 説明:CTI プラグインが有効な場合に電話をかけるアクション。
    • 出力:CTRL_RECORD#PHONE_REQUESTED
    フォームのロードステータスが変更された
    • 説明:フォームがデータをロードしているときにロード中の回転を表示するアクション。
    • 出力:CTRL_RECORD#FORM_LOADING_STATE_CHANGED

    フォームコンポーネントとそのプロパティの詳細については、ServiceNow 開発者サイトの「フォームの概要」を参照してください。