Dynamics CRM 2011 強化された Plug-in

みなさん、こんにちは。 今日は Dynamics CRM 2011 の強化された Plug-in を紹介します。また Dynamics CRM 2011 から 開発を始めた方も多いかと思いますので、 Plug-in の基本的な機能も合わせて紹介します。 Plug-in Dynamics CRM 2011 はいくつかの拡張ポイントを提供しています。Plug-in はプラットフォームの オペレーションパイプラインに登録できる、カスタムロジックです。また Plug-in はプラットフォームの 操作によって発生したイベントのハンドラーと捕らえることも可能です。 たとえば、取引先企業の作成時にカスタムロジックを実行したり、レコードのアサインのタイミングでロジックを実行することが可能です。 イベント実行パイプライン Dynamics CRM 2011 の Web サービスやクライアントから、レコードの作成、更新、削除等の 操作が行われた場合に、それらの処理はイベント実行パイプラインで実行されます。パイプランは 5つのステージに分かれており、それぞれ以下のように定義されています。 ステージ 10 Pre-Validation 一番初めのステージで、メインのシステム処理外の前処理に位置します。基本的にデータベースの トランザクション外に位置するステージで、Plug-in の登録が可能です。 ステージ 20 Pre-Operation メインのシステム処理内の、前処理のステージになります。データベースのトランザクション内に 位置し、Dynamics CRM 2011 から Plug-in の登録が可能になりました。 ステージ 30 Main-Operation メインのシステム処理です。システム内部で使用されるステージで、Plug-in…


Dynamics CRM 2011 リボンのカスタマイズ パート 5

みなさん、こんにちは。 今回でリボンのカスタマイズシリーズは終わりです。最終回は テンプレートの機能を紹介します。 リボンのコントロールは、複数の表示形式があります。以下に その例を挙げてみます。 [アイコン大] [文字とアイコン小] [アイコン小のみ] リボンには複数のコントロールをまとめている単位としてグループが ありますが、グループ内のコントロールも様々なものが混在しています。 またスケーリング時の動作も、グループによって異なります。 [取引先担当者グリッドの既定のタブ、最初のグループ] [スケーリング時] テンプレートを利用すれば、このような動作をきめ細かく制御可能です。 Templates 要素 まずは RibbonDiffXml の Template 要素から解説します。サンプルとして 以下のような Templates 要素を用意しました。 <Templates>   <RibbonTemplates Id=”Mscrm.Templates”>     <GroupTemplate Id=”MyTemplate”>       <Layout Title=”Large”>         <OverflowSection Type=”OneRow” TemplateAlias=”m1″ DisplayMode=”Large”/>       </Layout>       <Layout Title=”MediumThreeRow”>         <OverflowSection Type=”ThreeRow” TemplateAlias=”m1″ DisplayMode=”Medium”/>       </Layout>       <Layout Title=”Small”>        …


Dynaimcs CRM 2011 サンプル紹介 REST Endpoint Silverlight Contact Editor

みなさん、こんにちは。 今回も引き続き Silverlight と REST エンドポイントのサンプルを紹介します。 今回のサンプルは、JScript のサンプルとして紹介した Contact Editor の Silverlight 版です。同じ機能を違う技術で実装することにより、それぞれの メリットが見えればと思います。 JScript 版の記事はこちらです。 また今回は Visual Studio 2010 を利用したデバッグも試します。 このサンプルもカスタム画面で取引先担当者の操作を行います。 主な機能は – 新規取引先担当者の作成 – 既存取引先担当者の検索 – 検索結果から、レコードの更新 – 検索結果から、レコードの削除 となっています。 サンプルは、sdk\samplecode\cs\silverlight\restsilverlightcontacteditor にあるものを利用します。動作を試すために、事前にこのフォルダにある restsilverlightcontacteditor_1_0_0_0_managed.zip ファイルを、 ソリューションとして インポートしておいてください。 ソリューションは Silverlight アプリケーションを HTML ページがホストする 構成で作成されています。では中身を見ていきましょう。 Silvelight アプリケーション Silverlight アプリケーションは、画面描写を担当する XAML ファイルと、コードを 記述する cs ファイルからなり、その構成はまさに .NET アプリケーションです。内容は…


Dynamics CRM 2013 IFD 構成における Windows Server 2012 R2 AD FS のサポート

※ (2014-9-1 AD FS 2.2 を Windows Server 2012 R2 AD FS に修正。コメントありがとうございました。) みなさん、こんにちは。 前回までモバイルおよびリッチクライアント開発について紹介して きましたが、設置型におけるサンプルを紹介前準備として、今回は 設置型の IFD 構成における Windows Server 2012 R2 AD FS のサポートを紹介します。 Windows Server 2012 R2 Active Directory Federation Service (AD FS) Microsoft Dynamics CRM 2013 は、以前のバージョンに引き続き、 クレーム認証および Internet Facing Deployment (IFD) をサポート しますが、サポートする STS サーバーとして、新たに Windows Server2012 R2 AD FS をサポートします。 Jason Web Token (JWT) を利用した非ブラウザアプリケーションを…


Dynamics CRM Online 2015 Update 1 SDK 新機能: プラグインおよびユーザー定義ワークフロー活動の追跡

みなさん、こんにちは。 今回は Dynamics CRM Online 2015 Update 1 で提供されるプラット フォームと SDK の新機能より、プラグインおよびユーザー定義 ワークフロー活動の追跡を紹介します。 概要 同期のプラグインやユーザー定義ワークフロー活動の処理が失敗 した場合、これまではユーザーの画面にしかエラーが出力されず 開発者が後から詳細を確認するには、ユーザーがエラーを保存 しておく必要がありました。 今回のリリースではそれらのエラーをサーバー側に保存しておき、 開発者が後から簡単に確認できる機能が提供されます。 設定方法 プラグインおよびユーザー定義ワークフロー活動の追跡は既定で 無効となっており、以下の手順で有効にできます。尚、ログは 他エンティティのレコード同様にディスクを消費するため、必要 に応じて有効/無効を変更してください。 1. ブラウザで Dynamics CRM Online に接続します。 2. 設定 | 管理 | システムの設定よりカスタマイズタブを開きます。 3. 「プラグイントレースログへのログ記録を有効化」を「例外」 または「すべて」に変更して、「OK」をクリックします。 例外: エラーが発生した場合のみトレースを保存。 すべて: エラーおよび一般的なトレースを保存。 今回は検証のため「すべて」を選択します。 事前準備 まずはプラグインを開発して、登録します。 プラグインの開発 1. Visual Studio を開きます。 2. 新規プロジェクトよりクラスライブラリを選択し、プロジェクト 名を「TraceSample」と入力します。また…


Dynamics CRM : 2014 年春バージョンおよび設置型サービスパック 1 がリリースされました!

みなさん、こんにちは。 今週、いよいよ待ちに待った大型アップデートが公開されました! 今後機能の詳細は随時紹介していきますが、今回はリリース情報を まずお伝えします。 Microsoft Dynamics CRM Online 2014 年春バージョン 先日以下の記事で紹介した、2014年春バージョンが公開されました。 Dynamics CRM Online Spring ‘14 リリースプレビューガイドの紹介 現在体験版を申し込んでいただくと、新機能が有効になった組織を すぐにご利用いただけます。尚、バージョン情報は以下の通りです。 ※既存の環境については順次更新されていきますので、現時点では まだ上記のバージョンになっていない可能性があります。またパッチ が適用されただけでは自動的に最新の機能は利用できません。手動 で機能を有効にする必要があります。手順は後述します。 Microsoft Dynamics CRM 2013 設置型用サービスパック 1 設置型をご利用中のお客様でも、今回の新機能をお使いいただけるよう サービスパック 1 が提供されました。 ダウンロードセンター http://www.microsoft.com/ja-JP/download/details.aspx?id=43109 技術情報 http://support.microsoft.com/kb/2941390 サービスパック 1 を適用いただくと、バージョン情報は以下のようになります。 また展開マネージャーから確認したバージョンは以下の通りです。 新機能の適用 すでに運用している環境において、急なメニュー構成の変更があると 利用者を混乱させるという配慮から、一部新機能の有効化はパッチの 適用時ではなく、組織ごとに行えるようになっています。 以下に新機能有効化の手順を紹介します。手順はオンライン/設置型 環境で共通です。 ※一度機能を有効にすると元に戻すことはできません。 1. ブラウザで Microsoft Dynamics CRM に接続します。 2….


Dynamics CRM Online: PowerShell でユーザー設定を更新する

