読者です 読者をやめる 読者になる 読者になる

Morning Girl

Windows, C#, .NET, Dynamics CRM etc..

【Dynamics CRM】【8.0】Delveの有効化

Dynamics CRM 2016(8.0)の新機能紹介です。 今回はDelve連携。Dynamics CRMユーザーとしては、そもそもDelveって何というところがあるので、少しまとめてみました。 機能概要 Office Delve - Office 365 のカスタマイズ ツール support.office.com ざっく…

【Dynamics CRM】【8.0】OneDriveの有効化

Dynamics CRM 2016(8.0)の新機能の紹介です。 2016以前まではSharePointの連携によりドキュメント連携がサポートされていましたが、2016からOneDriveもサポートされました。 基本的な機能はSharePointで実現できたレコードごとのドキュメント登録に変わり…

【Office365】【Dynamics CRM】Office365とDynamics CRMの連携私的まとめ 2015年Ver

初めてアドベントカレンダーなるものに参加してみました。 Office 365 Advent Calendar 2015 www.adventar.org 最近Dynamics CRMのアップデートでOffice365関係アプリケーション周りとの連携がかなーり強化されてきているように感じます。 12月にDynamics CR…

【Dynamics CRM】【8.0】Dynamics CRM 2016(8.0)がリリースされてました

本日Dynamics CRMの試用版を取得したところ、2016がリリースされていました! ヨーロッパ方面では数日前からリリースされていたっぽいですが、ようやく日本リージョン(crm7)でも提供が開始された模様です。 バージョンは[8.0.0.1085]です。 Dynamics CRM…

【Dynamics CRM】【Xrm.Page】フォーム上の値の取得と設定

一番基本的なフォーム上からの値の取得と設定について。 もっとも利用頻度が高いと思われる、getAttributeの利用シチュエーションを想定して記載しています。 Xrm.Page.getAttribute() getAttributeですが、正式にはXrm.Page.data.entity.attributes.getでシ…

【Dynamics CRM】Xrm.Pageの簡易的なまとめ

Dynamics CRMではフォーム等で利用できるクライアント側拡張用として、JavaScriptのオブジェクト、Xrm.Pageオブジェクトというものを提供しています。 クライアント側のプログラミングリファレンス https://msdn.microsoft.com/ja-jp/library/gg328255.aspx …

【Dynamics CRM】通貨型(Currency)フィールドをビューに配置する際の注意

最近ひっかかったDynamics CRMの事象を一つ投稿します。 概要:通貨型フィールドについて Dynamics CRMではフィールドを作成する際の種類の一つとして通貨型(Currency)フィールドを選択することができます。 通貨型フィールドを作成すると、2種類のフィー…

【Dynamics CRM】【Power BI】Online版Power BIをやってみた

Office365に新しいPower BIが追加され、なおかつDynamics CRMへの接続も簡単になっていましたので、とりあえず試してみました。 公式サイト Power BI公式サイトは以下のところです。 Power BIの試用版開始および、Power BIをカスタマイズするためのデスクト…

【Dynamics CRM】Dynamics CRM 2016情報

年末リリース予定のDynamics CRM 2016の情報がちまちまと出てきましたね。 英語版Previewガイドなどは先行して公開されてましたが、最近TeamBlogの方でも正式に紹介されました。 ■Japan Dynamics CRM Team Blog Microsoft Dynamics CRM 2016 ? 次世代のイン…

【Dynamics CRM】【管理者向け】エラー通知の非表示設定

Dynamics CRMを利用しているとよくよくよくよく表示されるこのエラー通知。 具体的にどんなことが起こったのかも分からないし、うざったいことこの上ないものですが、一応わりかし簡単に非表示に設定することが可能です。 しかも、確か2015以前では、ユーザ…

【Dynamics CRM】【Windows10】Windows10で触ってみた

先月とうとうWindows10がリリースされました。 とりあえずWindows10いいですね。結構いいですね。 Edgeとか爆速で起動しますし、動作もなんかWindow8.1より爽快?な感じがします。 一部うーん、というところもありますが、なんだかすぐにUpdateがあるみたい…

