埋め込み型キャンバス アプリケーションをモデル駆動フォームに追加する
この記事では、キャンバス アプリをモデル駆動フォームに埋め込む方法を説明します。 キャンバス アプリは、さまざまなデータソースに接続することができ、デザイナーはユーザー エクスペリエンス全体をより自由にコントロールすることができます。
この記事では、2 つの統合方法を説明しています。 まず、最新の統一インターフェイス エクスペリエンスを使用し、続いて従来のエクスペリエンスを使用します。
最新のアプリの中にキャンバス アプリを埋め込む方法には、キャンバス アプリとフォームをより緊密に統合する、3つ目の最新の方法があります。 最新のアプリ構築エクスペリエンスの詳細。
最新のエクスペリエンスを使用してキャンバス アプリを埋め込む
Accounts テーブルのメイン フォームなど、モデル駆動型アプリのメインフォームにキャンバス アプリを埋め込むには、次の手順を実行します。
Power Apps にサインインします。
ソリューションがある環境を選択します。
キャンバス アプリを表示する必要のあるフォームを含む テーブル を選択します。
フォーム を選択します。
メイン フォームを選択します。
クラシック フォーム デザイナで、埋め込み型キャンバス アプリケーションを表示させるフォーム上のセクションを選択します。
セクションにフォーム フィールドを追加して、 アカウント名 などの必須フィールドを追加します。
ヒント
フォームに埋め込むキャンバス アプリの名前また簡単な説明など、追加するテーブル列の名前をよりわかりやすい名前に変更すると有効な場合があります。
トップ メニューから + コンポーネント を選択するか、左側のメニューからコンポーネントのアイコンを選択します。 コンポーネント ペインは開きます。
- 関連データ から キャンバス アプリ を選択します。 コントロールを構成するためには、一連の追加項目が必要です。
エンティティ名 領域は、埋め込みキャンバス アプリにデータを提供するテーブルを指定します。
テーブル列にバインドする: テーブル列にバインド を選択すると、リストが変わり、バインドするテーブル列を選択できるようになります。 テーブル列にバインドすることを選択すると、列はテーブル列の値によって定義されます。 たとえば、アプリ名 で テーブル列にバインドする を選択した場合、アプリの実行時にアプリ名の値はカスタム テキスト列の値などの列の値を取ります。
重要
ほとんどの状況では、キャンバス アプリ コントロールの テーブル列にバインド オプションを使用することはお勧めしません。
静的な値: これを使用して、キャンバス アプリを参照する名前を追加します。 この値は、埋め込みキャンバス アプリに影響しないことに注目してください。 参照ポイントとしてのみ機能します。
アプリ名 領域は、キャンバス アプリの名前を指定します。
テーブル列にバインドする: テーブル列にバインド を選択すると、リストが変更され、バインドするテーブル列を選択できます。 テーブル列にバインドすることを選択すると、列はテーブル列の値によって定義されます。 たとえば、アプリ名 に テーブル列にバインド を選択すると、アプリ名の値は、アプリの実行時にカスタム テキスト列の値などの列の値を取得します。
重要
ほとんどの状況では、キャンバス アプリ コントロールの テーブル列にバインド オプションを使用することはお勧めしません。
静的な値: 埋め込むキャンバス アプリの名前を指定します。 モデル駆動型フォームは、現在の環境で指定された名前のキャンバス アプリを探します。 その名前のキャンバス アプリが環境内に見つからない場合、キャンバス アプリ コントロールはアプリ ID を使用してキャンバス アプリを読み込みます。 既存のキャンバス アプリのアプリ名を入力します。
アプリ ID 領域は、キャンバス アプリのアプリ ID を指定します。
テーブル列にバインドする: テーブル列にバインド を選択すると、リストが変更され、バインドするテーブル列を選択できます。 テーブル列にバインドすることを選択すると、列はテーブル列の値によって定義されます。 たとえば、アプリ名 に テーブル列にバインド を選択すると、アプリ名の値は、アプリの実行時にカスタム テキスト列の値などの列の値を取得します。
重要
これは、レコード内のフィールドに正しいアプリ ID を表示する必要があるため、ほとんどの場合、キャンバス アプリ コントロールでは テーブル列にバインドする オプションを使用することはお勧めしません。
静的な値: 既存のキャンバス アプリのアプリ ID を入力します。 キャンバス アプリの ID は、Power Apps の アプリ でキャンバス アプリを選択し、コマンド バーの 詳細 を選択すると確認できます。
コンポーネント領域を表示します。 埋め込みキャンバス アプリを表示するクライアントの種類を指定します。 Web、モバイル、および タブレット から選択します。
- 保存 を選択します。 次に、アプリを公開してユーザーが使用できるようにするには、公開 を選択します。
埋め込みキャンバス アプリを自分のモデル駆動型フォームに公開した後、埋め込みキャンバス アプリを他のユーザーと共有します。 詳細: 埋め込みキャンバス アプリの共有。
ユーザーが修正したフォームを含むモデル駆動型アプリを開くと、埋め込みキャンバス アプリがフォーム上に表示されます。 メイン フォームに表示されるレコードを変更すると、フォームに渡されたデータ コンテキストが変更され、関連するデータを表示するように埋め込みアプリがリフレッシュされます。
この記事では、モデル駆動型フォームで埋め込みキャンバス アプリを使用する方法を説明しました。 埋め込みキャンバス アプリをさらにカスタマイズして、さまざまなデータ ソースに接続してデータを取り込むことができます。 フィルター、検索、およびルックアップ機能、およびホストのモデル駆動型フォームからフィルターから渡されたコンテキストを使用して、これらのデータ ソース内の特定のレコードをフィルター処理または検索します。 WYSIWYG キャンバス アプリ エディターを使用して、ユーザーの環境に合ったインターフェイスを簡単に設計します。
クラシック エクスペリエンスを使用してキャンバス アプリを埋め込む
Power Apps にサインインします。
当社の例では、会計テーブル、テーブルの メイン フォームを作成または編集 します。
コマンドバーの クラシックに切り替える を選択して、クラシック フォームデザイナでフォームを開きます。
クラシックフォームデザイナで、埋め込み型キャンバス アプリケーションを表示させるフォーム上のセクションを選択します。
列ペインを使用して、アカウント名 などの必須列を追加します。
重要
必ず値を持つ必須列を常に使用します。 列に値がない場合、埋め込みキャンバス アプリはホストのモデル駆動型フォーム上のデータが変更されるときに最新の情報に更新されません。
選択した列で、ホーム タブの 編集 グループで、プロパティの変更 を選択します。
列のプロパティ ダイアログ ボックスで、コントロール タブを選択します。
コントロール タブにて、 コントロールの追加 を選択します。
コントロールの追加 ダイアログ ボックスの、使用可能なコントロールの一覧で、キャンバス アプリ を選択してから 追加 を選択します。
列プロパティ ダイアログ ボックスにて、コントロールの一覧から キャンバス アプリ を選択し、Web オプションを選択します。
コントロール リストの下部のセクションに、キャンバス アプリ コントロールで使用可能なプロパティのリストが表示されます。
- テーブル名 プロパティは、埋め込みキャンバス アプリにデータを提供するテーブルを指定します。 これは、以前のステップで追加した列を含むテーブルにセットされます。
- このプロパティが変更可能として表示される場合であっても、それに対する変更が埋め込みキャンバス アプリ上に影響を与えないことに注意してください。 それは参照することのみを目的としています。
- アプリ名 プロパティは埋め込むキャンバス アプリの名前を指定します。 モデル駆動型フォームは、現在の環境で指定された名前のキャンバス アプリを探します。 その名前のキャンバス アプリが環境内に見つからない場合、キャンバス アプリ コントロールはアプリ ID を使用してキャンバス アプリを読み込みます。 既存のキャンバス アプリのアプリ名を入力します。
- アプリ ID プロパティは埋め込みキャンバス アプリの ID を指定します。 既存のキャンバス アプリのアプリ ID を入力するか、カスタマイズ を選択することでキャンバス アプリを作成または編集するときに、アプリ ID が自動的に生成され入力されます。 キャンバスアプリ ID は Power Apps にありますので、アプリ に移動して、詳細 コマンドバーでキャンバス アプリを選択します。
注意
アプリ ID の値を変更すると、モデル駆動型フォームから埋め込みキャンバス アプリへのリンクが切断されることに注意してください。
アプリ名もアプリ ID も既存のキャンバス アプリと一致しない場合、フォームには "申し訳ありませんが、そのアプリが見つかりませんでした" というメッセージが表示されます。
- テーブル名 プロパティは、埋め込みキャンバス アプリにデータを提供するテーブルを指定します。 これは、以前のステップで追加した列を含むテーブルにセットされます。
完成したキャンバス アプリを追加する場合は、ステップ 20 に進みます。 新しいキャンバス アプリを作成する場合、または既存のキャンバス アプリを編集する場合は、引き続き次のステップを実行してください。 キャンバス アプリを作成または編集するには カスタマイズ を選択します。 これは新規タブの、 Power Apps Studio で開きます。
注意
Power Apps Studio を開くことが Web ブラウザーのポップアップ ブロッカーによりブロックされた場合は、make.powerapps.com サイトを有効にするか、一時的にポップアップ ブロッカーを無効にしてから、再び カスタマイズ を選択する必要があります。
次の点に注意してください:
- Power Apps Studio の通知には、 ウィンドウの左側に特別な ModelDrivenFormIntegration コントロールが表示されます。 このコントロールは、ホストのモデル駆動型フォームから埋め込みキャンバス アプリにコンテキスト データを取り込みます。
- 埋め込み型キャンバス アプリケーションにキャンバスアプリケーション フォーム コントロール が自動的に追加され、ModelDrivenFormIntegrationコントロールを介してホストのモデル駆動フォームから渡されたデータが表示されていることを確認します。
- ビュー タブを選択し、 データ ソース を選択します。 ご利用のホストモデル駆動型フォーム (この例ではアカウント) の親テーブルであるデータソースが、埋め込み型キャンバス アプリケーションに自動的に追加されていることに留意してください。 - フォーム 1 コントロールを選択し、DataSource プロパティが 取引先企業 と設定されていることを確認してください。
- フォーム1 コントロールを選択した状態で、 Item プロパティが ModelDrivenFormIntegration.Item と設定されていることを確認してください。
注意
埋め込みキャンバス アプリには、ModelDrivenFormIntegration.Item を介してホストのモデル駆動型フォームから読み取るための完全なアクセス権があります。 たとえば、accountnumber という名称と アカウント番号 という表示名称を持つ列の値を取得するには、 ModelDrivenFormIntegration.Item.accountnumber または ModelDrivenFormIntegration.Item.'Account Number' を使用することができます。
右側のプロパティ ペインで、列 の隣にある 列の編集 を選択します。
+ 列の追加 を選択して、キャンバス アプリ フォームに別の列を追加することができます。またドラッグ アンド ドロップをすることで既存の列の順序を変更することができます。 列の追加と並べ替えが終了したら、データのペインを閉じます。
ファイル のタブを選択し、 保存 を選択します。
クラウド タブを選択します。アプリに一意の名前をつけてから右下にある 保存 を選択します。 次の動作に注意してください:
- アプリを初めて保存するときは、アプリが自動的に公開されます。
- それ以降の保存時には、公開 を選択してから このバージョンを公開 を選択し、変更を有効にします。
メニューにて 戻る を選択します。
クラシック フォームデザイナーが開いているブラウザのタブを選択します。 キャンバス アプリ コントロールの アプリ ID と アプリ名 プロパティに値が自動的に入力されたことを確認します。
重要
- フォーム デザイナには、上記の手順で別のブラウザタブで開かれた Power Apps Studio への直接リンクが含まれています。
- アプリ名が以下のスクリーンショットのような値であることを確認してください。 アプリ名プロパティは、実行時にキャンバス アプリを参照するために使用される一意の名前を指定します。 この名前が設定されていない場合、アプリ ID プロパティはキャンバス アプリを参照するために使用され、ソリューションの一部としてキャンバス アプリをインポートするときに問題が発生する可能性があります。 この名前を設定して、環境間で適切なキャンバス アプリを参照できるようにすることをお勧めします。 設定するには、手順 12 に戻り、手順に従って、埋め込むキャンバス アプリを作成します。
フィールド プロパティ ダイアログ ボックスで、表示 タブを選択します。
フォーム上の ラベルの表示 をクリアしてから OK を選択します。
- このフォームに埋め込まれたキャンバス アプリが既にある場合は、「1 つのフォームで 1 つのキャンバス アプリのみを有効にすることができます。」というメッセージが表示されます。 新しいキャンバス アプリを追加するには、まず現在の埋め込みキャンバス アプリを無効化 する必要があります。 次に、新しい埋め込みキャンバス アプリを有効化します。
ホーム タブで、保存 を選択してから、公開 を選択します。
関連項目
モデル駆動型フォームの埋め込み型キャンバス アプリケーションを編集する
組み込みキャンバス アプリ内からホスト フォームで事前定義済みの操作を実行する
ModelDrivenFormIntegrationコントロールのプロパティとアクション
埋め込みキャンバス アプリの作業のガイドライン
フィードバック
フィードバックの送信と表示