SysAppWorkspace クラスを使用してワークスペースを構成する

重要

財務と運用 (Dynamics 365) モバイル アプリおよびプラットフォームは、非推奨になりました。 詳細については、削除済みまたは非推奨のプラットフォーム機能を参照してください。

ワークスペース クラス SysAppWorkspace は、サーバー上でワークスペースを作成、構成および公開する開始点です。 sysAppWorkspace で使用できる API には、次のカテゴリがあります。

  • ワークスペースの属性 - これはモバイルワークスペースを構築するために、ページ、タスク、エンティティ、ルックアップ、リレーションシップの作成に使用されます。

    • フリート管理のモバイル アプリのサンプル プロジェクトをダウンロードします。 これは、Dynamics365-for-Operations-mobile-FleetManagementSamples で発見された .axpp ファイルです。
    • ファイルをダウンロードした後、運用開発環境で Visual Studio を開き、Dynamics 365 > Import Project を選び、ダウンロードされたプロジェクト ファイルを参照します。 同じダイアログ ボックスで、上書きを選び、新しいソリューションの作成を選択します。 インポートが完了したら、ソリューションをビルドします (または、フリート管理 モデルをビルドします)。
    • 例を確認するには、まず FMReservationManagementWorkspace クラスを確認し、ワークスペースに含まれるすべてのページとアクションを表示します。 ソリューション エクスプローラーを使用して、ページとタスク クラス、およびそれらに含まれるすべての資産を検索します。 各 API の詳細については、API リファレンスを参照してください。
    • モバイル ワークスペースは、X + + 属性 APIs またはその両方の組み合わせを使用して、デザイナー ウィンドウから作成できます。 デザイナーから AOT にモバイル アプリのメタデータをインポートする方法については、この後の「ワークスペース クラスを使用して AOT リソースからワークスペースを発行」を参照してください。 サンプル プロジェクトのフリート管理モバイル アプリは、X + + 属性 APIs を使用して作成された完全なモバイル アプリです。
  • ワークスペース メタデータ クラス - これはモバイル ワークスペースのためのメタデータへのサーバー側のビジネス ロジックを調査し、適用するために使用します。

サーバー側の APIs の完全一覧については、サーバー側の開発 (ワークスペース X++ APIs) を参照してください。

新しいワークスペース クラスを作成する

ワークスペースに SysAppWorkspace クラスを使用するには、 SysAppWorkspace クラスを拡張してワークスペース用に新しいクラスを作成する必要があります。 新しいクラスを使用してワークスペース メタデータを変更することができます。 新しいクラスは、モバイル アプリのライフ サイクル管理のフックも提供します。

ワークスペース用の新しいワークスペース クラスを作成するには、これらの手順に従います。

  1. ワークスペース用の新しいクラスを作成し、それを SysAppWorkspace クラスから拡張します。

    ワークスペース クラス。

  2. 新しいクラスに SysAppWorkspaceAttribute 属性を追加し、ワークスペースの AppID 値を指定します。 アプリ用アプリ ID はモバイル アプリ デザイナー内の 概要 ページで見つけることができます。

    ワークスペース概要のアプリ ID。

    ワークスペース クラスの AppID 値。

  3. オプション: ワークスペースがアプリケーション オブジェクト ツリー (AOT) リソースの場合、AOT リソースの名前を SysAppWorkspaceAttribute コンストラクターの 2 番目のパラメーターとして指定します。

    ワークスペース クラスの AOT リソース名。

AOT リソースからワークスペースを発行するには、workspace クラスを使用します。

ワークスペースはデータベース内に配置することができます。 リソースとして AOT に常駐することもできます。 AOT リソースに格納されているワークスペースを可視化するには、ワークスペース・クラスを作成し、そのワークスペースを含む AOT リソースの名前をポイントする必要があります。 AOT リソースとして保管されているワークスペースは、モバイル アプリ デザイナーを使用して編集または削除することはできません。 これらのワークスペースはエクスポートのみ可能です。

AOT リソースとして存在するワークスペースを公開するには、これらの手順に従います。

  1. データベースに格納されるワークスペースを作成するとき、AOT リソースとして保存できるように、それをモバイル アプリ デザイナーからエクスポートする必要があります。 ワークスペースは XML ファイル形式でエクスポートされます。

    ワークスペースをエクスポートします。

  2. モバイル アプリのデザイナーからワークスペースを削除します。 それを後で AOT リソースから読み込みます。

    ワークスペースを削除します。

  3. 新しい AOT リソースを作成し、リソースのエクスポートされたワークスペースを選択します。

    リソースとしてのワークスペース。

  4. ワークスペース用の新しいクラスを作成します。 このクラスは、SysAppWorkspace を拡張する必要があります。 SysAppWorkspaceAttribute 属性をクラスに適用し、リソースを含むアプリ ID と AOT リソース名を指定します。

    新しいワークスペース クラス。

  5. クラスをビルドして、モバイル アプリ デザイナーを再オープンします。

    ワークスペースが公開されました。 これはデザイナーに表示されますが、編集または削除できません。 ワークスペースがメタデータから読み込まれることに注意してください。

    メタデータ内のワークスペース。

発行済みワークスペースの更新

ワークスペースが AOT リソースの一部である場合、モバイル アプリ デザイナーを使用して編集することはできません。 次の例では、MyWorkspace というワークスペースが AOT に存在し、そこには WorkspaceInAOT というバッキング クラスがあります。

AOT 内のワークスペース。

AOT 内にある公開済みのワークスペース。

ワークスペースを編集するには、これらの手順に従います。

  1. モバイル アプリ デザイナーを使用して、ワークスペースをエキスポートします。 デザイナーは、AOT に保存されているワークスペースの新しいアプリ ID を自動的に作成します。

  2. モバイル アプリ デザイナーを使用して、新しくエクスポートされたワークスペースをインポートします。

    1. オプション: 名前を変更します。新たに追加されたワークスペースを他のワークスペースと区別できるようにします。

    2. 新しく作成したワークスペースのアプリ ID をコピーします。

      データベースの新しいワークスペース。

      新しいワークスペースの詳細。

  3. バッキング クラスを拡張し、SysAppWorkspaceAttribute 属性を適用し、新しいアプリ ID を指定する新しいクラスを作成します。

    SysAppWorkspaceAttribute を使用したコード エディター。

新しいワークスペースおよびバッキング クラスでの作業を続行することができるようになりました。 変更を行なった後、AOT ベース ワークスペースとそれらをマージできます。

AOT リソースであるワークスペースの削除

モバイル ワークスペースが AOT リソースとして格納されている場合は、それをモバイル アプリ デザイナーを使用して削除することはできません。 AOT リソースとして存在するワークスペースを削除するには、これらの手順に従います。

  1. ワークスペースを含む AOT リソースを削除します。

    削除するワークスペース。

  2. ワークスペース用に作成されたワークスペース クラスを削除します。

    削除するワークスペース クラス。

  3. AOT リソースおよびクラスを含む完全なモデル ビルドを実行します。 次の図は、アプリケーション基準モデルの完全なビルドを示しています。 アプリケーション基盤モデルには、AOT リソースとワークスペース クラスも含まれます。 フルビルドをスピードアップするには、オプション タブですべての選択をクリアします。

    完全なビルド メニュー項目。

    完全なビルド。

  4. ビルドが完了したら、モバイル アプリ デザイナーを再オープンして、ワークスペースが存在しないことを確認します。