Power Apps からキャンバス アプリを埋め込む

重要

Human Resources を使用している顧客の場合、この記事で説明した機能は、現在、スタンドアロン Dynamics 365 Human Resources とマージした Finance インフラストラクチャの両方で利用できます。 更新中は、記載されたナビゲーションと異なる場合があります。 特定のページを検索する場合は、検索を使用できます。

Microsoft Power Apps は開発者と技術者以外のユーザーがコードを記述せずにモバイル デバイス、タブレット、および Web 用のカスタム ビジネス アプリを構築できるようにするサービスです。 財務と運用アプリでは Power Apps との統合をサポートしています。 ユーザー、組織、またはより幅広いエコシステムが開発するキャンバス アプリは、製品の機能を拡張するために財務と運用アプリに組み込むことができます。 たとえば、別のシステムから取得した情報で財務と運用アプリを補完するために、Power Apps からキャンバス アプリを構築できます。

キャンバス アプリの埋め込みに関する詳細については、キャンバス アプリを組み込む方法 のショート ビデオをご覧ください。

埋め込みキャンバス アプリを Power Apps からページに追加する

Power Apps からクライアントにキャンバス アプリを埋め込む前に、目的のビジュアルまたは機能を備えたアプリを見つけるか構築する必要があります。 この記事には、アプリを構築するプロセスの詳細な説明は含まれていません。 初めて Power Apps を使用する場合は、Power Apps ドキュメント を参照してください。

財務と運用アプリにキャンバス アプリを埋め込むには 3 つの方法があります。 シナリオに最適なアプローチを使用できます。

  • ページの標準アクション ペインの Power Apps ボタンにキャンバス アプリを埋め込む。 この方法で追加したアプリは Power Apps メニュー ボタンの項目として表示され、アプリはサイド ペインに開きます。
  • 既存のページに、キャンバス アプリを新しいタブ ページ (ピボット タブ、クイック タブ、ブレード、またはワークスペースのセクション) として埋め込む。
  • ダッシュボードから、キャンバス アプリの新しいフル ページ エクスペリエンスを作成する。

埋め込みキャンバス アプリを構成するときに、アプリへのコンテキストとして送信する単一のフィールドを選択できます。 この手順により、現在表示しているデータに基づいてアプリが応答できるようになります。

メモ

このメカニズムを使用してモデル駆動型アプリを埋め込むことはできません。

既存のページにキャンバス アプリを埋め込む

次の手順では、Power Apps から既存のページにキャンバス アプリを埋め込む方法を示します。

  1. キャンバス アプリを埋め込むページに移動します。 このページは、入力としてアプリに渡す必要があるデータを含むページです。

  2. Power Apps からアプリを追加ウィンドウを開きます。

    • ページにアプリを直接埋め込む場合は、オプション>このページのパーソナライズ>詳細 を選択し、次のいずれかの手順に従います:

      • フル ページ アプリ機能が有効になっている場合は、ページの追加を選択し、アプリを追加したい地域を選択します。 Power Apps メニュー ボタンにアプリを埋め込むには、アクション ペインを選択します。 ページに直接アプリを埋め込むには、適切なタブ、クイック タブ、ブレード、またはセクション (ワークスペースにいる場合) を選択します。 次に、アプリを追加ペインで、Power Apps を選択します。
      • フル ページ アプリ機能が無効になっている場合は、Power Apps からアプリを追加を選択し、アプリを追加したい地域を選択します。 Power Apps メニュー ボタンにアプリを埋め込むには、アクション ペインを選択します。 ページに直接アプリを埋め込むには、適切なタブ、クイック タブ、ブレード、またはセクション (ワークスペースにいる場合) を選択します。
    • Power Apps メニュー ボタンを使用してアプリにアクセスする場合、標準のアクション ペインの Power Apps メニュー ボタンをクリックし、アプリの追加を選択します。

  3. 埋め込み型アプリを構成します。 詳細については、この記事後述のキャンバス アプリを構成するを参照してください。

  4. 構成が正しいことを確認した後、挿入を選択します。

    • 保存されたビュー機能を無効にした場合、埋め込みアプリを表示するためにブラウザを更新するよう求められます。
    • 保存されたビュー機能を有効にした場合、変更を保持するためにビューを保存する必要があります。

ダッシュボードからのフル ページ エクスペリエンスとしてキャンバス アプリを埋め込む

アプリが既存のページに関連していない場合や、財務と運用アプリ内でフル ページ エクスペリエンスとして表示したいだけの場合に、ダッシュボードからキャンバス アプリを埋め込むことができます。

メモ

この機能を使用可能にするには、機能管理のフル ページ アプリ機能を有効にする必要があります。

  1. ダッシュボードを開きます。
  2. ページを選択したまま (または右クリック) にしてから、個人設定を選択して、ページを追加を選択します。
  3. ページを追加ウィンドウで Power Apps を選択します。
  4. 埋め込み型アプリを構成します。 詳細については、この記事後述のキャンバス アプリを構成するを参照してください。
  5. 保存を選択して、アプリを新しいタイルとしてダッシュボードに追加します。
  6. ダッシュボードの新しいタイルを選択し、キャンバス アプリが予定通り表示されるかを確認します。

