カスタム フォームの作成

Note

カスタム フォームの表示アクションは、アダプティブ カード テクノロジーに基づいています。 アダプティブ カードに関する詳細は、このページ を参照してください。

メッセージ ボックスを使用すると、テキスト、日付、ファイルなどのさまざまなデータを入力したり、情報や結果を画面に表示したりするようにユーザーに求めることができます。

このグループのほとんどのアクションは、単一の入力が必要なシナリオを処理できますが、一部の自動化では、入力または/および出力の組み合わせが必要になる場合があります。 これらのシナリオに対処するための最良のアプローチは、カスタム フォームの表示アクションです。

カスタム フォームを作成するには、カスタム フォームの表示アクションを選択し、カスタム フォーム デザイナー ボタンをクリックしてフォーム デザイナーを開きます。

カスタム フォームの表示アクションのスクリーンショット。

デザイナーの左側には、テキスト、日付、ファイル入力などのフォーム、テキストや画像などの非対話型要素をフォームに追加できる、すべての利用可能な入力要素 を含むリストがあります。

カスタム フォームに要素を追加するには、要素をダブルクリックするか、デザイナーのワークスペース領域にドラッグ アンド ドロップします。 フォーム デザイナーの下部にあるプレビュー ペインを使用して、構成されたフォームが実行時にどのように表示されるかを確認します。

要素を追加した後、フォーム デザイナーの右側にあるすべての利用可能なプロパティ を処理できます。 使用可能なプロパティは、選択した要素の性質によって異なる場合があります。

Note

フォーム要素とは別に、フォーム デザイナーは、カスタム フォームの親ダイアログの外観を構成するためのいくつかのプロパティを提供します。 それらを構成するには、ワークスペースで空のスペースを選択し、それぞれのペインで使用可能なプロパティを確認します。

使用可能なフォーム要素のスクリーンショット。

ユーザーがカスタム フォームに入力すると、提供されたデータが CustomFormData カスタム オブジェクト変数に保存されます。 カスタム オブジェクトに格納されている特定の入力要素の値にアクセスするには、表記法 %CustomFormData['ElementID']% を使用します。

重要

各要素の ID は一意である必要があり、空にすることはできません。 また、文字で始まる必要があり、ラテン文字、数字、スペースを含めることができます。 ID フィールドで変数を使用することはできません。 無効な ID が指定された場合、最後に使用された有効な ID が、フォーム デザイナーを閉じて保存した後に自動的に復元されます。

Note

カスタム オブジェクトに関する詳細とそれらを処理する方法については、高度なデータ型 を参照してください。

カスタム オブジェクトのコンテンツのスクリーンショット。

入力要素と非対話型要素とは別に、フォーム デザイナーは、フォームに追加機能を実装するためのいくつかのアクションを提供します。

アクションは、押されたボタンに基づいてさまざまな機能を実行できるボタンと見なしてください。 たとえば、後でフローで使用するために提供されたユーザー データを収集して保存するための保存ボタンとして送信アクションを使用します。

Note

アクションは、フォーム構造の末尾にのみ追加できます (他のタイプのフォーム要素の後)。

他の要素と同様、各アクションには、それを一意に説明する ID があります。 アクションを選択すると、その ID が ButtonPressed 変数に保存されます。

構成されたカスタム フォーム アクションのスクリーンショット。

フォームに複数のアクションが含まれている場合、この変数と条件を使用して、どちらが押されているかを確認し、シナリオごとに異なる機能を実装します。 この動作の実装の詳細については、カスタム フォームを処理する を参照してください。

次のスクリーンショットは、フローの実行時に以前に構成されたカスタム フォームがどのように表示されるかを示しています。

サンプル カスタム フォームのスクリーンショット。

カスタム フォーム要素

