Microsoft-crm-web-services
Microsoft Dynamics CRM-Webサービス
Microsoft Dynamics CRMは、外部アプリケーションからCRMにアクセスし、CRMで作成、削除、更新、検索などの一般的なビジネスデータ操作を実行するWebメソッドを呼び出すために使用される2つの重要なWebサービスを提供します。
次のシナリオを考慮してください-
- 外部の.NETアプリケーションがあり、CRMと通信する必要があります。 たとえば、新しい顧客が外部アプリケーションに登録されたときに、CRMに連絡先レコードを挿入できます。
- または、CRMでレコードを検索し、外部アプリケーションで検索結果を表示することもできます。
このようなシナリオでは、CRMによって公開されるWebサービスを使用して、アプリケーションでそれらを使用し、CRMで作成、削除、更新、および検索の操作を実行できます。
IDiscoveryService Webサービス
このWebサービスは、指定されたユーザーが属する組織のリストと、各組織のURLエンドポイントを返します。
IOrganizationService Webサービス
このWebサービスは、CRMのデータとメタデータにアクセスするために使用される主要なWebサービスです。 IOrganizationServiceは、2つの重要なアセンブリ- Microsoft.Xrm.Sdk.dll および Microsoft.Crm.Sdk.Proxy.dll を使用します。 これらのアセンブリは、 Bin フォルダー内のCRM SDKパッケージにあります。
このアセンブリは、Microsoft Dynamics CRMへの接続を簡単にするプロキシクラス、認証方法、サービス契約など、xRMのコアメソッドとタイプを定義します。
このアセンブリは、非コアメッセージの要求と応答、および組織データの操作に必要な列挙を定義します。 これら2つのアセンブリでサポートされる名前空間は次のとおりです。
これらの各アセンブリは、特定のメッセージをサポートします。このメッセージは、エンティティに保存されているデータを操作するために使用されます。 それらによってサポートされているメッセージの完全なリストは、次のリンクで見つけることができます-
サポートされるxRMメッセージ-https://msdn.microsoft.com/en-us/library/gg334698.aspx
サポートされているCRMメッセージ-https://msdn.microsoft.com/en-us/library/gg309482.aspx
IOrganizationService Webサービスメソッド
Sr.No | Method & Description |
---|---|
1 |
IOrganizationService.Create レコードを作成します。 |
2 |
IOrganizationService.Update 既存のレコードを更新します。 |
3 |
IOrganizationService. Retrieve レコードを取得します。 |
4 |
IOrganizationService. RetrieveMultiple レコードのコレクションを取得します。 |
5 |
IOrganizationService. Delete レコードを削除します。 |
6 |
IOrganizationService. Associate レコード間のリンクを作成します。 |
7 |
IOrganizationService.Disassociate レコード間のリンクを削除します。 |
8 |
IOrganizationService.Execute ケース解決、重複検出などの特殊な処理だけでなく、一般的なレコード処理にも使用されます。 |
Webサービスの例
CRMでWebサービスがどのように機能するかを理解するために、CRM SDKが提供する例を見てみましょう。 この例では、新しいAccountレコードを作成して更新し、最後にCRM IOrganizationService Webサービスを使用して削除します。
- ステップ1 *-CRM SDKを抽出したフォルダーを開きます。 次の場所を参照して、QuickStartCS.slnソリューションを開きます。SDK\ SampleCode \ CS \ QuickStart
ステップ2 *- *QuickStart with Simplified Connection プロジェクトを検討します。 このプロジェクトで app.config を開きます。 デフォルトでは、このファイルの connectionStrings セクションがコメント化されます。
これから、最初の接続文字列キーのコメントを外し、次の3つの詳細を編集します-
ユーザー名-CRM Onlineユーザー名。
パスワード-CRMオンラインのパスワード。
ステップ3 *-このプロジェクトの *SimplifiedConnection.cs ファイルとその中のRunmethodを開きます。
- ステップ4 *-このメソッドは、基本的にCRM Webサービスを使用したすべてのCRUD操作を示します。 このコードは、最初に組織インスタンスを作成し、次にアカウントレコードを作成し、作成したレコードを更新して、最後に削除します。 このコードの重要なコンポーネントを見てみましょう。 このコードの実行時にCRMでの変更を確認するには、このコードを段階的にデバッグし(以下で説明します)、CRMの変更を同時に確認します。
- ステップ4.1 *-*ステップ2 *で変更した接続文字列を使用して、組織への接続を確立します。
- ステップ4.2 *-CRM組織Webサービスのプロキシインスタンスを取得します。
- ステップ4.3 *-新しいAccountエンティティオブジェクトを作成し、そのName、AccountCategoryCodeおよびCustomerTypeCodeを設定します。
- ステップ4.4 *-組織サービスのCreateメソッドを使用して新しいレコードを作成します。
CRMに移動すると、新しく作成されたアカウントレコードが表示されます。
- ステップ4.5 *-アカウントが作成されると、サービスはRetrieve Web Serviceメソッドを使用してCRMからレコードを取得します。
- ステップ4.6 *-取得したレコードを取得したら、レコードの更新値を設定できます。
- ステップ4.7 *-レコードの更新値を設定した後、Webサービスの更新メソッドを使用して、レコードを更新してCRMデータベースに戻します。
CRMでレコードを開くと、これらの値が更新されていることがわかります。
- ステップ4.8 *-最後に、Delete web serviceメソッドを使用してレコードを削除します。
CRMで同じレコードを更新すると、そのレコードは既に削除されているため利用できなくなっていることがわかります。
結論
この章では、CRMが提供する2つの重要なWebサービスと、これらのWebサービスを外部アプリケーションから使用してさまざまなCRUD操作を実行する方法の実例を取り上げました。