キャンバス アプリを構成する

キャンバス アプリを埋め込む際は、次のパラメーターを設定する必要があります:

  • 名前 – 埋め込みアプリを含めるタブまたはボタンに表示するテキストを入力します。 多くの場合、このフィールドでアプリの名前を繰り返すことができます。

  • アプリ ID – 埋め込むキャンバス アプリのグローバル一意識別子 (GUID) を指定します。 この値を取得するには、make.powerapps.com でアプリを検索し、詳細アプリ ID フィールドを確認します。

  • アプリのコンテキストを入力する – 必要に応じて、アプリに入力として渡すデータが含まれているフィールドを選択することができます。 財務と運用アプリから送信されたデータにアプリがアクセスする方法については、この記事の後半にある財務と運用アプリから送信されたデータを活用するアプリの構築を参照してください。

    バージョン 10.0.19 では、現在の法人も cmp URL パラメーターを介してコンテキストとしてキャンバス アプリに渡されます。 この動作は、ターゲットのキャンバス アプリが情報を使用するまでアプリには影響しません。

  • アプリケーション サイズ – 埋め込むアプリのタイプを選択します。 モバイル デバイス用に作成されたアプリに対してはシンを選択し、タブレット用に作成されたアプリに対してはワイドを選択します。 このパラメーターにより、埋め込みアプリに十分な容量を確保できます。

  • 法人 – アプリを使用できる法人を選択できます。 既定では、すべての法人がアプリを使用できます。 このオプションは、既存のページに直接埋め込み、保存されているビュー機能が無効になっている場合にのみ使用できます。

埋め込まれたアプリの共有

ページにキャンバス アプリを埋め込み、正しく動作することを確認したら、システム内の他のユーザーとアプリを共有できます。 埋め込みキャンバス アプリを共有するには、次の手順を実行します。

  1. Power Apps のキャンバス アプリを適切なユーザーと共有し、Power Apps から直接アプリにアクセスできるようにします。

  2. 埋め込みアプリに関連付けられた個人用設定を、目的のユーザーと共有します。 次のアプローチのいずれかを使用できます:

    • ビューを公開する (推奨):保存されているビュー機能が有効な場合、推奨される方法は、埋め込みキャンバス アプリを含むビューを作成し、目的のユーザーに公開することです。 このアプローチを使用すると、公開されたビューの対象となるセキュリティ ロールを持つすべてのユーザーがページ上でキャンバス アプリを確認できるようになります。

      ダッシュボードからフル ページ エクスペリエンスとして埋め込まれたキャンバス アプリを公開することもできます。 ダッシュボードで、アプリに関連付けられているタイルを選択したまま (または右クリック) にして、個人用設定を選択してから、ページを公開するを選択します。 ビューの公開エクスペリエンスと似たエクスペリエンスが表示され、公開するセキュリティ ロールを選択できます。 更新プログラム 10.0.21 以降で、保存されたビューに対する改善された法人サポートが有効になっている場合は、目的の法人にアプリを公開することもできます。

    • 保存されているビュー機能を無効にした場合、システム管理者は、個人用設定ページでキャンバス アプリを含む個人用設定を適切な一連のユーザーに与えることができます。 また、ページの個人用設定をエクスポートして、1 人または複数のユーザーに送信することもできます。 これらの各ユーザーは、個人用設定をインポートできます。 個人用設定のツールバーには、個人用設定をエクスポートおよびインポートするためのボタンがあります。

メモ

キャンバス アプリが外部ユーザーと共有されている場合、これらのユーザーは、財務と運用アプリ内の埋め込みアプリを使用できません。 ただし、Power Apps 内でアプリに直接アクセスできます。 外部ユーザーには、財務と運用アプリが配置されている Microsoft 365 Azure ディレクトリに属さないゲストおよびユーザーが含まれます。

製品での個人用設定の機能について、およびそれらの使用方法の詳細については、ユーザー エクスペリエンスのパーソナライズ を参照してください。

財務と運用アプリから送信されたデータを使用するキャンバス アプリの構築

財務と運用アプリに埋め込まれるキャンバス アプリを構築する場合、プロセスの重要な部分の 1 つは、財務と運用アプリからの入力データを使用することです。 Power Apps 開発エクスペリエンスからは、財務と運用アプリから渡される入力データには、Param("EntityId") 変数を使用してアクセスすることができます。 また、バージョン 10.0.19 以降、現在の法人も Param("cmp") 変数を介してコンテキストとしてキャンバス アプリに渡されます。

たとえば、アプリの OnStart 機能では、財務と運用アプリから次のような変数に入力データを設定することができます。

If(!IsBlank(Param("EntityId")), Set(FinOpsInput, Param("EntityId")), Set(FinOpsInput, ""));

If(!IsBlank(Param("cmp")), Set(FinOpsLegalEntity, Param("cmp")), Set(FinOpsLegalEntity, ""));

キャンバス アプリの表示