要素名 タイプ 仕様 レイアウト プロパティ 検証プロパティ スタイル プロパティ 背景の画像
カスタム フォーム 親ダイアログ タイトル 最小の高さ (ピクセル単位)、コンテンツの垂直方向の配置 URL、塗りつぶしモード、水平方向の配置、垂直方向の配置
テキスト入力 入力 ID、ラベル、既定値、複数行、スタイル、最大長 間隔、セパレーター、高さ 必要な検証、エラー メッセージ、パターン
数値入力 入力 ID、ラベル、既定値、最小値、最大値 間隔、セパレーター、高さ 必要な検証、エラー メッセージ
日付入力 入力 ID、ラベル、既定値、最小値、最大値 間隔、セパレーター、高さ 必要な検証、エラー メッセージ
時間入力 入力 ID、ラベル、既定値、最小値、最大値 間隔、セパレーター、高さ 必要な検証、エラー メッセージ
切り替え入力 入力 ID、ラベル、タイトル、既定値、オンの場合の値、オフの場合の値 間隔、セパレーター、高さ折り返し 必要な検証、エラー メッセージ
選択肢セットの入力 入力 ID、ラベル、既定値、複数選択を許可、スタイル、選択肢 間隔、セパレーター、高さ、折り返し 必要な検証、エラー メッセージ
ファイル入力 入力 ID、ラベル、既定値 間隔、セパレーター、高さ 必要な検証、エラー メッセージ
テキスト ブロック 要素 ID、テキスト 間隔、セパレーター、水平方向の配置、高さ、折り返し、最大行数、最大幅 フォントの種類、サイズ、太さ、色、目立たせない、斜体、取り消し線
画像 要素 ID、URL、代替テキスト 間隔、セパレーター、水平方向の配置、高さ、ピクセル単位の高さ、ピクセル単位の幅、サイズ スタイル、背景色
送信 アクション ID、タイトル、指定した入力を無視する
URL を開く アクション ID、タイトル、URL

カスタム フォーム要素のプロパティ

