注
コミュニティの関心グループが Yammer から Microsoft Viva Engage に移行されました。 Viva Engageコミュニティに参加し、最新のディスカッションに参加するには、 Finance and Operations Viva Engage Community へのアクセス権フォームに入力し、参加するコミュニティを選択します。
バージョン 8.0 以降、財務および運用アプリ用の開発ツールでは、オーバーレイを使用してMicrosoftコードをカスタマイズすることはできません。 代わりに、拡張機能を使用して動作を変更および追加します。 "オーバーレイなし" 制限は、すべての顧客が最新の機能と修正プログラムの利点を受け取ることができるように、更新が簡単で常に最新のバージョンを実行できるクラウド サービスを顧客に提供するための製品進化の重要な部分です。
コードを Dynamics AX 2012 からアップグレードした後、または Finance and Operations バージョン 7 のDynamics 365からアップグレードした後も、オーバーレイを使用するカスタマイズでは、コードのコンパイル時にエラーが発生します。 コードをリファクタリングするために、オーバーレイするモデルのモデル記述子ファイルのオーバーレイ制限を一時的に緩和できます。 この一時的な緩和は、開発環境とデモ環境でのみ機能し、Standard Acceptance Test (またはそれ以上) のサンドボックスや運用環境などのランタイム環境にデプロイすることはできません。 記述子の制限を緩和したら、拡張機能の使用、コンパイル、実行、テストを行うためにコードを段階的にリファクタリングできます。
詳細なプロセス
モデルの制限を緩和するには、以下の手順を実行します。 この手順は、クラウド環境またはローカル仮想マシン (VM) で実行できます。
財務と運用アプリの開発環境を展開します。
Microsoft Dynamics Lifecycle Services コード アップグレード サービスを実行して、ソリューションをアップグレードします。
コンパイルを有効にするために、必要に応じてMicrosoftモデルでオーバーレイを一時的に許可します。
a.
C:\AOSService\PackagesLocalDirectoryフォルダー内で目的のモデルを見つけます。b. 記述子フォルダーに移動します。 たとえば、「
\Currency\Descriptor」のように入力します。c. XML ファイルを開きます。 たとえば、「
Currency.xml」のように入力します。d. Customization メタデータ要素を AxModelInfo メタデータ要素の内側に追加して、AllowAndWarn を指定します。ファイルの冒頭はこのようになります。
<AxModelInfo xmlns:i="http://www.w3.org/2001/XMLSchema-instance"> <AppliedUpdates xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" /> <Customization>AllowAndWarn</Customization>オーバーレイ機能を拡張機能としてリファクタリングし、テストします。 拡張機能を使用して、オーバーレイを排除します。 必要な場合には、拡張機能の要求を行います。
一時的な変更をMicrosoftモデルに戻します。 オーバーレイを使用するモデルをデプロイすることはできないため、記述子ファイルを必ず更新してください。
拡張機能の要求のプロトタイピング
ソリューションが拡張機能に徐々に移行するにつれて、ソリューションのブロックを解除するために拡張要求が必要になる場合があります。 ソリューションのブロックを解除し、拡張機能に移行プロセスを円滑化するために必要なものを完全に理解するには、別のモデルで拡張機能の機能をプロトタイプ化します。
オーバーレイをリファクタリングするために必要な拡張機能を特定します。
拡張機能のプロトタイプを拡張機能プロトタイプ モデルに追加します。
列挙型の拡張については、対象の列挙型のコピーを拡張機能プロトタイプ モデルに追加して、拡張可能の設定を行います。
抽出メソッドの拡張については、抽出されたメソッドとオーバーレイされたオリジナルのプロトタイプを拡張機能プロトタイプ モデルに作成します。
プロトタイプの拡張機能を使用します。
プロトタイプの拡張機能で問題がなければ、対応する要求を作成します。
拡張機能がプラットフォームまたはアプリケーションに実装されている場合は、プロトタイプ拡張機能と関連するオーバーレイヤーを拡張プロトタイプ モデルから削除します。
ソリューションのすべてのオーバーレイが拡張機能にリファクタリングされ、拡張機能プロトタイプ モデルが空になったら、ソリューションのリファクタリングは完了です。