財務と運用アプリのページに埋め込みキャンバス アプリを表示するには、埋め込みアプリがあるページに移動するだけです。 標準アクション ペインの Power Apps ボタンを使用してアプリにアクセスできることに注意してください。 または、新しいタブ、クイック タブ、あるいはブレードとして、またはワークスペースの新しいセクションとしてページに直接表示することもできます。 ユーザーがページに最初にアプリを読み込もうとすると、サインインするように求められます。 この手順により、ユーザーはアプリを使用するための適切なアクセス許可を持っていることを確認します。

埋め込まれたアプリの編集

アプリがページに埋め込まれた後、そのアプリの設定をいくつか変更する必要がある場合があります。 たとえば、埋め込まれたアプリに関連付けられたラベルを変更したり、アプリの新しいバージョンが作成された場合に、アプリ ID を最新の時点のものに更新したりする必要があります。

埋め込まれたアプリのコンフィギュレーションを編集するには、次の手順に従います。

  1. アプリの編集ウインドウに移動します。

    • 埋め込みアプリが Power Apps メニュー ボタンによりアクセスされた場合、Power Apps メニュー ボタンを選択したまま (または右クリック) にし、パーソナライズを選択します。 アプリの選択ドロップダウン メニューから構成するアプリを選択します。
    • 埋め込み型のアプリがページに直接表示されたら、オプションを選択し、このページのパーソナライズを選択します。 選択ツールを使用し、埋め込まれたアプリをクリックします。
    • 埋め込みアプリがダッシュボードから追加された場合は、ダッシュボードを開き、そのキャンバス アプリに関連付けられているタイルを選択したまま (または右クリック) にし、パーソナライズを選択して、ページの編集を選択します。
  2. アプリ コンフィギュレーションに必要な変更を行ない、保存をクリックします。

アプリの削除

アプリがページに埋め込まれた後、必要に応じて削除するにはいくつかの方法があります。

  • この記事の前半にある 埋め込みアプリの編集 セクションからの手順を使用して、アプリの編集ウィンドウに移動します。 ウィンドウに、削除する埋め込み型アプリの情報が表示されていることを確認してから、削除ボタンをクリックします。
  • 埋め込みアプリがダッシュボードから追加された場合は、ダッシュボードを開き、そのキャンバス アプリに関連付けられているタイルを選択したまま (または右クリック) にし、パーソナライズを選択して、ページの削除を選択します。
  • 埋め込まれたアプリは、個人用設定データとして保存されるため、ページの個人用設定をクリアすると、そのページの埋め込まれたアプリも削除されます。 ページの個人用設定をクリアするのは、永久的なもので元に戻すことはできないことに注意してください。 ページの個人用設定を削除するには、オプションを選択してこのページのパーソナライズ、最後にクリア ボタンをクリックします。 ブラウザを更新した後、このページの以前のすべての個人用設定は、削除されます。 個人用設定を使用してページを最適化する方法の詳細については、ユーザー エクスペリエンスのパーソナライズを参照してください。

付録

[開発者] フォーム上のアプリをモデル化する

この記事では、個人用設定を通じてキャンバス アプリを埋め込む方法に焦点を当てていますが、開発者は Visual Studio 開発エクスペリエンスを使用して、フォームにキャンバス アプリを追加することもできます。 これを行うには、PowerAppsHostControl をフォームに追加します。 コントロールで使用できるメタデータ プロパティは、個人用設定のエクスペリエンスと同じ機能を提供します。

[開発者] アプリの埋め込み先の指定

既定では、ユーザーは、Power Apps メニュー ボタンの下または、タブ、クイック タブ、ブレード、またはワークスペースの新しいセクションとして任意のページに直接をアプリを埋め込むことができます。 ただし、必要に応じて開発者が次の方法を実装することで、アプリの埋め込みを特定のページのみに許可するようこの機能を構成することもできます。

  • isPowerAppPersonalizationEnabled ー このメソッドが、特定のページに対して false を返す場合、Power Apps メニュー ボタンは表示されず、ユーザーは、タブを含むこのページのどこにもアプリを埋め込むことができません。
  • isPowerAppTabPersonalizationEnabled ー このメソッドが、特定のページに対して false を返す場合、タブ、クイック タブ、またはパノラマ セクションとしてページに直接アプリを埋め込むことはできません。 ページで埋め込みが許可されている場合でも、ユーザーは Power Apps メニュー ボタンを使用してアプリを埋め込むことができます。

次の例は、アプリを埋め込むための構成をするために必要な 2 つのメソッドを持つ新しいクラスを示しています。

[ExtensionOf(classStr(FormRunConfigurationPowerAppsConfiguration))]

public final class ClassTest_Extension
{
    public static boolean isPowerAppPersonalizationEnabled(str pageName)
    {
        var result = next isPowerAppPersonalizationEnabled(pageName);
        return result;
    }
    
    public static boolean isPowerAppTabPersonalizationEnabled(str pageName)
    {
        var result = next isPowerAppTabPersonalizationEnabled(pageName);
        return result;
    }
}