プロパティ名 オプション 承認 既定 説明
複数の選択を許可 該当なし ブール値 False 選択肢の複数選択を許可します
代替テキスト はい テキスト値 画像を説明する代替テキスト
背景色 はい テキスト値 透明な画像に背景を適用します。 このプロパティは画像スタイルを考慮します。 このプロパティでは 16 進数値のみが使用できます
Choices はい タイトルと値 選択肢セットで使用する選択肢について説明します。 タイトル (表示するテキスト) と値 (選択肢の生の値) で構成されます
該当なし デフォルト、暗い、明るい、アクセント、良い、警告、注意 既定 テキストの色を制御します
既定値 はい テキスト値、数値 入力要素の既定値
エラー メッセージ はい テキスト値 入力した内容が無効な場合に表示するエラー メッセージ
塗りつぶしモード 該当なし カバー、水平方向に繰り返す、垂直方向に繰り返す、繰り返す 画像で領域を埋める方法を説明します。
フォントの種類 該当なし デフォルト、モノスペース 既定 レンダリングに使用するフォントの種類
身長 該当なし 自動、拡大、ピクセル 自動 要素の高さを指定します。 'ピクセル' オプションは、画像要素でのみ使用できます
Height in pixels いいえ 数値 0 画像の目的の高さを指定します。 その高さにぴったり合うように画像を変形します。 これは 'Size' プロパティをオーバーライドします。 既定値の 0 は、特定の高さが指定されていないことを示します
Horizontal alignment N/A 左、中央、右 テキスト ブロック: 左
画像: 左
この要素を水平方向に配置する方法を制御します。 カスタム フォームの場合、クロップする場合や繰り返し入力モードを使用する場合の、背景画像の配置方法を説明します
ID いいえ テキスト値 要素によって異なる 値を表す一意識別子です。 送信アクションの実行時に収集された入力を識別するために使用されます。 無効な ID を一時的に使用して、さらにフォーム デザイナーを閉じた場合、最後に使用した有効な ID を適用します。
指定した入力を無視する 該当なし ブール値 False 有効化すると、このアクションは選択した入力を保存せずにフォームを閉じ、キャンセル ボタンとして機能します。
斜体 該当なし ブール値 False 有効化するとテキストにイタリック体を使用します
ラベル はい テキスト値 この入力のラベル
Maximum length いいえ 数値 0 収集する最大文字数を指定します。 既定値の 0 は、最大長が指定されていないことを示します
Maximum lines いいえ 数値 0 表示する最大行数を指定します。 既定値の 0 は、最大行数が指定されていないことを示します
Maximum value はい テキスト値 最大値のヒント。 日付と時刻の入力の場合、値はコンピューターの地域形式で表現する必要があります
Maximum width いいえ 数値 0 テキスト ブロックの最大幅 (ピクセル単位) を指定します。 既定値の 0 は、最大幅が指定されていないことを示します
Minimum height in pixels いいえ 数値 0 フォームの高さの最小値を指定します。 既定値の 0 は、最小の高さが指定されていないことを示します
Minimum value はい テキスト値 最小値のヒント。 日付と時刻の入力の場合、値はコンピューターの地域形式で表現する必要があります
複数行 該当なし ブール値 False 有効化すると複数行の入力を許可します
パターン はい テキスト値 このテキスト入力の必須形式を示す正規表現
Separator N/A ブール値 False 有効化すると、要素の上部に区切り線を描画します
サイズ 該当なし テキスト ブロック: 既定、小、中、大、特大
画像: 自動、拡大、小、中、大
テキスト ブロック: 既定
画像: 自動
テキストまたは画像のサイズを制御する
間隔 該当なし 既定、なし、小、中、大、特大、パディング 既定 この要素と直前の要素の間に確保する間隔を制御します
取り消し線 該当なし ブール値 False 有効化すると、テキストに取り消し線を加えます
スタイル 該当なし テキスト入力: テキスト、電話、URL、メール
選択肢セット入力: コンパクト、拡張
画像: 既定、人物
テキスト入力: テキスト
選択肢セット入力: コンパクト
画像: 既定
テキスト ヒント、選択セット、または画像のスタイル
目立たせない 該当なし ブール値 False 有効化すると、目立たなくなるように文字を少し暗めに表示します。
テキスト はい テキスト値 新しいテキスト ブロック 表示するテキスト
タイトル はい テキスト値 トグル入力: 新しいトグル入力
送信: OK
カスタム フォームのタイトル、またはこのアクションを表すボタンのトグルまたはラベル
URL はい テキスト値 画像の URL (画像要素およびカスタム フォームの場合) または開く URL (URL を開くアクションの場合)
検証が必要 はい ブール値 False この入力が必須かどうかを判断します
無効時の値 はい テキスト値 False 切り替えがオフの場合の値
有効時の値 はい テキスト値 True 切り替えがオンの場合の値
垂直方向の位置合わせ 該当なし 上、中央、下 クロップする場合や繰り返し入力モードを使用する場合の、画像の配置方法を説明します
垂直方向のコンテンツ配置 該当なし 上、中央、下 コンテンツをコンテナ内で垂直に配置する方法を定義します。 高さが固定のフォーム、または最小の高さが指定されているフォームにのみ関連します
太さ 該当なし 既定、細い、太い 既定 テキストの太さを制御します
幅 (ピクセル単位) いいえ 数値 0 画像の画面上の必要な幅。 これは 'Size' プロパティをオーバーライドします。 既定値の 0 は、特定の幅が指定されていないことを示します
Wrap N/A ブール値 False 有効にすると、テキストを折り返すことができます。 それ以外の場合、テキストは切り取られます

既知の問題と制限事項

  • 問題: URL プロパティにパーセンテージ文字が含まれている場合、プレビュー ペインは期待どおりに機能するように見えますが、無効な値検証エラーが発生します。

  • 回避策: この問題が発生するのは、Power Automate がパーセント文字を変数または式として解決しようとするためです。 この問題を解決するには、フロー パーセンテージ文字をエスケープする の前半で URL を変数に格納した後、その変数を URL プロパティで使用します。 プレビューには画像は表示されませんが、実行時に表示されます。