みなさん、こんにちは。 今日は管理者の方向けの情報として、PowerShell を使った Microsoft Dynamics CRM ユーザー設定の更新を紹介します。設置型、オンライン ともに利用可能です。 事前準備 PowerShell 4.0 今回利用する PowerShell モジュールは PowerShell 4.0 以上が必要と なります。以下の方法でバージョンが確認可能です。 1. PowerShell を起動して、以下のコマンドを実行します。 PS C:\> host 2. Version にバージョン情報が表示されます。 バージョンが 4.0 より古い場合は、以下のページより新しいモジュールを 取得してください。 Windows Management Framework 4.0 http://www.microsoft.com/ja-jp/download/details.aspx?id=40855 Microsoft Dynamics CRM モジュール Microsoft Dynamics CRM 用の PowerShell モジュールのインストールは 以下の記事をご覧ください。 Dynamics CRM: 組織用 PowerShell の紹介 サンプル Microsoft Dynamics…


Dynamics CRM 2013/Fall ’13 ナビゲーションの紹介

みなさん、こんにちは。 今日は、Microsoft Dynamics CRM 2013 および、Microsoft Dynamics CRM Online Fall ’13 で変更された機能の ひとつである、ナビゲーション について紹介します。 サイトマップとナビゲーション Microsoft Dynamics CRM 2011 では、画面遷移にサイトマップを使用 していましたが、今回ナビゲーションとして生まれ変わりました。 [サイトマップとナビゲーション] 以下に進化した点を紹介します。 配置場所 サイトマップは常に画面左側に表示されており、解像度の低い PC では、情報を表示する領域を圧迫していました。ナビゲーションは 常に画面上部に表示されるほか、項目は既定で非表示となっている ことから、データの表示を邪魔することはなくなりました。 タッチへの最適化 タブレット端末で利用する場合も想定し、タッチしやすいタイルが 採用されています。またマウスを利用している場合も、メニューを クリックすることなく、マウスオーバーのみで項目の展開が可能で あるため、よりスムーズに遷移ができるようになりました。 またタイルは主要なエンティティには色がついており、カスタム エンティティも別途色がついています。現時点では色の指定や変更 といったカスタマイズは行えません。 コアエンティティ (COLAC) およびダッシュボード : 独自色 その他の既定のエンティティ : 灰色 活動 : 赤 カスタムエンティティ : 緑 大項目の分離とメニューの再配置 以前の構成では、大項目間を行き来することが多くありましたが、 主な理由として、ダッシュボードやレポートがワークプレースに しか存在しないためでした。ナビゲーションではワークプレースを…


Dynamics CRM 2011 SDK 認証の選択肢

みなさん、こんにちは。 今回は先日公開された SDK 5.0.12 で提供された情報から 認証の選択肢についてピックアップします。 Choose your Development Style for Managed Code for Microsoft Dynamics CRM 2011 and Microsoft Dynamics CRM Online http://msdn.microsoft.com/en-us/library/jj602917 認証の選択肢 Microsoft Dynamics CRM 2011 および Microsoft Dynamics CRM オンラインに外部から接続する際、それぞれに適した認証方法が あり、コードを記述する必要があります。 SDK ではこの認証関連のコーディングを容易にするために、以下 の選択肢を提供しています。 ヘルパーコード 多くのサンプルで利用されている方法です。ヘルパーコード内で 認証を処理できるため、開発者が直接コーディングする必要がない 一方で、サーバー情報やユーザー情報を別途渡す必要があります。 実際の用法は Sample : Quick Start を参考にしてください。 Developer Extensions こちらのブログでも以前紹介した CrmConnection クラスを利用する 方法です。Developer Extensions…


Dynamics CRM 2011 : カスタム ASPX ページとのシングルサインオン

みなさん、こんにちは。 今日は開発者向けの内容として、カスタム ASPX ページからの シングルサインオンのサンプル解説をお届けします。 概要 Microsoft Dynamics CRM 2011 では ISV フォルダ配下のカスタム ASPX ページをサポートしないため、カスタム ASPX ページは別途 カスタム Web サイトに配置する必要があります。 Windows 統合認証を利用する場合問題ありませんが、クレーム 認証を利用する場合、Microsoft Dynamics CRM 2011 とカスタム Web サイト間のシングルサインオンを行うためには工夫が必要です。 チュートリアルのコード解説 SDK には上記シナリオをカバーするチュートリアルが提供されて いますが、今回はその詳細を解説します。チュートリアルにある 手順はすべて完了しており、コードも動作していることとします。 Default.aspx.cs ファイル チュートリアルで提供されるサンプルのトップページにアクセスすると Default.aspx.cs ファイルの Page_Load が呼ばれます。このコード では一番初めに以下のコードでクレームの取得を試みます。 IClaimsIdentity claimsIdentity = ((IClaimsPrincipal)(Thread.CurrentPrincipal)).Identities[0]; この時点でアプリケーションは設定した AD FS 2.0 にクライアントを リダイレクトします。クライアントは AD FS 2.0…