【Dynamics CRM】【7.1新機能】ExcelOnlineによる上書き更新時の注意

Dynamics CRM 7.1新機能でExcelOnlineによる編集がサポートされていました。 【Dynamics CRM】【7.1 新機能】Excel Onlineによる編集 - Morning Girlkageura.hatenadiary.jp その使い方で一点困った点がありましたので記載しておきたいと思います。 概要 Exc…

【Dynamics CRM】【管理者向け】使用中のリソースの更新タイミング

Dynamics CRM Onlineでは、テナントごと、組織ごとで使用できる記憶域の制限があります。そこで気になった点があったので、メモ。 MSDN Blogsblogs.msdn.com 現在使用中の記憶域を[設定]→[管理]→[使用中のリソース]から確認できるのですが、これがたぶ…

【Dynamics CRM】【7.1 新機能】Excelインポート用テンプレート使用時にマッピングを変更する方法

Dynamics CRM 7.1になってから、Excel関係の仕様が結構変わっています。 インポート用テンプレートも、以前まではXML形式のものがダウンロードできたと思いますが、ここも変わっていました。 また、以前のバージョンであれば、マッピングの設定を柔軟に変更…

【Dynamics CRM】【7.1 新機能】代替キー設定時の注意事項

Dynamics CRM 7.1から代替キーという機能が追加されてました。 詳しくは過去記事で紹介しています。 【Dynamics CRM】【C#】【7.1新機能】代替キーの使い方 - Morning Girlkageura.hatenadiary.jp ここを実装していくにあたり、いくつか注意すべき点を見つけ…

【Dynamics CRM】【Excel連携】インポート処理の仕様変更?

Dynamics CRM 2015 Update1だと思われるのですが、Excelのインポート処理の仕様が変わっている感じがします。 気になっている点 Excelで一括インポートを実施する際、検索フィールドを含めた状態でインポートを実施すると、処理の流れがCreate一発で終わらな…

【Dynamics CRM】【Xrm.Page】OpenEntityForm利用時にPartyListの値設定ができない

Dynamics CRMのXrm.PageオブジェクトにOpenEntityFormという、新規ないし既存のレコードのフォームを開くメソッドがあるのですが、、、 Xrm.Utility (クライアント側の参照) openEntityForm Xrm.Utility (クライアント側の参照) 例えば、活動の関連【regardi…

【Dynamics CRM】【管理者向け】インスタンスのコピー

Dynamics CRM OnlineではProライセンスを25個以上購入すると、サンドボックスと呼ばれる検証環境が無償でついてきます。 (Pluginのサンドボックスとは違います) サンドボックスインスタンスについてはDynamics CRM チームブログなどからどうぞ。 MSDN Blog…

【Dynamics CRM】【C#】【7.1新機能】UpsertRequest

Dynamics CRM 2015 Update1の新機能。続いてはもう一つの目玉機能と思っている、UpsertRequest。 SDK関係新機能の中ではとりわけわかりやすい追加機能の一つかと思います。 Requestに含めたEntityの代替キー指定で、レコードが既に存在していればUpdateを行…

【Dynamics CRM】【C#】【7.1新機能】ExecuteTransactionRequestの活用

