codeplex 上で Microsoft CRM 4.0 Many To Many Exporter/Importer というツールが公開されています。このツール CSVファイルで指定された レコードの GUID 値を使用して 多対多(NN)関連のインポートもしくは逆にエクスポートをしてくれるコマンドラインツールです。プロジェクトの移行作業で結構お世話になりました。ツールの詳細は下記リンク先を参照してください。
- Microsoft CRM 4.0 Many To Many Exporter/Importer
http://crmmanytomany.codeplex.com/
このツールはインポート(関連付け)はしてくれるのですが、 関連の解除をしてくれません。なので、公開されているソースを修正して、remove というオプションを指定すると、入力ファイルで指定されたレコードの関連を解除(Disassociate)するように修正しました。ソリューションを記事の下のほうに公開していますので必要であれば使ってください。
簡単な使い方
関連付けのインポート(既存の機能)を使用する場合は、コマンドプロンプト上で次のように入力します。
CRMAssocManyToMany.exe "import" "http://crmsv01" "dyn" "np_np_importtest_account" "np_importtest" "account" "sample.txt"
引数の意味は、紹介したcodeplex上のURLや コマンドラインヘルプで確認できますが、簡単に説明を記載します。
引数 | 説明 |
import | インポート処理の場合に指定します。removeを指定すると、関連解除。export で関連のexport を実施します。 |
http://crmsv01 | CRMサーバへのURL |
dyn | 対象とする組織名 |
np_np_importtest_account | 対象とする多対多関連名 |
np_importtest | 関連付ける1つめのエンティティの論理名 |
account | 関連付ける2つめのエンティティの論理名 |
sample.txt | 関連付けするエンティティのGUIDを入力したCSVファイル |
関連付けを解除する場合は、コマンドプロンプト上で次のように入力します。
CRMAssocManyToMany.exe "remove" "http://crmsv01" "dyn" "np_np_importtest_account" "np_importtest" "account" "sample.txt"
改造したソリューションは次のリンクからダウンロードできます。
- 実行ファイルのみ
Modified-CRMManyToMany-52176-exe.zip
- ソリューションファイル付き
Modified-CRMManyToMany-52176-Source.zip
説明は以上です。問題等なにかありましたらご連絡ください。
さんのコメント: さんのコメント: