Dynamics CRM クライアント SDK バージョンを更新し、ACSの参照を除外する方法

みなさん、こんにちは。 Azure Access Control Service (ACS)の廃止に伴い、古いSDK を使用しているSDK クライアントを 更新する必要があります。本記事では更新対象のSDKクライアントの特定方法と更新方法をご紹介します。 Dynamics 365 バージョン8.2 (Online) 環境ではこちらの対応を実施しないと認証処理がエラーで失敗しますので即日対応が必要です。Dynamics CRM 8.1 Online 環境では 2017年6月30日 から同様にエラーが発生するようになるので、この日までに対応が必要となります。Dynamics 365 8.2, Dynamics CRM 8.1 設置型環境では 2017年6月30日以降もエラーは発生しませんが、サポートされる構成にするために可能な限り早く、SDK クライアントを最新のものに更新する必要があります。サポートされるSDK と CRM Server の組み合わせについては チームブログ をご確認ください。 本記事は、海外チームのブログにて投稿された内容を基に記載しています。 情報元: Update Dynamics CRM Client SDK version to avoid calls to ACS =================================================== 問題 Azure Access Control Service (以下 ACS)…


Microsoft Dynamics 365 : SDK の下位互換性について

みなさん、こんにちは。 Dynamics 365にてサポート対象のSDKと、そのSDKにてサポートしているDynamics  CRMの下位バージョンを ご紹介いたします。   本記事は、米国チームのブログにて投稿された内容を基に記載しています。 情報元: Dynamics 365 SDK Backwards Compatibility =================================================== Azure Access Control サービス (以下 ACS) の廃止に伴って、 SDK の認証コードで、 ACS へのすべての リファレンスを削除する変更が必要となります。Microsoft Dynamics CRM Online 2016 Update 1 (v8.1.1) および Microsoft Dynamics 365 (v8.2) のバージョンからは、サーバー側の Live ID サポートと ACS の 依存関係を削除しました。 Dynamics CRM 2016 から Microsoft.Xrm.Tooling.Connector を使用することで、CRM Web サービスにて OAuth 2…


Microsoft Dynamics CRM Plugin Registration Tool による Plugin の更新について

みなさん、こんにちは。 今回は Dynamics CRM において、Plugin Registration Tool を利用し、既存のプラグインを更新する際に、 以下のエラー メッセージが発生し、更新が失敗する場合があります。 本投稿では何故エラーとなってしまうか、またその際の対処策についてご案内いたします。 エラー内容 – エラー メッセージ抜粋 Plug-in assembly does not contain the required types or assembly content cannot be updated (Error Code -2147204725) 原因と対処策について 本エラー発生には複数の原因がありますが、主に以下 3 点が発生の条件となります。 1. プラグイン アセンブリ メタデータを変更してしまっている場合 プラグイン の Major バージョン、Minor バージョン、Name、PublicKeyToken、Culture 属性が変更された場合、本エラーが発生いたします。 更新後の プラグイン アセンブリのバージョンを更新前のバージョンに合わせるためには、Visual Studio で該当プラグイン プロジェクトを開き、アセンブリ情報ダイアログの 「アセンブリ バージョン」を変更することでアセンブリ バージョンを変更できます。…


de:code 2016 セッション動画が公開されました!

みなさん、こんにちは。 先日行われた de:code 2016 のセッション動画が Chanel 9 に公開されました。 セッション内で利用されているソリューションやコードは過去の記事で紹介しています。合わせて参照ください。 PRD-006: 機械学習で顧客対応はこう変わる! Azure ML と Dynamics で造る次世代 CRM https://channel9.msdn.com/Events/de-code/2016/PRD-006 https://blogs.msdn.microsoft.com/crmjapan/2016/06/08/decode-2016-prd-006-followup/ PRD-007: Dynamics CRM Online 2016 新 Web API で開発するモバイル アプリ https://channel9.msdn.com/Events/de-code/2016/PRD-007 https://blogs.msdn.microsoft.com/crmjapan/2016/05/30/decode-2016-prd-007-followup/ – プレミアフィールドエンジニアリング 河野 高也 ※本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります  

0

機能変更のお知らせ

みなさん、こんにちは。 Dynamics CRM Online 2016 更新プログラム 1 および、Microsoft Dynamics CRM 2016 サービス パック 1 における 機能変更についてお知らせします。本記事は、米国チームのブログにて投稿された内容を基に記載しています。   情報元: Deprecation announcements with Dynamics CRM Online 2016 Update 1 and Microsoft Dynamics CRM 2016 Service Pack 1 ==================================================== Dynamics CRM を使用いただいている皆様に最適な機能を提供し続けるため、古い機能をより良いものに置き換える必要があります。 そのため、みなさんが事前に古い機能から新しい機能に変更する準備ができるよう変更内容を告知します。 これら古い機能の利用は、当分の間引き続きサポートしますが将来的に削除される可能性があるため推奨されません。 既存のシステムで利用されている古い機能を新しい機能へ変更する必要があります。 MSDN: Important changes coming in future releases of Microsoft Dynamics CRM TechNet: Important…

0

de:code 2016 PRD-007 フォローアップ記事

みなさん、こんにちは。 既にご存知だとは思いますが、先週 de:code 2016 が開催されました。ご来場いただきました 皆さまには、改めて感謝の意を述べさせていただきます。ありがとうございました。 私は 2 日目 15:55 からの回でスピーカーとして登壇しましたが、その時に紹介した Xamarin.Forms のサンプルアプリケーションを GitHub に公開しました。 https://github.com/kenakamu/decode2016-CRM-App セッションに参加された方も、参加できなかった方も是非遊んでみてください。 アプリケーション概要 非常にシンプルなアプリケーションで、以下のような UI でその日の予定を確認できるものです。 サービスの利用 このアプリケーションはMicrosoft Dynamics CRM 2016 で公開された Web API を利用して予定を 取得し、SharePoint Online API で資料のデータを取得しています。認証はいずれも Azure Active Directory の OAuth 2.0 を Active Directory Authentication Library 経由で利用しています。 Xamarin.Forms C# ですべてのプラットフォームをカバーできるよう、また極力コードの再利用を行えるよに Xamarin.Forms を使用しています。アプリケーションを試される場合には、Visual Studio 2015 Update 2…


LINQPad 用 Dynamics CRM Web API ドライバーが公開されました!

みなさん、こんにちは。 今日は先日公開された、LINQPad 4 および LINQPad 5 用 Dynamics CRM Web API ドライバーを紹介します。 https://crmlinqpadwebapi.codeplex.com/ LINQPad とは LINQPad (http://www.linqpad.net/) は LINQ クエリを様々なデータソースに対して 実行できる、開発者向けのツールです。また、LINQ クエリだけでなく C#/F#/VB の ステートメントやコードブロックを実行する機能持っています。一部の機能は 無償で提供されていますが、IntelliSense やデバッグ機能は有償となっています。 本 ドライバーで行えること 本 ドライバーは以下の機能を提供します。 – Dynamics CRM 組織に対する LINQ クエリーの実行 – Web API Action と Function の実行 – Dynamics CRM Online の場合、Azure AD への登録 尚、本ドライバーは Dynamics CRM 2016…


Dynamics CRM 2016 SDK 新機能: SLA と Xrm Tooling の新機能

みなさん、こんにちは。 今回は Dynamics CRM 2016 SDK の新機能より、サービスレベル契約 (SLA) の新機能と Xrm Tooling の新機能をそれぞれ紹介します。 サービスレベル契約 (SLA) の新機能 今回のリリースで、SLA は以下の機能が追加されました。 – 任意の SLA 適用 – SDK による SLA 状態の変更 任意の SLA 適用 これまでサービス案件に対して SLA を実行する場合、既定の SLA を 用意したり条件が自動で一致するものを用意する必要がありました。 今回のリリースではサービス案件エンティティ (incident) に、新しく SLAId 列が追加されました。こちらの列に対して、手動または Update メソッドで適用したい SLA を設定することができます。 SLA の有効化/無効化 任意の SLA のステータスを Update 要求で有効化/無効化できるように なりました。これによりサポート案件レコードを他システムから移行 する際に、一時的に SLA を無効にすることがプログラムからできます。…


Dynamics CRM 2016 SDK 新機能: クライアントサイドスクリプトその 2 - Web API 関連関数

みなさん、こんにちは。 前回に引き続き、Dynamics CRM 2016 SDK の新機能より、クライアント サイド SDK の機能を紹介します。今回は Web API 関連関数を紹介します。 概要 スクリプトから Web API を利用する場合、サーバーのバージョンや サービスのアドレスなど動的に取得しないといけない値があります。 今回のリリースではそれらのニーズを満たす関数が提供されています。 バージョンの取得 現在実行中の Microsoft Dynamics CRM のバージョンは以下の関数で コンテキスト取得できます。 Xrm.Page.context.getVersion() エンティティセット名の取得 現在スクリプトを実行しているレコードのエンティティセット名は 以下の関数で取得できます。 Xrm.Page.data.entity.getEntitySetName() レコードの URL 取得 特定のレコードに対する URL は以下の関数で取得できます。 Xrm.Utility.getEntityUrl(<エンティティ名>,<レコード ID>) スクリプトの作成 では早速スクリプトを作ってみましょう。 1. ブラウザで Microsoft Dynamics CRM に接続します。 2. 設定 | カスタマイズ | システムのカスタマイズを開きます。 3. 左ペインより…


Dynamics CRM 2016 SDK 新機能: クライアントサイドスクリプトその 1 - オートコンプリート

みなさん、こんにちは。 今回から Dynamics CRM 2016 SDK の新機能より、クライアントサイド SDK の機能を紹介します。今回はオートコンプリートを紹介します。 概要 オートコンプリート機能は、参照フィールドと似た体験を、テキスト フィールドでも利用できるよものです。ユーザーがタイプした文字列 を都度取得し、それに対応する候補を以下のように表示できます。 ※日本語のように入力後、変換を確定する入力方法は対応していません。 入力中の文字列取得 入力中の文字は、Xrm.Page.getControl(“<control name>”) に対して、 getValue() 関数を実行することで取得できます。 関数のアタッチ 文字入力時にトリガーされる関数は GUI からアタッチできないため、 以下のコードでアタッチする必要があります。 Xrm.Page.getControl(“<control name>”).addOnKeyPress(<function>); またここで指定した関数には実行コンテキストが引数として自動で 渡され、<context>.getEventSource() 関数にて元のコントロールを 取得することができます。 すでにアタッチ済みの関数をデタッチするには、コントロールに 対して removeOnKeyPress(<function>)関数を実行します。 候補の表示/非表示 候補の一覧は、Xrm.Page.getControl(“<control name>”) に対して showAutoComplete(<候補のセット>) を実行する事で呼び出せます。 渡す候補のセットは候補の一覧である results、候補一覧の右下に 出ているリンクを作る commands を含みます。 results は id, icon, fields を持ったオブジェクトの配列として定義され、 field は最大 3 列のデータが表示されます。…