Dynamics CRM 7.1のSDK関係新機能の目玉(と思ってる)、[ExecuteTransactionRequest]をやってみました。 Dynamics CRMのSDKを利用したアプリケーションでは、基本的にトランザクションのサポートが無く、ロールバックを考慮することが大変面倒でした。 (…

【Dynamics CRM】【C#】【7.1新機能】代替キーの使い方

Dynamics CRM 2015 Update1で結構SDK周りの拡張が行われました。 その中でも地味ながら、うれしい拡張が代替キーと思われます。 代替キー概要 Dynamics CRMのSDKを用いてレコードのUpdateを行う場合は、Guidを指定する必要がありました。 たとえば、取引先担…

【Dynamics CRM】【SSRS】監査の取得

Dynamics CRMの監査履歴ってちょっと見づらいですよね。 細かな変更内容が見れるのはいいんですが、標準ではエクスポートもできないので、 何かと調べごとをしたい、アクセス状況とかを見たい場合にはあまり向いていません。 今回は、簡単なものですが、SSRS…

【Dynamics CRM】【7.1】IMEモードの入力制御が行われないバグ

Dynamics CRM 2015 Update1(7.1)よりターボフォームが採用されました。 レンダリングが何やら早くなっているようですが、個人的にあまり恩恵を感じられていません……。 そんな中、このターボフォームでバグを発見してしまいました。 概要 Dynamics CRMの入…

【Dynamics CRM】【Plugin】【7.1新機能】Pluginトレースログ

Dynamics CRM7.1(2015SP1)からPluginのトレースログを簡単に残すことができる機能が追加されました。 今までは ・同期Pluginの場合、例外発生ダイアログが表示され、そこからエラーログをダウンロードする、 ・非同期Pluginの場合、システムジョブのPlugin…

【Dynamics CRM】【7.1 新機能】テーマの変更

Dynamics CRM 2013からタブレットデバイス向け(?)にメトロスタイルのナビゲーションが採用されていました。 このナビゲーション、お客さんからよく「色変更できないの?」と言われていたのですが それがようやくこの7.1バージョンで変更できるようになり…

【Dynamics CRM】【7.1 新機能】Excel Onlineによる編集

Dynamics CRM 7.1からExcel Onlineでデータの更新ができるようになりました。 ライセンスについて Dynamics CRM Onlineのライセンスを持っていれば、特に問題なく利用できるみたいです。 初めもしかしたらOffice365も必要なのかとおもいきや、そんなことはあ…

【Dynamics CRM】Dynamics CRM 2015 Update1 について

CRM 2015になってから、まだ間もない気がしますが、もうアップデートの季節のようです。 5月中らしいですが、早いところ、 Microsoft Dynamics CRM 2015 リリースプレビューガイド 以下のSlideShareでMarketingとCRMの新機能が紹介されています。 Microsoft …

【Dynamics CRM】【Tool】XrmToolBoxが日本データセンター環境にも対応

最近Dynamics CRM Onlineのデータセンター環境が日本でもできました。 今まで普通に取得するとアジア・パシフィック環境(crm5)だったのですが、現在取得しますと日本環境(crm7)で構築できます。 すでに日本データセンターでの導入事例も出ていますね。 …

【C#】【Dynamics CRM】Pluginにおけるトレースと例外処理

Dynamics CRM Pluginでの例外処理、例外の確認方法が同期・非同期などで異なるので、その点について確認していきたいと思います。 例外処理結果の違い Dynamics CRM Pluginで例外をスローすると、同期・非同期で結果の表示方法が違います。 同期であれば、We…

【C#】【Dynamics CRM】PluginにおけるPre・PostEntityImagesの利用

Dynamics CRM Pluginでは、例えばUpdateに登録したPluginの場合、ContextのInputParameterに送られてくるデータは更新されたデータのみになります。 しかしながら、シナリオによってはUpdateする前の値と比較し何かしらの処理を行いたい、もしくはUpdate後の…

【C#】【Dynamics CRM】【Azure】Azure Webサービス Webジョブで定期実行

Dynamics CRM でお客さんがやりたいことリストのトップへ常に名を連ねるものが外部データ連携だと思います。 SFA的に使うにしても、やはり何かしらのデータを外部から持ってこないと始まるものも始まらない、みたいな感じはどこでもありますね。 基本的なア…

【C#】【Dynamics CRM】PluginのContextを用いた関連レコードの作成

個人的にPluginのよくあるパターンとして、CreateMessageに設定して、作成されるレコードに関連づいたレコードを作成する、というものがある気がします。 もちろん、ワークフローでも可能なアプローチですが、例えば一括で複数件の関連レコードを作成する、…

【C#】【Dynamics CRM】PluginのContextについて

Dynamics CRM Pluginは各Messageの処理に関連付けて登録し、処理を実行します。 その実行する際に、実行ContextがPluginにパラメータとして渡ってきます。 Contextには様々な種類のデータが格納されて来ますが、そのContextの概要とContextの中で重要な位置…

【Dynamics CRM】【Plugin】PluginRegistrationTool SDK6.1以降の問題

Dynamics CRM でPluginを登録するために使用するPluginRegistrationToolなのですが、 SDK 6.1以降、日本語環境で正常に動作しないという問題が発生していました。 Download Microsoft Dynamics CRM Software Development Kit (SDK) for CRM Online and on-pr…

【C#】【Dynamics CRM】Pluginの作成(概要)

今までいくつかのプロジェクトでDynamics CRM のPluginを作成してきたけども、認識として曖昧な部分もあったので、改めて全体的な内容を確認し直して、書き留めておきたいと思います。 Dynamics CRM におけるPluginの概要 Dynamics CRMではレコードの作成時…

【C#】【Dynamics CRM】並列処理の実行結果比較

今回はDynamics CRMで実際に並列処理結果を比べたらどうなるの? というのをやってみました。 実施方法は3種類。 ・一つ目は単純にforを回して、レコードをCreateし続けるもの。 ・二つ目は前回作成したParallel.ForによるCreate。スレッド数の制限は無し。 …

【C#】【Dynamics CRM】Parallel.Forによる並列処理

前回Dynamics CRMのExecuteMultipleRequestによる一括実行を書き留めましたが、今回は.netの並列処理の1つであるParallel.For処理方法を記載してみたいと思います。 詳しくはやっぱりDynamics CRM team Blogで実践されてますが、ここはやっぱり自分でも試し…

【C#】【Dynamics CRM】ExecuteMultipleRequestによる一括実行

Dynamics CRMにおいて、C#などの外部プログラムでCUD操作を行う際、基本的に1件ずつレコードを処理する形になります。 ですが、ExecuteMultipleRequestクラスを利用することで、Dynamics CRM各Execute Messageの一括実行が可能になります。 これが意外と性能…

【C# 】【Dynamics CRM】事前バインディングのエンティティフィルタリング

前回すべてのエンティティの事前バインディング方法を記載したので、今回は特定のエンティティに絞った事前バインディングの方法を確認しておきたいと思います。 概要 Dynamics CRM SDKで提供されているサンプルコードのCrmSvcUtilExtensionsフォルダのBasic…

【C#】【Dynamics CRM】事前バインディングの手順

Dynamics CRMでは.NETプログラム(CS・VB)を作成する際、事前バインディングという手法(ツール?)を提供しています。 毎度毎度やり方を確認しているので一度ちゃんとまとめておきたいと思います。 今回はDynamics CRM Onlineにて実施。 実施環境 Windows …

【C#】【Dynamics CRM】QueryExpression によるページングの指定

Dynamics CRM から組織サービス経由で大量のデータを取得(RetrieveMultiple)する場合、標準で取得件数5000件制限が付与されています。 予めフィルターしたデータを取得するのであれば、あまり問題にはなりませんが、 5000件を超えるデータを取得することが…

【C#】【Dynamics CRM】BlukDeleteJobの作成

Dynamics CRMのデータを一括削除する必要があったので、 その辺りを調べていたのだけど手法としては3つあるかなぁと。 Dynamics CRM における削除手法 単純にservice.Delete にGuidを渡してあげる BlukDeleteJobを生成する。 ExecuteMultipleをDeleteに渡し…

【C#】【Dynamics CRM】Metadataの取得

Dynamics CRMのプライマリフィールドを調べたい! とうことで、Metadata取得周りを漁っていたのですが、随分めんどくさかったので、簡単にまとめました。 概要 まず理解する必要があるのは【MetadataFilterExpression】【MetadataPropertiesExpresion】の2つ…

【C#】【Dynamics CRM】

毎度毎度仕事でDynamics CRMへコネクションするのだけど、 毎度毎度調べ直している気がするので、接続方法を少しづつ書き留めておこうと思う。 概要 とりあえず、一番簡単にDynamics CRM Onlineへ接続する方法 CrmConnectionクラスのParseメソッドにそのまま…

【Dynamics CRM】データインポート時のエラー

概要 データのインポート中に、Status ReasonがSubmittedのまま動かなくなるという現象が発生したので、メモメモ。 環境 Dynamics CRM 2013 SPなし エラー情報 インポートログのSystemJobのところにエラーが記載されていた。 Dynamics CRM Serverインストー…