2

私はいくつかのアドバイスを探しています。Microsoft Dynamics 4 (CRM) から毎晩同期する複数のシステムがあります。ただし、同期がすぐに必要になる場合があるため、日中に手動で SP を実行するように求められることがよくあります。この SP は、CRM とは別のサーバーにあります。

CRM にカスタム ボタンを追加して、すぐに必要な場合にユーザーが CRM を他のシステムと同期できるようにしたいと考えています。これを、レコードが更新されるたびに発生するワークフローにしたくありません。ユーザーの決定になります。

私はいくつかのグーグルを行ってきましたが、これにどのようにアプローチするのが最善かについて岐路に立っています..1)ボタンのjavascriptからサービスを実行するか、2)ワークフローを使用してSSISを実行し、ボタンからこれを呼び出します。

オプション 1を使用する場合、Web サービスを作成するための最良の方法は何ですか? サイト間のインターネット速度によっては、同期手順の実行にかなりの数分かかる可能性があることを念頭に置いて、タイムアウトに注意する必要があります. .Net 3.5 asmx Web サービスを使用している場合、すぐに応答して SP をバックグラウンドで実行する方法はありますか? これを Javascript から呼び出すことができることはわかっています。別の方法は、バックグラウンド処理を可能にするWCFワークフローサービス(私にとってはまったく新しい)を使用することだと思いますが、これをJavascriptから呼び出すことはできますか?

オプション 2を使用する場合、CRM からローカル SSIS を実行するにはどうすればよいですか? 可能だと読みましたが、例を見つけることができませんでした。

テキストの壁で申し訳ありません。アプローチに関するガイダンスや推奨事項は大歓迎です。どうもありがとう。

TL;DR: カスタム ボタンを使用して、Dynamics 4 の別のデータベースでストアド プロシージャを実行する方法についてアドバイスを求めています。

4

1 に答える 1

2

Web サービスを作成する必要があります。これは、WCF サービスまたは従来の ASMX サービスにすることができます。CRM サーバーへの展開は少し複雑ですが、実行できます (ISV フォルダー内にアプリケーションを展開し、アプリケーションの web.config ファイルを変更して、独自の構成で CRM セットをすべて復元します)。別の Web サーバー (または少なくとも CRM サーバー上に別の Web サイト) がある場合は、はるかに簡単になります。

サービスは、呼び出されるとすぐに呼び出し元に戻るように、OneWayとしてマークする必要があります。残念ながら、これはエラー メッセージを返すことができないことも意味します。エラー メッセージはログに記録する必要があります。

ここで、CRM フォームにボタンを作成し、JavaScript を使用してサービスを呼び出します。URL パラメーターに任意の引数を渡すことによってサービスを呼び出すことができるように、サービスを構成できる必要があります。

于 2013-03-20T10:43:49.247 に答える