AX 2012 からのアップグレード - コードのアップグレード サービスを使用した工数見積
重要
現在、アップグレードは、Dynamics AX 2012 R2 または Dynamics AX 2012 R3 のいずれかからのみ行うことができます。 最新の財務と運用アプリケーション リリースにアップグレードする前に、それぞれのリリースに対応した最新の累積的な更新プログラムに更新してください。
この記事では、Microsoft Dynamics Lifecycle Services のコード アップグレード サービスを使用して、Microsoft Dynamics AX 2012 財務と運用からコード基準をアップグレードするために必要なタスクと工数を見積もる方法を説明します。
ノート
Dynamics Lifecycle Services のコード アップグレード は米国地域でのみ利用できます。 プロジェクトが別の地域に存在する場合は、lcs.dynamics.com で一時的な Dynamics 365 財務と運用プロジェクトを作成し、コード アップグレードを実行します。 コード アップグレードが完了したら、一時的なプロジェクトを削除できます。 地域に関する詳細については、Dynamics 365 財務と運用アプリで使用可能な地域 を参照してください。
開始する
コード アップグレード サービスは、AX 2012 モデル ストアのエクスポートを適切な形式に変換します。 ただし、サービスが識別してもまだ独自で解決できない問題を開発者が解決するまで、コードの新しいバージョンは完全に機能しません。
コード アップグレード サービスは、これらのアクションを実行します。
- いくつかのタイプの競合問題を直接解決します。
- その他の問題については、Microsoft Azure DevOps タスクにログ記録します。
- 適切な形式でコード バージョンを作成し、Azure DevOps プロジェクトの新しい分岐への新しいバージョンを確認します。
分析フェーズでは、レポートを使用してコード変換アクティビティを完了するために必要な工数を見積もります。
次の図は、コードのアップグレード サービスを構成するプロセスの概要を示しています。
コード アップグレード サービスの出力は、開発者が使用するように設計されています。 この出力は、開発者がコードのアップグレード タスクを完了するために必要な工数を見積もるのに役立ちます。 見積もりを作成するには、サービスが Azure DevOps で生成するタスクと、サービスが生成する新しいバージョンのコードを確認する必要があります。
細目
コードのアップグレード サービスは、Azure DevOps プロジェクトに接続し、Trunk\Main ブランチを検索し、Releases\<バージョン番号> という名前の新しいブランチに分岐してから、コードのアップグレードを行うことで機能します。 このプロセスが完了した後、開発環境を、Releases\<バージョン番号> 下の新しいブランチに同期させ、競合を解決できます。 アップグレード後のコードをコンパイルしてテストしたら、新しいブランチを Visual Studio のソース管理エクスプ ローラーを使用して Trunk\Main にマージして戻すことができます。 その時点で、プロセスが完了します。
Dynamics 365 財務と運用アプリでは、Microsoft モデルのオーバーレイによるカスタマイズはできません。 アップグレードする前に、カスタマイズを拡張機能にリファクターする計画が必要です。 詳細については 拡張性 および オーバレイを拡張機能にリファクタリングするため、モデルの制限を緩和する を参照してください。
処理
AX 2012 モデル ストアをエクスポートする
ノート
AX 2012 管理ユーティリティは、モデル ストアをエクスポートする環境にインストールする必要があります。
モデル ストアをエクスポートするには、以下の手順を実行します。
管理ツール の下にある Microsoft Dynamics AX 2012 管理シェル を開きます。
次のコマンドを実行して、モデル ストアをエクスポートします。 必要に応じてパスを調整します。
axutil exportstore /file:C:\Temp\AX2012R3CU12ModelStore
エクスポートしたモデル ストア ファイルを圧縮 (zip) します(*.axmodelstore)。
トランク\メイン フォルダー構造を作成する
コード アップグレード サービスがソース コードを識別するには、Azure DevOps プロジェクトに Team Foundation バージョン管理 (TFVC) コード リポジトリが含まれている必要があります。 さらに、コード リポジトリのフォルダー構造は、次の厳密なパターンに準拠している必要があります:
-
コードおよびメタデータの場合:
/<Azure DevOps project name>/Trunk/Main/Metadata
-
Visual Studio プロジェクトおよびソリューション ファイルの場合:
/<Azure DevOps project name>/Trunk/Main/Projects
新しいフォルダーは、Azure DevOps Web インターフェイスの リポジトリ で直接作成できます。
ノート
フォルダー名は、大文字と小文字を区別します。
既定では Azure DevOps プロジェクトは、Git バージョン管理を使用します。 TFVC リポジトリを追加する必要があります。
- プロジェクト設定 へ移動し、リポジトリ を選択します。
- 新しいリポジトリ を選択します。
- タイプ フィールドで、TFVC を選択します。
- 作成を選択します。
個人用アクセス トークンを作成する
Azure DevOps プロジェクトに接続するために、Lifecycle Services は個人用アクセス トークンを使用して認証されます。 Azure DevOps で個人用アクセス トークンを作成するには、これらの手順に従います。 既に Lifecycle Services プロジェクトを Azure DevOps プロジェクトに接続するように構成している場合は、このセクションを省略できます。
VisualStudio.com にサインインし、Azure DevOps プロジェクトを検索します。
ユーザー設定 を選択し、個人用アクセス トークン を選択します。
新しいトークン を選択し、個人用アクセス トークンを作成します。 次のフィールドを設定します。
- 名前 – 適切な名前を入力します。
- 組織 – このフィールドは、既定で組織に設定する必要があります。
- 有効期限 – 日付を入力します。
- スコープ – このフィールドを フル アクセス に設定します。
作成を選択します。
CodeUpgrade トークン 値をクリップボードにコピーします。
ノート
この手順の完了後、トークンの詳細を見つけることができなくなります。 ページから移動する前に、トークン コードがコピーされていることを確認します。
Lifecycle Services プロジェクトをコンフィギュレーションして Azure DevOps に接続する
- Lifecycle Services プロジェクトで、プロジェクト設定 タイルに移動し、Azure DevOps を選択します。
- Azure DevOps の設定 を選択します。 この構成は、多くの Lifecycle Services ツールによって要求されます。 既に Lifecycle Services を Azure DevOps プロジェクトに接続するように構成している場合は、このセクションを省略できます。
- Azure DevOps 組織のサイトおよび以前に作成したアクセス トークンを入力します。 その後続行を選択します。
- 接続する Azure DevOps 組織のプロジェクトを選択します。 その後続行を選択します。
- 確認および保存ページで、保存を選択します。
コード アップグレードを実行する
Lifecycle Services プロジェクトで、ドロップダウン メニューからコード アップグレードを選択するか、またはコード アップグレード タイルを選択します。
追加 を選択して、次のフィールドを設定します:
- 名前 – コード アップグレードの名前を入力します。
- 説明 – 説明を入力します。
- アップグレード元のバージョン – Microsoft Dynamics AX 2012 を指定します。
- アップグレード後のリリース – Dynamics 365 の財務と運用 を指定します。
- 見積のみ – このチェックボックスをオンすると、Azure DevOps でチェックインや新規コード ブランチの作成を行わずにレポートを生成できます。 実際のアップグレードにコミットする前に、アップグレードに関連する作業の潜在的なサイズを評価する場合は、この設定を使用します。
作成を選択します。
ファイルの追加 を選択します。 次に、ファイルのアップロード ページで、次のフィールドを設定します:
- ファイル タイプ – ModelStore.zip ファイル を指定します。
- 参照 – 先に作成した、エクスポートされた圧縮モデル ストア ファイルを参照します。
アップロードを選択します。
ファイルがアップロードされると、コード アップグレード サービス ファイルのアップロード ページに表示されます。 ZIP ファイルを選択します。
コードの分析 を選択します。 コードのアップグレード プロセスが開始されます。 大規模なソリューションの場合、このプロセスは完了するまでに通常 40- 60 分かかります。
Lifecycle Services の コード アップグレード タイルに戻り、分析の名前を選択して結果を表示します。
コードのアップグレード サービスは、新しいブランチを作成し、アップグレードされたコードを Azure DevOps プロジェクトにチェックインします。 アップグレード プロセスが完了した後、コードは リリース フォルダ下の新しいブランチに存在します。 分岐名の後には、アップグレードの日時が付いています。
ノート
見積のみ チェックボックスをオンにした場合、コードは Azure Dev Ops にアップロードされません。
リリースを Trunk\Main にマージ
Releases\<バージョン番号> のアップグレードされたコードが正常にコンパイルされ、コードの移行とテストが完了すると、ブランチを Trunk\Main にマージできます。
ブランチをマージするには、Visual Studio の開発環境で次の手順を実行します。
- ソース管理エクスプローラ ウィンドウを開きます。
- Releases\<バージョン番号> ブランチを長押し (または右クリック) し、分岐およびマージ>マージ を選択します。