Dynamics CRM 2011: Solution Down Level Utility
みなさん、こんにちは。
今日は開発者の方向けの情報として、SDK 5.0.14 で提供された
Solution Down-Level Utility を紹介します。
Prepare a Solution that is Backward Compatible with Earlier Releases of Microsoft Dynamics CRM
https://msdn.microsoft.com/ja-jp/library/jj945276.aspx
背景
Microsoft Dynamics CRM 2011 のソリューションはポータブルで
適用されている Update Rollup に極力依存しないように設計が
されていますが、Update Rollup 12、および 2012 年 12 月
サービスアップデートでは、システムで大幅な変更が入った
ため、それらの環境のソリューションを Update Rollup 11 以下の
環境に移すことが困難になりました。
Solution Down-Level Utility を利用することで、Update Rollup 6
以上、Update Rollup 12 未満の環境へそれらのソリューションを
移すことが可能となります。
ただし、こちらのツールは Web リソース内のカスタムコードに
関しては対応しておりません。例えば Update Rollup 8 で提供
された Xrm.Utility や Update Rollup 12 で提供された getClientUrl
関数を Update Rollup 6 で利用できるように変換しません。
ツールを利用する場面
Update Rollup 12 以上が適用された環境、または 2012 年 12 月
サービスアップデートが適用済みの環境からエクスポートした
ソリューションを、Update Rollup 6 レベルの組織にインポートする
場合に利用します。
ただし上記注意にあるとおり、特定の Update Rollup で提供された
SDK を利用している場合には、利用できません。
ツールの利用方法
ツールは SDK に含まれており、コマンドプロンプトで実行します。
以下の手順で実行します。
1. コマンドプロンプトを開き、SDK\bin フォルダに移動します。
2. 必要な引数を指定して SolutionDownLevelUtility.exe を実行します。
引数:
/baseurl または /b 必須
ソリューションをエクスポートする組織のアドレス
/solution または /s 必須
エクスポートするソリューション名
/managed[+][-] または /m[+][-] 必須
マネージドとしてエクスポートする場合は +、アンマネージドなら -
/file または /f
エクスポートするソリューションから排除した要素を記録するファイル名
ComponentsToRemove.xml が既定
/user または /u 必須
組織に接続するユーザー情報
/pass または /p
ユーザーのパスワード。省略すると実行時に聞かれる
/homerealm または /h
IFD の場合に HomeRealm を指定
@file
パラメーターをファイルに保存しておき、構成情報として読み込めます。
例) アジア環境で組織名が crm2011training であり、MySolution
ソリューションをアンマネージドとしてエクスポートする場合
>solutiondownlevelutility.exe /b:https://crm2011training.crm5.dynamics.com
/s:MySolution /m:- /u:administrator@crm2011training.onmicrosoft.com
ツールの実行詳細はすべて画面に出力さえるため、どの
要素が削除されたかを見ることが出来ます。また出力された
ComponentsToRemove.xml でも確認可能です。
- Dynamics CRM サポート 中村 憲一郎